Ejemplo n.º 1
0
 /** Returns a list of all owned product IDs of a given type */
 List<String> getAllOwnedSkus(String itemType) {
   List<String> result = new ArrayList<String>();
   for (Purchase p : mPurchaseMap.values()) {
     if (p.getItemType().equals(itemType)) result.add(p.getSku());
   }
   return result;
 }
Ejemplo n.º 2
0
  @Test
  public void testGetAllOwnedSkusForItemType() throws Exception {
    Inventory inventory = new Inventory();
    Purchase p1 = mock(Purchase.class);
    when(p1.getItemType()).thenReturn(ItemType.INAPP);
    when(p1.getSku()).thenReturn("sku_inapp");

    Purchase p2 = mock(Purchase.class);
    when(p2.getItemType()).thenReturn(ItemType.SUBS);
    when(p2.getSku()).thenReturn("sku_sub");

    inventory.addPurchase(p1);
    inventory.addPurchase(p2);

    assertThat(inventory.getAllOwnedSkus(ItemType.SUBS)).containsExactly("sku_sub");
  }
 /**
  * Serialize purchase data to json
  *
  * @param purchase purchase data
  * @return json string
  * @throws JSONException
  */
 private String purchaseToJson(Purchase purchase) throws JSONException {
   return new JSONStringer()
       .object()
       .key("itemType")
       .value(purchase.getItemType())
       .key("orderId")
       .value(purchase.getOrderId())
       .key("packageName")
       .value(purchase.getPackageName())
       .key("sku")
       .value(purchase.getSku())
       .key("purchaseTime")
       .value(purchase.getPurchaseTime())
       .key("purchaseState")
       .value(purchase.getPurchaseState())
       .key("developerPayload")
       .value(purchase.getDeveloperPayload())
       .key("token")
       .value(purchase.getToken())
       .key("originalJson")
       .value(purchase.getOriginalJson())
       .key("signature")
       .value(purchase.getSignature())
       .key("appstoreName")
       .value(purchase.getAppstoreName())
       .endObject()
       .toString();
 }