Search in sources :

Example 1 with SimplePlan

use of org.killbill.billing.client.model.SimplePlan in project killbill by killbill.

the class TestCatalog method testAddSimplePlan.

@Test(groups = "slow", description = "Can create a simple Plan into a per-tenant catalog")
public void testAddSimplePlan() throws Exception {
    killBillClient.addSimplePan(new SimplePlan("foo-monthly", "Foo", ProductCategory.BASE, Currency.USD, BigDecimal.TEN, BillingPeriod.MONTHLY, 0, TimeUnit.UNLIMITED, ImmutableList.<String>of()), requestOptions);
    List<Catalog> catalogsJson = killBillClient.getJSONCatalog(requestOptions);
    Assert.assertEquals(catalogsJson.size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().get(0).getName(), "Foo");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getName(), "DEFAULT");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().get(0), "foo-monthly");
    killBillClient.addSimplePan(new SimplePlan("foo-annual", "Foo", ProductCategory.BASE, Currency.USD, new BigDecimal("100.00"), BillingPeriod.ANNUAL, 0, TimeUnit.UNLIMITED, ImmutableList.<String>of()), requestOptions);
    catalogsJson = killBillClient.getJSONCatalog(requestOptions);
    Assert.assertEquals(catalogsJson.size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().get(0).getName(), "Foo");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getName(), "DEFAULT");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().size(), 2);
}
Also used : SimplePlan(org.killbill.billing.client.model.SimplePlan) Catalog(org.killbill.billing.client.model.Catalog) BigDecimal(java.math.BigDecimal) Test(org.testng.annotations.Test)

Example 2 with SimplePlan

use of org.killbill.billing.client.model.SimplePlan in project killbill by killbill.

the class TestCatalog method testAddSimplePlanWithoutKBDefault.

@Test(groups = "slow", description = "Upload and retrieve a per plugin payment state machine config")
public void testAddSimplePlanWithoutKBDefault() throws Exception {
    // Create another tenant initialized with no default catalog,...
    final Tenant otherTenantNoKBDefault = new Tenant();
    otherTenantNoKBDefault.setApiKey(UUID.randomUUID().toString());
    otherTenantNoKBDefault.setApiSecret(UUID.randomUUID().toString());
    killBillClient.createTenant(otherTenantNoKBDefault, false, requestOptions);
    final RequestOptions requestOptionsOtherTenant = requestOptions.extend().withTenantApiKey(otherTenantNoKBDefault.getApiKey()).withTenantApiSecret(otherTenantNoKBDefault.getApiSecret()).build();
    // Verify the template catalog is not returned
    List<Catalog> catalogsJson = killBillClient.getJSONCatalog(requestOptionsOtherTenant);
    Assert.assertEquals(catalogsJson.size(), 0);
    killBillClient.addSimplePan(new SimplePlan("foo-monthly", "Foo", ProductCategory.BASE, Currency.USD, BigDecimal.TEN, BillingPeriod.MONTHLY, 0, TimeUnit.UNLIMITED, ImmutableList.<String>of()), requestOptionsOtherTenant);
    catalogsJson = killBillClient.getJSONCatalog(requestOptionsOtherTenant);
    Assert.assertEquals(catalogsJson.size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().get(0).getName(), "Foo");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getName(), "DEFAULT");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().get(0), "foo-monthly");
    killBillClient.addSimplePan(new SimplePlan("foo-annual", "Foo", ProductCategory.BASE, Currency.USD, new BigDecimal("100.00"), BillingPeriod.ANNUAL, 0, TimeUnit.UNLIMITED, ImmutableList.<String>of()), requestOptionsOtherTenant);
    catalogsJson = killBillClient.getJSONCatalog(requestOptionsOtherTenant);
    Assert.assertEquals(catalogsJson.size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getProducts().get(0).getName(), "Foo");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().size(), 1);
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getName(), "DEFAULT");
    Assert.assertEquals(catalogsJson.get(0).getPriceLists().get(0).getPlans().size(), 2);
}
Also used : SimplePlan(org.killbill.billing.client.model.SimplePlan) Tenant(org.killbill.billing.client.model.Tenant) RequestOptions(org.killbill.billing.client.RequestOptions) Catalog(org.killbill.billing.client.model.Catalog) BigDecimal(java.math.BigDecimal) Test(org.testng.annotations.Test)

Aggregations

BigDecimal (java.math.BigDecimal)2 Catalog (org.killbill.billing.client.model.Catalog)2 SimplePlan (org.killbill.billing.client.model.SimplePlan)2 Test (org.testng.annotations.Test)2 RequestOptions (org.killbill.billing.client.RequestOptions)1 Tenant (org.killbill.billing.client.model.Tenant)1