killbill-memoizeit
Changes
invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalCapacityInArrear.java 16(+8 -8)
invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalConsumableInArrear.java 42(+21 -21)
invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalUsageInArrear.java 2(+1 -1)
Details
diff --git a/invoice/src/main/java/org/killbill/billing/invoice/usage/SubscriptionUsageInArrear.java b/invoice/src/main/java/org/killbill/billing/invoice/usage/SubscriptionUsageInArrear.java
index 9e537bb..2c58766 100644
--- a/invoice/src/main/java/org/killbill/billing/invoice/usage/SubscriptionUsageInArrear.java
+++ b/invoice/src/main/java/org/killbill/billing/invoice/usage/SubscriptionUsageInArrear.java
@@ -132,7 +132,7 @@ public class SubscriptionUsageInArrear {
}
@VisibleForTesting
- List<ContiguousIntervalUsageInArrear> computeInArrearUsageInterval() {
+ List<ContiguousIntervalUsageInArrear> computeInArrearUsageInterval() throws CatalogApiException {
final List<ContiguousIntervalUsageInArrear> usageIntervals = Lists.newLinkedList();
final Map<UsageKey, ContiguousIntervalUsageInArrear> inFlightInArrearUsageIntervals = new HashMap<UsageKey, ContiguousIntervalUsageInArrear>();
@@ -187,7 +187,7 @@ public class SubscriptionUsageInArrear {
return usageIntervals;
}
- private List<Usage> findUsageInArrearUsages(final BillingEvent event) {
+ private List<Usage> findUsageInArrearUsages(final BillingEvent event) throws CatalogApiException {
if (event.getUsages().isEmpty()) {
return Collections.emptyList();
}
diff --git a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalCapacityInArrear.java b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalCapacityInArrear.java
index ffc9602..8f63bb2 100644
--- a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalCapacityInArrear.java
+++ b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalCapacityInArrear.java
@@ -62,7 +62,7 @@ import static org.testng.Assert.assertTrue;
public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBase {
@Test(groups = "fast")
- public void testComputeToBeBilledUsage() {
+ public void testComputeToBeBilledUsage() throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate endDate = new LocalDate(2014, 04, 20);
@@ -106,7 +106,7 @@ public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBas
}
@Test(groups = "fast")
- public void testComputeBilledUsage() throws CatalogApiException {
+ public void testComputeBilledUsage() throws Exception {
final DefaultUnit unit1 = new DefaultUnit().setName("unit1");
final DefaultUnit unit2 = new DefaultUnit().setName("unit2");
@@ -167,7 +167,7 @@ public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBas
@Test(groups = "fast")
- public void testComputeMissingItems() throws CatalogApiException, InvoiceApiException {
+ public void testComputeMissingItems() throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate firstBCDDate = new LocalDate(2014, 04, 15);
@@ -246,16 +246,16 @@ public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBas
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersAggregateMode() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testMultipleItemsAndTiersAggregateMode() throws Exception {
testMultipleItemsAndTiers(UsageDetailMode.AGGREGATE);
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersDetailMode() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testMultipleItemsAndTiersDetailMode() throws Exception {
testMultipleItemsAndTiers(UsageDetailMode.DETAIL);
}
- private void testMultipleItemsAndTiers(UsageDetailMode usageDetailMode) throws CatalogApiException, IOException, InvoiceApiException {
+ private void testMultipleItemsAndTiers(UsageDetailMode usageDetailMode) throws Exception {
// Case 1
List<RawUsage> rawUsages = new ArrayList<RawUsage>();
@@ -335,7 +335,7 @@ public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBas
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersWithExistingItems() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testMultipleItemsAndTiersWithExistingItems() throws Exception {
// let's assume we have some existing usage
final UsageInArrearTierUnitDetail existingFooUsageTier1 = new UsageInArrearTierUnitDetail(1, "FOO", BigDecimal.ONE, 9);
@@ -375,7 +375,7 @@ public class TestContiguousIntervalCapacityInArrear extends TestUsageInArrearBas
assertEquals(itemUnitDetails.get(1).getTierPrice().compareTo(new BigDecimal("100.00")), 0);
}
- private List<InvoiceItem> produceInvoiceItems(List<RawUsage> rawUsages, UsageDetailMode usageDetailMode, List<InvoiceItem> existingItems) throws CatalogApiException, InvoiceApiException {
+ private List<InvoiceItem> produceInvoiceItems(List<RawUsage> rawUsages, UsageDetailMode usageDetailMode, List<InvoiceItem> existingItems) throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate firstBCDDate = new LocalDate(2014, 04, 15);
diff --git a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalConsumableInArrear.java b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalConsumableInArrear.java
index 6ea9a06..0d38cb3 100644
--- a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalConsumableInArrear.java
+++ b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalConsumableInArrear.java
@@ -77,7 +77,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
});
@Test(groups = "fast")
- public void testBilledDetailsForUnitType() throws JsonProcessingException {
+ public void testBilledDetailsForUnitType() throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate targetDate = startDate.plusDays(1);
@@ -118,7 +118,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeToBeBilledUsage() {
+ public void testComputeToBeBilledUsage() throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate endDate = new LocalDate(2014, 04, 20);
@@ -157,7 +157,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeBilledUsageSizeOneWith_ALL_TIERS() throws CatalogApiException {
+ public void testComputeBilledUsageSizeOneWith_ALL_TIERS() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 1, 10, new BigDecimal("1.5"));
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -186,7 +186,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeBilledUsageWith_ALL_TIERS() throws CatalogApiException {
+ public void testComputeBilledUsageWith_ALL_TIERS() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 100, 10, BigDecimal.ONE);
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -213,7 +213,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
@Test(groups = "fast")
- public void testComputeBilledUsageWithUnlimitedMaxWith_ALL_TIERS() throws CatalogApiException {
+ public void testComputeBilledUsageWithUnlimitedMaxWith_ALL_TIERS() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 100, 10, BigDecimal.ONE);
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -241,7 +241,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
@Test(groups = "fast")
- public void testComputeBilledUsageWith_TOP_TIER() throws CatalogApiException {
+ public void testComputeBilledUsageWith_TOP_TIER() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 100, 10, BigDecimal.ONE);
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -288,7 +288,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
@Test(groups = "fast")
- public void testComputeBilledUsageWithUnlimitedMaxWith_TOP_TIER() throws CatalogApiException {
+ public void testComputeBilledUsageWithUnlimitedMaxWith_TOP_TIER() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 100, 10, BigDecimal.TEN);
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -318,7 +318,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
@Test(groups = "fast")
- public void testComputeBilledUsageSizeOneWith_TOP_TIER() throws CatalogApiException {
+ public void testComputeBilledUsageSizeOneWith_TOP_TIER() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("unit", 1, 10, new BigDecimal("1.5"));
final DefaultTier tier1 = createDefaultTierWithBlocks(block1);
@@ -346,7 +346,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeMissingItems() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testComputeMissingItems() throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate firstBCDDate = new LocalDate(2014, 04, 15);
@@ -425,7 +425,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testGetRolledUpUsage() {
+ public void testGetRolledUpUsage() throws Exception {
final DefaultTieredBlock tieredBlock1 = createDefaultTieredBlock("unit", 100, 1000, BigDecimal.ONE);
final DefaultTieredBlock tieredBlock2 = createDefaultTieredBlock("unit2", 10, 1000, BigDecimal.ONE);
@@ -500,7 +500,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast", description = "See https://github.com/killbill/killbill/issues/706")
- public void testWithRawUsageStartDateAfterEndDate() throws CatalogApiException {
+ public void testWithRawUsageStartDateAfterEndDate() throws Exception {
final LocalDate startDate = new LocalDate(2014, 10, 16);
final LocalDate endDate = startDate;
@@ -530,7 +530,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testBilledUsage() throws CatalogApiException {
+ public void testBilledUsage() throws Exception {
final DefaultTieredBlock block1 = createDefaultTieredBlock("cell-phone-minutes", 1000, 10000, new BigDecimal("0.5"));
final DefaultTieredBlock block2 = createDefaultTieredBlock("Mbytes", 512, 512000, new BigDecimal("0.3"));
@@ -554,7 +554,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeMissingItemsAggregateModeAllTier_AGGREGATE() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testComputeMissingItemsAggregateModeAllTier_AGGREGATE() throws Exception {
// Case 1
List<RawUsage> rawUsages = new ArrayList<RawUsage>();
@@ -656,7 +656,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeMissingItemsDetailModeAllTier_DETAIL() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testComputeMissingItemsDetailModeAllTier_DETAIL() throws Exception {
// Case 1
List<RawUsage> rawUsages = new ArrayList<RawUsage>();
@@ -724,7 +724,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeMissingItemsAggregateModeTopTier_AGGREGATE() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testComputeMissingItemsAggregateModeTopTier_AGGREGATE() throws Exception {
// Case 1
List<RawUsage> rawUsages = new ArrayList<RawUsage>();
@@ -801,7 +801,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testComputeMissingItemsDetailModeTopTier_DETAIL() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testComputeMissingItemsDetailModeTopTier_DETAIL() throws Exception {
// Case 1
List<RawUsage> rawUsages = new ArrayList<RawUsage>();
@@ -853,7 +853,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersWithExistingItemsAllTiers_AGGREGATE() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testMultipleItemsAndTiersWithExistingItemsAllTiers_AGGREGATE() throws Exception {
//
// Let's assume we were already billed on the previous period
@@ -929,7 +929,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersWithExistingItemsAllTiers_DETAIL() throws CatalogApiException, IOException, InvoiceApiException {
+ public void testMultipleItemsAndTiersWithExistingItemsAllTiers_DETAIL() throws Exception {
//
// Create usage data points (will include already billed + add new usage data)
@@ -1001,12 +1001,12 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
@Test(groups = "fast")
- public void testMultipleItemsAndTiersWithExistingItemsTopTier() throws CatalogApiException, IOException {
+ public void testMultipleItemsAndTiersWithExistingItemsTopTier() throws Exception {
// TODO + code
}
@Test(groups = "fast")
- public void testGetRolledUpUsageOnlyUsageBeforeTransitionTime() {
+ public void testGetRolledUpUsageOnlyUsageBeforeTransitionTime() throws Exception {
final DefaultTieredBlock tieredBlock1 = createDefaultTieredBlock("unit", 100, 1000, BigDecimal.ONE);
final DefaultTieredBlock tieredBlock2 = createDefaultTieredBlock("unit2", 10, 1000, BigDecimal.ONE);
@@ -1041,7 +1041,7 @@ public class TestContiguousIntervalConsumableInArrear extends TestUsageInArrearB
}
- private List<InvoiceItem> produceInvoiceItems(List<RawUsage> rawUsages, TierBlockPolicy tierBlockPolicy, UsageDetailMode usageDetailMode, final List<InvoiceItem> existingItems) throws CatalogApiException, InvoiceApiException {
+ private List<InvoiceItem> produceInvoiceItems(List<RawUsage> rawUsages, TierBlockPolicy tierBlockPolicy, UsageDetailMode usageDetailMode, final List<InvoiceItem> existingItems) throws Exception {
final LocalDate startDate = new LocalDate(2014, 03, 20);
final LocalDate firstBCDDate = new LocalDate(2014, 04, 15);
diff --git a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalUsageInArrear.java b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalUsageInArrear.java
index 326e3c6..cc7a9e5 100644
--- a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalUsageInArrear.java
+++ b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestContiguousIntervalUsageInArrear.java
@@ -38,7 +38,7 @@ import com.google.common.collect.ImmutableList;
public class TestContiguousIntervalUsageInArrear extends TestUsageInArrearBase {
@Test(groups = "fast")
- public void testVerifyTransitionTimes() {
+ public void testVerifyTransitionTimes() throws Exception {
final DefaultTieredBlock block = createDefaultTieredBlock("unit", 100, 1000, BigDecimal.ONE);
final DefaultTier tier = createDefaultTierWithBlocks(block);
final DefaultUsage usage = createConsumableInArrearUsage(usageName, BillingPeriod.MONTHLY, TierBlockPolicy.ALL_TIERS, tier);
diff --git a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestSubscriptionConsumableInArrear.java b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestSubscriptionConsumableInArrear.java
index c9925af..61729eb 100644
--- a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestSubscriptionConsumableInArrear.java
+++ b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestSubscriptionConsumableInArrear.java
@@ -43,7 +43,7 @@ import static org.testng.Assert.assertTrue;
public class TestSubscriptionConsumableInArrear extends TestUsageInArrearBase {
@Test(groups = "fast")
- public void testComputeInArrearUsageInterval() {
+ public void testComputeInArrearUsageInterval() throws Exception {
final List<BillingEvent> billingEvents = Lists.newArrayList();
diff --git a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestUsageInArrearBase.java b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestUsageInArrearBase.java
index 109b44a..860a938 100644
--- a/invoice/src/test/java/org/killbill/billing/invoice/usage/TestUsageInArrearBase.java
+++ b/invoice/src/test/java/org/killbill/billing/invoice/usage/TestUsageInArrearBase.java
@@ -37,6 +37,7 @@ import org.killbill.billing.catalog.DefaultUnit;
import org.killbill.billing.catalog.DefaultUsage;
import org.killbill.billing.catalog.api.BillingMode;
import org.killbill.billing.catalog.api.BillingPeriod;
+import org.killbill.billing.catalog.api.CatalogApiException;
import org.killbill.billing.catalog.api.Currency;
import org.killbill.billing.catalog.api.Plan;
import org.killbill.billing.catalog.api.PlanPhase;
@@ -177,11 +178,11 @@ public abstract class TestUsageInArrearBase extends InvoiceTestSuiteNoDB {
return block;
}
- protected BillingEvent createMockBillingEvent(final DateTime effectiveDate, final BillingPeriod billingPeriod, final List<Usage> usages) {
+ protected BillingEvent createMockBillingEvent(final DateTime effectiveDate, final BillingPeriod billingPeriod, final List<Usage> usages) throws Exception {
return createMockBillingEvent(BCD, effectiveDate, billingPeriod, usages);
}
- protected BillingEvent createMockBillingEvent(final int bcd, final DateTime effectiveDate, final BillingPeriod billingPeriod, final List<Usage> usages) {
+ protected BillingEvent createMockBillingEvent(final int bcd, final DateTime effectiveDate, final BillingPeriod billingPeriod, final List<Usage> usages) throws Exception {
final BillingEvent result = Mockito.mock(BillingEvent.class);
Mockito.when(result.getCurrency()).thenReturn(Currency.BTC);
Mockito.when(result.getBillCycleDayLocal()).thenReturn(bcd);
diff --git a/junction/src/main/java/org/killbill/billing/junction/plumbing/billing/DefaultBillingEventSet.java b/junction/src/main/java/org/killbill/billing/junction/plumbing/billing/DefaultBillingEventSet.java
index 0522fb1..8393d6c 100644
--- a/junction/src/main/java/org/killbill/billing/junction/plumbing/billing/DefaultBillingEventSet.java
+++ b/junction/src/main/java/org/killbill/billing/junction/plumbing/billing/DefaultBillingEventSet.java
@@ -28,6 +28,7 @@ import java.util.TreeSet;
import java.util.UUID;
import org.killbill.billing.catalog.api.BillingMode;
+import org.killbill.billing.catalog.api.CatalogApiException;
import org.killbill.billing.catalog.api.Usage;
import org.killbill.billing.junction.BillingEvent;
import org.killbill.billing.junction.BillingEventSet;
@@ -78,7 +79,11 @@ public class DefaultBillingEventSet extends TreeSet<BillingEvent> implements Sor
final Iterable<Usage> allUsages = Iterables.concat(Iterables.transform(this, new Function<BillingEvent, List<Usage>>() {
@Override
public List<Usage> apply(final BillingEvent input) {
- return input.getUsages();
+ try {
+ return input.getUsages();
+ } catch (final CatalogApiException e) {
+ throw new IllegalStateException(String.format("Failed to retrieve usage section for billing event %s", input), e);
+ }
}
}));
if (!allUsages.iterator().hasNext()) {