package co.smartreceipts.android.purchases.model;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static org.junit.Assert.*;
@RunWith(RobolectricTestRunner.class)
public class InAppPurchaseTest {
@Test
public void getters() {
assertEquals(InAppPurchase.SmartReceiptsPlus.getSku(), "pro_sku_3");
assertEquals(InAppPurchase.SmartReceiptsPlus.getType(), Subscription.class);
assertEquals(InAppPurchase.SmartReceiptsPlus.getProductType(), "subs");
assertEquals(InAppPurchase.SmartReceiptsPlus.getPurchaseFamily(), PurchaseFamily.SmartReceiptsPlus);
assertEquals(InAppPurchase.OcrScans50.getSku(), "ocr_purchase_1");
assertEquals(InAppPurchase.OcrScans50.getType(), ConsumablePurchase.class);
assertEquals(InAppPurchase.OcrScans50.getProductType(), "inapp");
assertEquals(InAppPurchase.OcrScans50.getPurchaseFamily(), PurchaseFamily.Ocr);
assertEquals(InAppPurchase.OcrScans10.getSku(), "ocr_purchase_10");
assertEquals(InAppPurchase.OcrScans10.getType(), ConsumablePurchase.class);
assertEquals(InAppPurchase.OcrScans10.getProductType(), "inapp");
assertEquals(InAppPurchase.OcrScans10.getPurchaseFamily(), PurchaseFamily.Ocr);
}
@Test
public void from() {
assertEquals(InAppPurchase.SmartReceiptsPlus, InAppPurchase.from("pro_sku_3"));
assertEquals(InAppPurchase.OcrScans50, InAppPurchase.from("ocr_purchase_1"));
assertEquals(InAppPurchase.OcrScans10, InAppPurchase.from("ocr_purchase_10"));
}
@Test
public void getConsumablePurchaseSkus() {
final List<String> purchases = Arrays.asList("ocr_purchase_10", "ocr_purchase_1");
assertEquals(InAppPurchase.getConsumablePurchaseSkus(), purchases);
}
@Test
public void getSubscriptionSkus() {
final List<String> purchases = Collections.singletonList("pro_sku_3");
assertEquals(InAppPurchase.getSubscriptionSkus(), purchases);
}
}