killbill-uncached

beatrix: trivial cleanups in tests No functional change. Signed-off-by:

11/15/2013 2:12:21 PM

Changes

Details

diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/DefaultBeatrixService.java b/beatrix/src/main/java/com/ning/billing/beatrix/DefaultBeatrixService.java
index 8d57212..23e8fda 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/DefaultBeatrixService.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/DefaultBeatrixService.java
@@ -26,7 +26,6 @@ import com.ning.billing.bus.api.PersistentBus;
 import com.ning.billing.lifecycle.LifecycleHandlerType;
 import com.ning.billing.lifecycle.LifecycleHandlerType.LifecycleLevel;
 
-
 public class DefaultBeatrixService implements BeatrixService {
 
     public static final String BEATRIX_SERVICE_NAME = "beatrix-service";
@@ -36,7 +35,7 @@ public class DefaultBeatrixService implements BeatrixService {
     private final PersistentBus externalBus;
 
     @Inject
-    public DefaultBeatrixService(final PersistentBus eventBus,@Named(BeatrixModule.EXTERNAL_BUS) final PersistentBus externalBus, final BeatrixListener beatrixListener) {
+    public DefaultBeatrixService(final PersistentBus eventBus, @Named(BeatrixModule.EXTERNAL_BUS) final PersistentBus externalBus, final BeatrixListener beatrixListener) {
         this.eventBus = eventBus;
         this.externalBus = externalBus;
         this.beatrixListener = beatrixListener;
@@ -47,7 +46,6 @@ public class DefaultBeatrixService implements BeatrixService {
         return BEATRIX_SERVICE_NAME;
     }
 
-
     @LifecycleHandlerType(LifecycleLevel.INIT_SERVICE)
     public void registerForNotifications() {
         try {
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
index 208fe9b..ea3db2d 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/BeatrixListener.java
@@ -27,18 +27,13 @@ import org.slf4j.LoggerFactory;
 import com.ning.billing.ObjectType;
 import com.ning.billing.account.api.Account;
 import com.ning.billing.account.api.AccountApiException;
+import com.ning.billing.account.api.AccountInternalApi;
 import com.ning.billing.beatrix.glue.BeatrixModule;
 import com.ning.billing.bus.api.BusEvent;
 import com.ning.billing.bus.api.PersistentBus;
 import com.ning.billing.bus.api.PersistentBus.EventBusException;
-import com.ning.billing.entitlement.EntitlementTransitionType;
-import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
-import com.ning.billing.notification.plugin.api.ExtBusEventType;
-import com.ning.billing.util.callcontext.CallOrigin;
 import com.ning.billing.callcontext.InternalCallContext;
-import com.ning.billing.util.callcontext.InternalCallContextFactory;
-import com.ning.billing.util.callcontext.UserType;
-import com.ning.billing.util.dao.NonEntityDao;
+import com.ning.billing.entitlement.EntitlementTransitionType;
 import com.ning.billing.events.AccountChangeInternalEvent;
 import com.ning.billing.events.AccountCreationInternalEvent;
 import com.ning.billing.events.BusInternalEvent;
@@ -56,17 +51,19 @@ import com.ning.billing.events.PaymentInfoInternalEvent;
 import com.ning.billing.events.SubscriptionInternalEvent;
 import com.ning.billing.events.UserTagCreationInternalEvent;
 import com.ning.billing.events.UserTagDeletionInternalEvent;
-import com.ning.billing.account.api.AccountInternalApi;
+import com.ning.billing.notification.plugin.api.ExtBusEventType;
+import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
+import com.ning.billing.util.callcontext.CallOrigin;
+import com.ning.billing.util.callcontext.InternalCallContextFactory;
+import com.ning.billing.util.callcontext.UserType;
+import com.ning.billing.util.dao.NonEntityDao;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.SerializationFeature;
 import com.fasterxml.jackson.datatype.joda.JodaModule;
 import com.google.common.eventbus.Subscribe;
 
-public class
-
-
-        BeatrixListener {
+public class BeatrixListener {
 
     private static final Logger log = LoggerFactory.getLogger(BeatrixListener.class);
 
@@ -105,14 +102,12 @@ public class
         }
     }
 
-
     private BusEvent computeExtBusEventEntryFromBusInternalEvent(final BusInternalEvent event, final InternalCallContext context) {
 
         ObjectType objectType = null;
         UUID objectId = null;
         ExtBusEventType eventBusType = null;
 
-
         switch (event.getBusEventType()) {
             case ACCOUNT_CREATE:
                 AccountCreationInternalEvent realEventACR = (AccountCreationInternalEvent) event;
@@ -261,5 +256,4 @@ public class
         }
     }
 
-
 }
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/DefaultBusExternalEvent.java b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/DefaultBusExternalEvent.java
index 09a5ae1..beba7df 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/extbus/DefaultBusExternalEvent.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/extbus/DefaultBusExternalEvent.java
@@ -27,7 +27,6 @@ import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-
 public class DefaultBusExternalEvent implements ExtBusEvent, BusEvent {
 
     private final UUID objectId;
@@ -101,7 +100,6 @@ public class DefaultBusExternalEvent implements ExtBusEvent, BusEvent {
         return userToken;
     }
 
-
     @Override
     public boolean equals(final Object o) {
         if (this == o) {
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/DefaultLifecycle.java b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/DefaultLifecycle.java
index ad86ba9..0ff515a 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/DefaultLifecycle.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/DefaultLifecycle.java
@@ -41,7 +41,6 @@ import com.google.common.collect.SetMultimap;
 import com.google.inject.Inject;
 import com.google.inject.Injector;
 
-
 public class DefaultLifecycle implements Lifecycle {
 
     private static final Logger log = LoggerFactory.getLogger(DefaultLifecycle.class);
@@ -68,7 +67,6 @@ public class DefaultLifecycle implements Lifecycle {
         init();
     }
 
-
     @Override
     public void fireStartupSequencePriorEventRegistration() {
         fireSequence(Sequence.STARTUP_PRE_EVENT_REGISTRATION);
@@ -141,7 +139,6 @@ public class DefaultLifecycle implements Lifecycle {
 
     }
 
-
     // Used to disable valid injection failure from unit tests
     protected void logWarn(final String msg, final Exception e) {
         log.warn(msg, e);
@@ -162,6 +159,7 @@ public class DefaultLifecycle implements Lifecycle {
     }
 
     private final class LifecycleHandler<T> {
+
         private final T target;
         private final Method method;
 
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/Lifecycle.java b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/Lifecycle.java
index 9f87538..6c5f9ae 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/Lifecycle.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/Lifecycle.java
@@ -16,7 +16,6 @@
 
 package com.ning.billing.beatrix.lifecycle;
 
-
 public interface Lifecycle {
 
     public void fireStartupSequencePriorEventRegistration();
diff --git a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/ServiceFinder.java b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/ServiceFinder.java
index bda63a0..135530f 100644
--- a/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/ServiceFinder.java
+++ b/beatrix/src/main/java/com/ning/billing/beatrix/lifecycle/ServiceFinder.java
@@ -126,7 +126,7 @@ public class ServiceFinder {
                     throw new ClassNotFoundException("Bad classpath. Error: " + mue.getMessage());
                 } catch (IOException io) {
                     throw new ClassNotFoundException("jar file '" + classPath.getName() +
-                                                             "' could not be instantiate from file path. Error: " + io.getMessage());
+                                                     "' could not be instantiate from file path. Error: " + io.getMessage());
                 }
                 if (!failed) {
                     files = module.entries();
@@ -180,7 +180,7 @@ public class ServiceFinder {
                     module.close();
                 } catch (IOException ioe) {
                     throw new ClassNotFoundException("The module jar file '" + classPath.getName() +
-                                                             "' could not be closed. Error: " + ioe.getMessage());
+                                                     "' could not be closed. Error: " + ioe.getMessage());
                 }
             }
         }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/extbus/TestEventJson.java b/beatrix/src/test/java/com/ning/billing/beatrix/extbus/TestEventJson.java
index 3c742ef..713365d 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/extbus/TestEventJson.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/extbus/TestEventJson.java
@@ -26,7 +26,6 @@ import com.ning.billing.beatrix.BeatrixTestSuite;
 import com.ning.billing.notification.plugin.api.ExtBusEventType;
 import com.ning.billing.util.jackson.ObjectMapper;
 
-
 public class TestEventJson extends BeatrixTestSuite {
 
     private final ObjectMapper mapper = new ObjectMapper();
@@ -47,5 +46,4 @@ public class TestEventJson extends BeatrixTestSuite {
         final Object obj = mapper.readValue(json, claz);
         Assert.assertTrue(obj.equals(e));
     }
-
 }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
index dd49539..c52cdbd 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/BeatrixIntegrationModule.java
@@ -20,9 +20,6 @@ import java.io.IOException;
 import java.net.URL;
 import java.util.Set;
 
-import com.ning.billing.currency.glue.CurrencyModule;
-import com.ning.billing.entitlement.EntitlementService;
-import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
 import org.skife.config.ConfigSource;
 
 import com.ning.billing.GuicyKillbillTestWithEmbeddedDBModule;
@@ -35,13 +32,15 @@ import com.ning.billing.beatrix.lifecycle.DefaultLifecycle;
 import com.ning.billing.beatrix.lifecycle.Lifecycle;
 import com.ning.billing.beatrix.util.AccountChecker;
 import com.ning.billing.beatrix.util.AuditChecker;
-import com.ning.billing.beatrix.util.SubscriptionChecker;
 import com.ning.billing.beatrix.util.InvoiceChecker;
 import com.ning.billing.beatrix.util.PaymentChecker;
 import com.ning.billing.beatrix.util.RefundChecker;
+import com.ning.billing.beatrix.util.SubscriptionChecker;
 import com.ning.billing.catalog.api.CatalogService;
 import com.ning.billing.catalog.glue.CatalogModule;
-import com.ning.billing.subscription.api.SubscriptionBaseService;
+import com.ning.billing.currency.glue.CurrencyModule;
+import com.ning.billing.entitlement.EntitlementService;
+import com.ning.billing.entitlement.glue.DefaultEntitlementModule;
 import com.ning.billing.invoice.api.InvoiceService;
 import com.ning.billing.invoice.generator.DefaultInvoiceGeneratorWithSwitchRepairLogic;
 import com.ning.billing.invoice.generator.InvoiceGenerator;
@@ -54,6 +53,7 @@ import com.ning.billing.overdue.OverdueService;
 import com.ning.billing.payment.api.PaymentService;
 import com.ning.billing.payment.glue.PaymentModule;
 import com.ning.billing.payment.provider.MockPaymentProviderPluginModule;
+import com.ning.billing.subscription.api.SubscriptionBaseService;
 import com.ning.billing.subscription.glue.DefaultSubscriptionModule;
 import com.ning.billing.tenant.glue.TenantModule;
 import com.ning.billing.usage.glue.UsageModule;
@@ -94,7 +94,6 @@ public class BeatrixIntegrationModule extends AbstractModule {
         this.configSource = configSource;
     }
 
-
     @Override
     protected void configure() {
 
@@ -138,7 +137,6 @@ public class BeatrixIntegrationModule extends AbstractModule {
         bind(AuditChecker.class).asEagerSingleton();
     }
 
-
     private static final class DefaultInvoiceModuleWithSwitchRepairLogic extends DefaultInvoiceModule {
 
         public DefaultInvoiceModuleWithSwitchRepairLogic(final ConfigSource configSource) {
@@ -151,7 +149,6 @@ public class BeatrixIntegrationModule extends AbstractModule {
         }
     }
 
-
     private static final class PaymentPluginMockModule extends PaymentModule {
 
         public PaymentPluginMockModule(final ConfigSource configSource) {
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestBasicOSGIWithTestBundle.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestBasicOSGIWithTestBundle.java
index 56287f9..afab9b2 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestBasicOSGIWithTestBundle.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestBasicOSGIWithTestBundle.java
@@ -41,7 +41,6 @@ import com.ning.billing.DBTestingHelper;
 import com.ning.billing.account.api.Account;
 import com.ning.billing.beatrix.osgi.SetupBundleWithAssertion;
 import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.commons.embeddeddb.EmbeddedDB;
 import com.ning.billing.osgi.api.OSGIServiceRegistration;
 import com.ning.billing.osgi.glue.OSGIDataSourceConfig;
 import com.ning.billing.payment.plugin.api.PaymentInfoPlugin;
@@ -150,7 +149,6 @@ public class TestBasicOSGIWithTestBundle extends TestOSGIBase {
             }, "Plugin did not create the payment");
         }
 
-
         private void assertWithCallback(final AwaitCallback callback, final String error) {
             try {
                 await().atMost(5000000, TimeUnit.SECONDS).until(new Callable<Boolean>() {
@@ -171,7 +169,6 @@ public class TestBasicOSGIWithTestBundle extends TestOSGIBase {
                    expectedAmount.compareTo(test.getAmount()) == 0;
         }
 
-
         private boolean isPluginInitialized() {
             TestModel test = getTestModelFirstRecord();
             return test.isStarted();
@@ -195,7 +192,6 @@ public class TestBasicOSGIWithTestBundle extends TestOSGIBase {
         }
     }
 
-
     private final static class TestModel {
 
         private final Boolean isStarted;
@@ -234,7 +230,6 @@ public class TestBasicOSGIWithTestBundle extends TestOSGIBase {
 
     }
 
-
     private static class TestMapper implements ResultSetMapper<TestModel> {
 
         @Override
@@ -250,6 +245,7 @@ public class TestBasicOSGIWithTestBundle extends TestOSGIBase {
     }
 
     private interface AwaitCallback {
+
         boolean isSuccess();
     }
 }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyCurrencyPlugin.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyCurrencyPlugin.java
index dcba30a..fb4fc6f 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyCurrencyPlugin.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyCurrencyPlugin.java
@@ -40,14 +40,12 @@ public class TestJrubyCurrencyPlugin extends TestOSGIBase {
     private final String BUNDLE_TEST_RESOURCE_PREFIX = "killbill-currency-plugin-test";
     private final String BUNDLE_TEST_RESOURCE = BUNDLE_TEST_RESOURCE_PREFIX + ".tar.gz";
 
-
     @Inject
     private OSGIServiceRegistration<CurrencyPluginApi> currencyPluginApiOSGIServiceRegistration;
 
     @BeforeClass(groups = "slow")
     public void beforeClass() throws Exception {
 
-
         // OSGIDataSourceConfig
         super.beforeClass();
 
@@ -58,7 +56,7 @@ public class TestJrubyCurrencyPlugin extends TestOSGIBase {
         setupTest.setupJrubyBundle();
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testCurrencyApis() throws Exception {
 
         CurrencyPluginApi api = getTestPluginCurrencyApi();
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
index 20396bc..be705cd 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestJrubyPaymentPlugin.java
@@ -34,9 +34,9 @@ import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.osgi.api.OSGIServiceRegistration;
 import com.ning.billing.payment.api.PaymentMethodPlugin;
 import com.ning.billing.payment.plugin.api.PaymentInfoPlugin;
-import com.ning.billing.payment.plugin.api.PaymentPluginStatus;
 import com.ning.billing.payment.plugin.api.PaymentMethodInfoPlugin;
 import com.ning.billing.payment.plugin.api.PaymentPluginApi;
+import com.ning.billing.payment.plugin.api.PaymentPluginStatus;
 import com.ning.billing.payment.plugin.api.RefundInfoPlugin;
 import com.ning.billing.payment.plugin.api.RefundPluginStatus;
 
@@ -55,7 +55,6 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
     @BeforeClass(groups = "slow")
     public void beforeClass() throws Exception {
 
-
         // OSGIDataSourceConfig
         super.beforeClass();
 
@@ -67,7 +66,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
 
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testProcessPayment() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -75,10 +74,9 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         account = createAccountWithNonOsgiPaymentMethod(getAccountData(4));
 
         final DateTime beforeCall = new DateTime().toDateTime(DateTimeZone.UTC).minusSeconds(1);
-        PaymentInfoPlugin res = api.processPayment(account.getId(), UUID.randomUUID(), UUID.randomUUID(), BigDecimal.TEN, Currency.USD,  callContext);
+        PaymentInfoPlugin res = api.processPayment(account.getId(), UUID.randomUUID(), UUID.randomUUID(), BigDecimal.TEN, Currency.USD, callContext);
         final DateTime afterCall = new DateTime().toDateTime(DateTimeZone.UTC).plusSeconds(1);
 
-
         Assert.assertTrue(res.getAmount().compareTo(BigDecimal.TEN) == 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(beforeCall) >= 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(afterCall) <= 0);
@@ -92,7 +90,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         assertEquals(res.getStatus(), PaymentPluginStatus.PROCESSED);
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testGetPaymentInfo() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -101,7 +99,6 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         PaymentInfoPlugin res = api.getPaymentInfo(UUID.randomUUID(), UUID.randomUUID(), callContext);
         final DateTime afterCall = new DateTime().toDateTime(DateTimeZone.UTC).plusSeconds(1);
 
-
         Assert.assertTrue(res.getAmount().compareTo(BigDecimal.ZERO) == 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(beforeCall) >= 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(afterCall) <= 0);
@@ -115,8 +112,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         assertEquals(res.getStatus(), PaymentPluginStatus.PROCESSED);
     }
 
-
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testProcessRefund() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -125,7 +121,6 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         RefundInfoPlugin res = api.processRefund(UUID.randomUUID(), UUID.randomUUID(), BigDecimal.TEN, Currency.USD, callContext);
         final DateTime afterCall = new DateTime().toDateTime(DateTimeZone.UTC).plusSeconds(1);
 
-
         Assert.assertTrue(res.getAmount().compareTo(BigDecimal.TEN) == 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(beforeCall) >= 0);
         Assert.assertTrue(res.getCreatedDate().compareTo(afterCall) <= 0);
@@ -139,7 +134,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         assertEquals(res.getStatus(), RefundPluginStatus.PROCESSED);
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testAddPaymentMethod() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -150,15 +145,14 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         final DateTime afterCall = new DateTime().toDateTime(DateTimeZone.UTC).plusSeconds(1);
     }
 
-
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testDeletePaymentMethod() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
         api.deletePaymentMethod(UUID.randomUUID(), UUID.randomUUID(), callContext);
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testGetPaymentMethodDetail() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -173,7 +167,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         assertEquals(res.getProperties().get(1).getValue(), "value2");
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testSetDefaultPaymentMethod() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -181,7 +175,7 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         api.setDefaultPaymentMethod(UUID.randomUUID(), UUID.randomUUID(), callContext);
     }
 
-    @Test(groups = "slow", enabled = true)
+    @Test(groups = "slow")
     public void testGetPaymentMethods() throws Exception {
 
         PaymentPluginApi api = getTestPluginPaymentApi();
@@ -197,7 +191,6 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
         assertEquals(res0.getPaymentMethodId(), kbAccountId);
     }
 
-
     private PaymentPluginApi getTestPluginPaymentApi() {
         int retry = 5;
 
@@ -209,7 +202,8 @@ public class TestJrubyPaymentPlugin extends TestOSGIBase {
                 try {
                     log.info("Waiting for Killbill initialization to complete time = " + clock.getUTCNow());
                     Thread.sleep(1000);
-                } catch (InterruptedException ignore) {}
+                } catch (InterruptedException ignore) {
+                }
             }
         } while (result == null && retry-- > 0);
         Assert.assertNotNull(result);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestOSGIBase.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestOSGIBase.java
index 661e490..eca30ee 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestOSGIBase.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestOSGIBase.java
@@ -17,9 +17,6 @@
 package com.ning.billing.beatrix.integration.osgi;
 
 import com.ning.billing.beatrix.integration.TestIntegrationBase;
-import com.ning.billing.util.config.OSGIConfig;
-
-import com.google.inject.Inject;
 
 public class TestOSGIBase extends TestIntegrationBase {
 
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
index 1fbe612..c6b17ab 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/osgi/TestPaymentOSGIWithTestPaymentBundle.java
@@ -113,7 +113,6 @@ public class TestPaymentOSGIWithTestPaymentBundle extends TestOSGIBase {
         Assert.assertTrue(gotException);
     }
 
-
     @Test(groups = "slow")
     public void testIntegrationOK() throws Exception {
         setupIntegration(null, null);
@@ -131,7 +130,6 @@ public class TestPaymentOSGIWithTestPaymentBundle extends TestOSGIBase {
         setupIntegration(null, e);
     }
 
-
     private void setupIntegration(final PaymentPluginApiException expectedException, final RuntimeException expectedRuntimeException) throws Exception {
 
         final PaymentPluginApiWithTestControl paymentPluginApi = getTestPluginPaymentApi();
@@ -166,7 +164,6 @@ public class TestPaymentOSGIWithTestPaymentBundle extends TestOSGIBase {
         final DefaultEntitlement aoEntitlement = addAOEntitlementAndCheckForCompletion(baseEntitlement.getBundleId(), "Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY,
                                                                                        expectedEvents.toArray(new NextEvent[expectedEvents.size()]));
 
-
         Invoice invoice = invoiceChecker.checkInvoice(account.getId(), 2, callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 1), new LocalDate(2012, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("399.95")));
 
         if (expectedException == null && expectedRuntimeException == null) {
@@ -178,7 +175,6 @@ public class TestPaymentOSGIWithTestPaymentBundle extends TestOSGIBase {
         }
     }
 
-
     private PaymentPluginApiWithTestControl getTestPluginPaymentApi() {
         PaymentPluginApiWithTestControl result = (PaymentPluginApiWithTestControl) paymentPluginApiOSGIServiceRegistration.getServiceForName(BeatrixIntegrationModule.OSGI_PLUGIN_NAME);
         Assert.assertNotNull(result);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/MockOverdueService.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/MockOverdueService.java
index df76116..c6612aa 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/MockOverdueService.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/MockOverdueService.java
@@ -18,17 +18,19 @@ package com.ning.billing.beatrix.integration.overdue;
 
 import javax.inject.Named;
 
-import com.google.inject.Inject;
-import com.ning.billing.overdue.notification.OverdueNotifier;
 import com.ning.billing.overdue.OverdueProperties;
 import com.ning.billing.overdue.OverdueUserApi;
 import com.ning.billing.overdue.glue.DefaultOverdueModule;
 import com.ning.billing.overdue.listener.OverdueListener;
+import com.ning.billing.overdue.notification.OverdueNotifier;
 import com.ning.billing.overdue.service.DefaultOverdueService;
 import com.ning.billing.overdue.wrapper.OverdueWrapperFactory;
 import com.ning.billing.util.svcsapi.bus.BusService;
 
+import com.google.inject.Inject;
+
 public class MockOverdueService extends DefaultOverdueService {
+
     @Inject
     public MockOverdueService(final OverdueUserApi userApi, final OverdueProperties properties,
                               @Named(DefaultOverdueModule.OVERDUE_NOTIFIER_CHECK_NAMED) final OverdueNotifier checkNotifier,
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
index 653a375..6cbfc54 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueBase.java
@@ -29,7 +29,6 @@ import com.ning.billing.beatrix.integration.TestIntegrationBase;
 import com.ning.billing.catalog.api.BillingPeriod;
 import com.ning.billing.entitlement.api.SubscriptionBundle;
 import com.ning.billing.overdue.OverdueService;
-import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
 import com.ning.billing.overdue.config.OverdueConfig;
 import com.ning.billing.payment.api.PaymentMethodPlugin;
 import com.ning.billing.payment.api.TestPaymentMethodPluginBase;
@@ -41,13 +40,11 @@ import static org.testng.Assert.assertNotNull;
 
 public abstract class TestOverdueBase extends TestIntegrationBase {
 
-
     protected Account account;
     protected SubscriptionBundle bundle;
     protected String productName;
     protected BillingPeriod term;
 
-
     public abstract String getOverdueConfig();
 
     final PaymentMethodPlugin paymentMethodPlugin = new TestPaymentMethodPluginBase();
@@ -70,7 +67,6 @@ public abstract class TestOverdueBase extends TestIntegrationBase {
         paymentPlugin.clear();
     }
 
-
     protected void checkODState(final String expected) {
         try {
             // This will test the overdue notification queue: when we move the clock, the overdue system
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
index 714ba92..71b9f62 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueIntegration.java
@@ -42,8 +42,8 @@ import com.ning.billing.entitlement.api.EntitlementApiException;
 import com.ning.billing.invoice.api.Invoice;
 import com.ning.billing.invoice.api.InvoiceItemType;
 import com.ning.billing.invoice.api.InvoicePayment;
-import com.ning.billing.payment.api.Payment;
 import com.ning.billing.junction.DefaultBlockingState;
+import com.ning.billing.payment.api.Payment;
 
 import com.google.common.collect.ImmutableList;
 
@@ -58,11 +58,9 @@ import static org.testng.Assert.assertTrue;
 // - The overdue notifications
 //
 
-
 @Test(groups = "slow")
 public class TestOverdueIntegration extends TestOverdueBase {
 
-
     private final static Integer TIME_SINCE_EARLIEST_INVOICE_TO_TRIGGER_BLOCKING_BILLING = 40;
 
     @Override
@@ -117,8 +115,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         return configXml;
     }
 
-
-    @Test(groups = "slow", description="Test overdue stages and return to clear prior to CTD")
+    @Test(groups = "slow", description = "Test overdue stages and return to clear prior to CTD")
     public void testOverdueStages1() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -194,7 +191,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
                                     // New invoice for the part that was unblocked
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 23), new LocalDate(2012, 7, 31), InvoiceItemType.RECURRING, new BigDecimal("64.51")));
 
-
         // Add 10 days to generate next invoice. We verify that we indeed have a notification for nextBillingDate
         addDaysAndCheckForCompletion(10, NextEvent.INVOICE, NextEvent.PAYMENT);
 
@@ -208,7 +204,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(BigDecimal.ZERO), 0);
     }
 
-    @Test(groups = "slow", description="Test overdue stages and return to clear on CTD")
+    @Test(groups = "slow", description = "Test overdue stages and return to clear on CTD")
     public void testOverdueStages2() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -304,8 +300,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(BigDecimal.ZERO), 0);
     }
 
-
-    @Test(groups = "slow", description="Test overdue stages and return to clear after CTD")
+    @Test(groups = "slow", description = "Test overdue stages and return to clear after CTD")
     public void testOverdueStages3() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -404,12 +399,11 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(BigDecimal.ZERO), 0);
     }
 
-
     //
     // This test is similar to the previous one except that instaed of moving the clock to check we will get the next invoice
     // at the end, we carry a change of plan.
     //
-    @Test(groups = "slow", description="Test overdue stages and follow with an immediate change of plan")
+    @Test(groups = "slow", description = "Test overdue stages and follow with an immediate change of plan")
     public void testOverdueStagesFollowedWithImmediateChange1() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -473,7 +467,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
         addDaysAndCheckForCompletion(5, NextEvent.BLOCK);
         checkODState("OD3");
 
-
         allowPaymentsAndResetOverdueToClearByPayingAllUnpaidInvoices();
 
         invoiceChecker.checkInvoice(account.getId(), 4, callContext,
@@ -491,7 +484,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
                                             // CBA generated
                                             new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 23), new LocalDate(2012, 7, 23), InvoiceItemType.CBA_ADJ, new BigDecimal("64.51")));
 
-
         invoiceChecker.checkInvoice(account.getId(), 5, callContext,
                                     // Item for the upgraded recurring plan
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 23), new LocalDate(2012, 7, 31), InvoiceItemType.RECURRING, new BigDecimal("154.85")),
@@ -504,7 +496,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(BigDecimal.ZERO), 0);
     }
 
-    @Test(groups = "slow", description="Test overdue stages and follow with an immediate change of plan and use of credit")
+    @Test(groups = "slow", description = "Test overdue stages and follow with an immediate change of plan and use of credit")
     public void testOverdueStagesFollowedWithImmediateChange2() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -539,12 +531,12 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkODState("OD1");
 
         // 2012, 7, 10 => Retry P0
-        addDaysAndCheckForCompletion(8,  NextEvent.BLOCK, NextEvent.INVOICE_ADJUSTMENT, NextEvent.PAYMENT_ERROR);
+        addDaysAndCheckForCompletion(8, NextEvent.BLOCK, NextEvent.INVOICE_ADJUSTMENT, NextEvent.PAYMENT_ERROR);
         checkODState("OD2");
 
         invoiceChecker.checkInvoice(account.getId(), 2,
-                                            callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 31), new LocalDate(2013, 5, 31), InvoiceItemType.RECURRING, new BigDecimal("2399.95")),
-                                            new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 10), new LocalDate(2013, 5, 31), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-2136.92")));
+                                    callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 31), new LocalDate(2013, 5, 31), InvoiceItemType.RECURRING, new BigDecimal("2399.95")),
+                                    new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 10), new LocalDate(2013, 5, 31), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-2136.92")));
 
         // 2012, 7, 18 => Retry P0
         addDaysAndCheckForCompletion(8, NextEvent.PAYMENT_ERROR);
@@ -560,7 +552,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
                                     // New invoice for the part that was unblocked up to the BCD
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 23), new LocalDate(2012, 7, 31), InvoiceItemType.RECURRING, new BigDecimal("52.56")));
 
-
         // Move to 2012, 7, 31 and Make a change of plan
         addDaysAndCheckForCompletion(8, NextEvent.INVOICE, NextEvent.PAYMENT);
 
@@ -568,7 +559,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
                                     // New invoice for the part that was unblocked up to the BCD
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 7, 31), new LocalDate(2013, 7, 31), InvoiceItemType.RECURRING, new BigDecimal("2399.95")));
 
-
         checkChangePlanWithOverdueState(baseEntitlement, false, false);
 
         invoiceChecker.checkRepairedInvoice(account.getId(), 4, callContext,
@@ -585,8 +575,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(new BigDecimal("-1800")), 0);
     }
 
-
-    @Test(groups = "slow", description="Test overdue stages with missing payment method")
+    @Test(groups = "slow", description = "Test overdue stages with missing payment method")
     public void testOverdueStateIfNoPaymentMethod() throws Exception {
         // This test is similar to the previous one - but there is no default payment method on the account, so there
         // won't be any payment retry
@@ -643,7 +632,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkODState("OD2");
         checkChangePlanWithOverdueState(baseEntitlement, true, true);
 
-
         invoiceChecker.checkInvoice(account.getId(), 3,
                                     callContext, new ExpectedInvoiceItemCheck(new LocalDate(2012, 6, 30), new LocalDate(2012, 7, 31), InvoiceItemType.RECURRING, new BigDecimal("249.95")),
                                     // We paid up to 07-31, hence the adjustment
@@ -683,7 +671,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         assertEquals(invoiceUserApi.getAccountBalance(account.getId(), callContext).compareTo(BigDecimal.ZERO), 0);
     }
 
-    @Test(groups = "slow", description="Test overdue from non paid external charge")
+    @Test(groups = "slow", description = "Test overdue from non paid external charge")
     public void testShouldBeInOverdueAfterExternalCharge() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -726,7 +714,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkODState(DefaultBlockingState.CLEAR_STATE_NAME);
     }
 
-    @Test(groups = "slow", description="Test overdue after refund with no adjustment")
+    @Test(groups = "slow", description = "Test overdue after refund with no adjustment")
     public void testShouldBeInOverdueAfterRefundWithoutAdjustment() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -769,7 +757,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkChangePlanWithOverdueState(baseEntitlement, true, true);
     }
 
-    @Test(groups = "slow", description="Test overdue after chargeback")
+    @Test(groups = "slow", description = "Test overdue after chargeback")
     public void testShouldBeInOverdueAfterChargeback() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -812,7 +800,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkChangePlanWithOverdueState(baseEntitlement, true, true);
     }
 
-    @Test(groups = "slow", description="Test overdue clear after external payment")
+    @Test(groups = "slow", description = "Test overdue clear after external payment")
     public void testOverdueStateShouldClearAfterExternalPayment() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -858,8 +846,7 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkODState(DefaultBlockingState.CLEAR_STATE_NAME);
     }
 
-
-    @Test(groups = "slow", description="Test overdue clear after item adjustment")
+    @Test(groups = "slow", description = "Test overdue clear after item adjustment")
     public void testOverdueStateShouldClearAfterCreditOrInvoiceItemAdjustment() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -984,7 +971,6 @@ public class TestOverdueIntegration extends TestOverdueBase {
         checkODState(DefaultBlockingState.CLEAR_STATE_NAME);
     }
 
-
     private void checkChangePlanWithOverdueState(final Entitlement entitlement, final boolean shouldFail, final boolean expectedPayment) {
         if (shouldFail) {
             try {
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
index a9694a2..0fcd92d 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithOverdueEnforcementOffTag.java
@@ -34,7 +34,6 @@ import com.ning.billing.util.tag.ControlTagType;
 @Test(groups = "slow")
 public class TestOverdueWithOverdueEnforcementOffTag extends TestOverdueBase {
 
-
     @Override
     public String getOverdueConfig() {
         final String configXml = "<overdueConfig>" +
@@ -97,7 +96,6 @@ public class TestOverdueWithOverdueEnforcementOffTag extends TestOverdueBase {
         checkODState("OD1");
     }
 
-
     @Test(groups = "slow")
     public void testOverdueAccountWithOverdueEnforcementOffTag() throws Exception {
 
@@ -134,7 +132,7 @@ public class TestOverdueWithOverdueEnforcementOffTag extends TestOverdueBase {
         checkODState(DefaultBlockingState.CLEAR_STATE_NAME);
 
         // Now remove OVERDUE_ENFORCEMENT_OFF tag
-        busHandler.pushExpectedEvents(NextEvent.TAG,  NextEvent.BLOCK);
+        busHandler.pushExpectedEvents(NextEvent.TAG, NextEvent.BLOCK);
         tagUserApi.removeTag(account.getId(), ObjectType.ACCOUNT, ControlTagType.OVERDUE_ENFORCEMENT_OFF.getId(), callContext);
         assertListenerStatus();
 
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
index 102f18b..8c1f241 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/overdue/TestOverdueWithSubscriptionCancellation.java
@@ -28,15 +28,14 @@ import com.ning.billing.catalog.api.ProductCategory;
 import com.ning.billing.entitlement.api.DefaultEntitlement;
 import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
 import com.ning.billing.invoice.api.InvoiceItemType;
-import com.ning.billing.subscription.api.SubscriptionBase;
 import com.ning.billing.junction.DefaultBlockingState;
+import com.ning.billing.subscription.api.SubscriptionBase;
 
-import static junit.framework.Assert.assertTrue;
+import static org.testng.Assert.assertTrue;
 
 @Test(groups = "slow")
 public class TestOverdueWithSubscriptionCancellation extends TestOverdueBase {
 
-
     @Override
     public String getOverdueConfig() {
         final String configXml = "<overdueConfig>" +
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
index 6b228f7..ac15df5 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestBundleTransfer.java
@@ -43,7 +43,6 @@ import static org.testng.Assert.assertTrue;
 
 public class TestBundleTransfer extends TestIntegrationBase {
 
-
     @Test(groups = "slow")
     public void testBundleTransferWithBPAnnualOnly() throws Exception {
 
@@ -198,7 +197,6 @@ public class TestBundleTransfer extends TestIntegrationBase {
         List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 2);
 
-
         // CHECK OLD ACCOUNTS ITEMS
         ImmutableList<ExpectedInvoiceItemCheck> toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2012, 5, 9), InvoiceItemType.RECURRING, new BigDecimal("66.66")),
@@ -206,7 +204,6 @@ public class TestBundleTransfer extends TestIntegrationBase {
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 3), new LocalDate(2012, 5, 3), InvoiceItemType.CBA_ADJ, new BigDecimal("49.99")));
         invoiceChecker.checkInvoice(invoices.get(1).getId(), callContext, toBeChecked);
 
-
         // CHECK NEW ACCOUNT ITEMS
         invoices = invoiceUserApi.getInvoicesByAccount(newAccount.getId(), callContext);
         assertEquals(invoices.size(), 1);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
index 398e870..b2e397c 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestCustomFieldApi.java
@@ -32,8 +32,8 @@ import com.ning.billing.catalog.api.BillingPeriod;
 import com.ning.billing.catalog.api.PriceListSet;
 import com.ning.billing.catalog.api.ProductCategory;
 import com.ning.billing.entitlement.api.DefaultEntitlement;
-import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
 import com.ning.billing.invoice.api.Invoice;
+import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
 import com.ning.billing.util.api.CustomFieldApiException;
 import com.ning.billing.util.api.CustomFieldUserApi;
 import com.ning.billing.util.customfield.CustomField;
@@ -42,18 +42,16 @@ import com.ning.billing.util.customfield.StringCustomField;
 import com.google.inject.Inject;
 
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestCustomFieldApi extends TestIntegrationBase {
 
-
     private Account account;
 
     @Inject
     private CustomFieldUserApi customFieldApi;
 
     @Override
-    @BeforeMethod(groups = {"slow"})
+    @BeforeMethod(groups = "slow")
     public void beforeMethod() throws Exception {
         super.beforeMethod();
         account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
@@ -75,7 +73,6 @@ public class TestCustomFieldApi extends TestIntegrationBase {
         Assert.assertEquals(fields.size(), 2);
     }
 
-
     @Test(groups = "slow")
     public void testCustomFieldForInvoice() throws CustomFieldApiException, SubscriptionBaseApiException {
 
@@ -95,7 +92,6 @@ public class TestCustomFieldApi extends TestIntegrationBase {
         final Invoice invoice = invoices.get(0);
         Assert.assertEquals(invoice.getAccountId(), account.getId());
 
-
         addCustomField("name1", "value1", invoice.getId(), ObjectType.INVOICE, clock.getUTCNow());
         addCustomField("name2", "value2", invoice.getId(), ObjectType.INVOICE, clock.getUTCNow());
 
@@ -130,7 +126,5 @@ public class TestCustomFieldApi extends TestIntegrationBase {
         fields.add(f);
         customFieldApi.addCustomFields(fields, callContext);
         assertListenerStatus();
-
     }
-
 }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
index bea25d3..9d1ce91 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegration.java
@@ -271,7 +271,6 @@ public class TestIntegration extends TestIntegrationBase {
         DefaultEntitlement baseEntitlement = createBaseEntitlementAndCheckForCompletion(account.getId(), "bundleKey", "Shotgun", ProductCategory.BASE, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE);
         DefaultSubscriptionBase subscription = subscriptionDataFromSubscription(baseEntitlement.getSubscriptionBase());
 
-
         invoiceChecker.checkInvoice(account.getId(), invoiceItemCount++, callContext, new ExpectedInvoiceItemCheck(initialCreationDate.toLocalDate(), null, InvoiceItemType.FIXED, new BigDecimal("0")));
         // No end date for the trial item (fixed price of zero), and CTD should be today (i.e. when the trial started)
         invoiceChecker.checkChargedThroughDate(subscription.getId(), clock.getUTCToday(), callContext);
@@ -341,7 +340,6 @@ public class TestIntegration extends TestIntegrationBase {
 
         log.info("TEST PASSED !");
 
-
     }
 
     @Test(groups = {"stress"}, enabled = false)
@@ -399,10 +397,8 @@ public class TestIntegration extends TestIntegrationBase {
         final BillingPeriod term = BillingPeriod.MONTHLY;
         final String planSetName = PriceListSet.DEFAULT_PRICELIST_NAME;
 
-
         final DefaultEntitlement baseEntitlement = createBaseEntitlementAndCheckForCompletion(account.getId(), "bundleKey", productName, ProductCategory.BASE, term, NextEvent.CREATE, NextEvent.INVOICE);
 
-
         // MOVE CLOCK A LITTLE BIT-- STILL IN TRIAL
         final Interval it = new Interval(clock.getUTCNow(), clock.getUTCNow().plusDays(3));
         log.info("Moving clock from" + clock.getUTCNow() + " to " + clock.getUTCNow().plusDays(3));
@@ -411,11 +407,9 @@ public class TestIntegration extends TestIntegrationBase {
         final DefaultEntitlement aoEntitlement1 = addAOEntitlementAndCheckForCompletion(baseEntitlement.getBundleId(), "Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY,
                                                                                         NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
 
-
         final DefaultEntitlement aoEntitlement2 = addAOEntitlementAndCheckForCompletion(baseEntitlement.getBundleId(), "Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY,
                                                                                         NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
 
-
         // MOVE CLOCK A LITTLE BIT MORE -- EITHER STAY IN TRIAL OR GET OUT
         busHandler.pushExpectedEvent(NextEvent.PHASE);
         busHandler.pushExpectedEvent(NextEvent.PHASE);
@@ -447,7 +441,6 @@ public class TestIntegration extends TestIntegrationBase {
         assertListenerStatus();
     }
 
-
     @Test(groups = "slow")
     public void testCreateMultipleBPWithSameExternalKey() throws Exception {
 
@@ -482,9 +475,7 @@ public class TestIntegration extends TestIntegrationBase {
         assertEquals(newBaseEntitlement.getState(), EntitlementState.ACTIVE);
     }
 
-
-
-        @Test(groups = "slow")
+    @Test(groups = "slow")
     public void testWithPauseResume() throws Exception {
         final DateTime initialDate = new DateTime(2012, 2, 1, 0, 3, 42, 0, testTimeZone);
         final int billingDay = 2;
@@ -539,7 +530,6 @@ public class TestIntegration extends TestIntegrationBase {
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 3, 4), new LocalDate(2012, 4, 2), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-233.83")),
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 3, 4), new LocalDate(2012, 3, 4), InvoiceItemType.CBA_ADJ, new BigDecimal("233.83")));
 
-
         entitlement = (DefaultEntitlement) entitlementApi.getEntitlementForId(baseEntitlement.getId(), callContext);
         Assert.assertEquals(entitlement.getState(), EntitlementState.BLOCKED);
 
@@ -551,7 +541,6 @@ public class TestIntegration extends TestIntegrationBase {
         entitlementApi.resume(entitlement.getBundleId(), clock.getUTCNow().toLocalDate(), callContext);
         assertListenerStatus();
 
-
         invoiceChecker.checkInvoice(account.getId(), 3, callContext,
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 5), new LocalDate(2012, 5, 2), InvoiceItemType.RECURRING, new BigDecimal("224.96")),
                                     new ExpectedInvoiceItemCheck(new LocalDate(2012, 4, 5), new LocalDate(2012, 4, 5), InvoiceItemType.CBA_ADJ, new BigDecimal("-224.96")));
@@ -572,10 +561,8 @@ public class TestIntegration extends TestIntegrationBase {
         final String productName = "Blowdart";
         final String planSetName = "DEFAULT";
 
-
         final DefaultEntitlement baseEntitlement = createBaseEntitlementAndCheckForCompletion(account.getId(), "bundleKey", productName, ProductCategory.BASE, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE);
 
-
         List<Invoice> invoices = invoiceUserApi.getInvoicesByAccount(accountId, callContext);
         assertNotNull(invoices);
         assertTrue(invoices.size() == 1);
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
index fe2e603..c6d30c9 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationBase.java
@@ -39,6 +39,7 @@ import org.testng.annotations.BeforeMethod;
 
 import com.ning.billing.account.api.Account;
 import com.ning.billing.account.api.AccountData;
+import com.ning.billing.account.api.AccountInternalApi;
 import com.ning.billing.account.api.AccountService;
 import com.ning.billing.account.api.AccountUserApi;
 import com.ning.billing.api.TestApiListener;
@@ -71,7 +72,7 @@ import com.ning.billing.invoice.api.InvoicePayment;
 import com.ning.billing.invoice.api.InvoicePaymentApi;
 import com.ning.billing.invoice.api.InvoiceService;
 import com.ning.billing.invoice.api.InvoiceUserApi;
-import com.ning.billing.invoice.model.InvoicingConfiguration;
+import com.ning.billing.junction.BlockingInternalApi;
 import com.ning.billing.mock.MockAccountBuilder;
 import com.ning.billing.overdue.OverdueUserApi;
 import com.ning.billing.overdue.wrapper.OverdueWrapperFactory;
@@ -91,8 +92,6 @@ import com.ning.billing.util.api.RecordIdApi;
 import com.ning.billing.util.api.TagUserApi;
 import com.ning.billing.util.cache.CacheControllerDispatcher;
 import com.ning.billing.util.config.OSGIConfig;
-import com.ning.billing.account.api.AccountInternalApi;
-import com.ning.billing.junction.BlockingInternalApi;
 import com.ning.billing.util.svcsapi.bus.BusService;
 
 import com.google.common.base.Function;
@@ -109,20 +108,11 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
 
     protected static final DateTimeZone testTimeZone = DateTimeZone.UTC;
 
-    protected static final int NUMBER_OF_DECIMALS = InvoicingConfiguration.getNumberOfDecimals();
-    protected static final int ROUNDING_METHOD = InvoicingConfiguration.getRoundingMode();
-
-    protected static final BigDecimal ONE = new BigDecimal("1.0000").setScale(NUMBER_OF_DECIMALS);
-    protected static final BigDecimal TWENTY_NINE = new BigDecimal("29.0000").setScale(NUMBER_OF_DECIMALS);
-    protected static final BigDecimal THIRTY = new BigDecimal("30.0000").setScale(NUMBER_OF_DECIMALS);
-    protected static final BigDecimal THIRTY_ONE = new BigDecimal("31.0000").setScale(NUMBER_OF_DECIMALS);
-
-    protected static final Logger log = LoggerFactory.getLogger(TestIntegration.class);
+    protected static final Logger log = LoggerFactory.getLogger(TestIntegrationBase.class);
     protected static long AT_LEAST_ONE_MONTH_MS = 32L * 24L * 3600L * 1000L;
 
     protected static final long DELAY = 10000;
 
-
     @Inject
     protected Lifecycle lifecycle;
 
@@ -188,9 +178,8 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
     protected AccountChecker accountChecker;
 
     @Inject
-    protected
-    @javax.inject.Named(BeatrixModule.EXTERNAL_BUS)
-    PersistentBus externalBus;
+    @Named(BeatrixModule.EXTERNAL_BUS)
+    protected PersistentBus externalBus;
 
     @Inject
     protected RefundChecker refundChecker;
@@ -246,20 +235,16 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
 
         SetupBundleWithAssertion setupTest = new SetupBundleWithAssertion("whatever", osgiConfig, "whatever");
         setupTest.cleanBundleInstallDir();
-
     }
 
-
     @BeforeMethod(groups = "slow")
     public void beforeMethod() throws Exception {
-
         super.beforeMethod();
 
-        log.info("beforeMethod callcontext classLoader = " + (Thread.currentThread().getContextClassLoader() != null ? Thread.currentThread().getContextClassLoader().toString() : "null"));
+        log.debug("beforeMethod callcontext classLoader = " + (Thread.currentThread().getContextClassLoader() != null ? Thread.currentThread().getContextClassLoader().toString() : "null"));
         //Thread.currentThread().setContextClassLoader(null);
 
-        log.warn("\n");
-        log.warn("RESET TEST FRAMEWORK\n\n");
+        log.debug("RESET TEST FRAMEWORK");
 
         controlCacheDispatcher.clearAll();
 
@@ -287,9 +272,9 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
         busService.getBus().unregister(busHandler);
         lifecycle.fireShutdownSequencePostEventUnRegistration();
 
-        log.info("afterMethod callcontext classLoader = " + (Thread.currentThread().getContextClassLoader() != null ? Thread.currentThread().getContextClassLoader().toString() : "null"));
+        log.debug("afterMethod callcontext classLoader = " + (Thread.currentThread().getContextClassLoader() != null ? Thread.currentThread().getContextClassLoader().toString() : "null"));
 
-        log.warn("DONE WITH TEST\n");
+        log.debug("DONE WITH TEST");
     }
 
     protected void verifyTestResult(final UUID accountId, final UUID subscriptionId,
@@ -533,13 +518,12 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
         }, events);
     }
 
-
     protected DefaultEntitlement changeEntitlementAndCheckForCompletion(final Entitlement entitlement,
                                                                         final String productName,
                                                                         final BillingPeriod billingPeriod,
                                                                         final BillingActionPolicy billingPolicy,
                                                                         final NextEvent... events) {
-         return (DefaultEntitlement) doCallAndCheckForCompletion(new Function<Void, Entitlement>() {
+        return (DefaultEntitlement) doCallAndCheckForCompletion(new Function<Void, Entitlement>() {
             @Override
             public Entitlement apply(@Nullable final Void dontcare) {
                 try {
@@ -569,7 +553,7 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
                     // Need to fetch again to get latest CTD updated from the system
                     Entitlement refreshedEntitlement = entitlementApi.getEntitlementForId(entitlement.getId(), callContext);
                     refreshedEntitlement = refreshedEntitlement.cancelEntitlementWithDate(requestedDate.toLocalDate(), false, callContext);
-                    return  refreshedEntitlement;
+                    return refreshedEntitlement;
                 } catch (EntitlementApiException e) {
                     fail(e.getMessage());
                     return null;
@@ -609,17 +593,15 @@ public class TestIntegrationBase extends BeatrixTestSuiteWithEmbeddedDB implemen
     }
 
     private <T> T doCallAndCheckForCompletion(Function<Void, T> f, final NextEvent... events) {
-
         Joiner joiner = Joiner.on(", ");
-        log.info("            ************    STARTING BUS HANDLER CHECK : {} ********************", joiner.join(events));
+        log.debug("            ************    STARTING BUS HANDLER CHECK : {} ********************", joiner.join(events));
 
         busHandler.pushExpectedEvents(events);
 
         final T result = f.apply(null);
         assertListenerStatus();
 
-
-        log.info("            ************    DONE WITH BUS HANDLER CHECK    ********************");
+        log.debug("            ************    DONE WITH BUS HANDLER CHECK    ********************");
         return result;
     }
 }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
index d815446..2332a52 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationInvoiceWithRepairLogic.java
@@ -50,14 +50,12 @@ import com.google.common.collect.ImmutableList;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
 
     @Inject
     private DefaultInvoiceGeneratorWithSwitchRepairLogic invoiceGenerator;
 
-
     @AfterMethod(groups = "slow")
     public void afterMethod() throws Exception {
         super.afterMethod();
@@ -78,7 +76,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         final BillingPeriod term = BillingPeriod.MONTHLY;
         final String pricelistName = PriceListSet.DEFAULT_PRICELIST_NAME;
 
-
         //
         // CREATE SUBSCRIPTION AND EXPECT BOTH EVENTS: NextEvent.CREATE NextEvent.INVOICE
         //
@@ -426,7 +423,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
 
         assertEquals(bpEntitlement.getSubscriptionBase().getCurrentPlan().getBillingPeriod(), BillingPeriod.MONTHLY);
 
-
         invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 3);
 
@@ -540,7 +536,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 3);
 
-
         toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2013, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("2399.95")),
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2013, 5, 1), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-2399.95")),
@@ -595,7 +590,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         invoiceChecker.checkInvoice(invoices.get(4).getId(), callContext, toBeChecked);
     }
 
-
     @Test(groups = "slow")
     public void testInvoiceLogicWithFullRepairFollowedByPartialRepairWithItemAdjustment() throws Exception {
 
@@ -640,7 +634,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         final ExpectedPaymentCheck expectedPaymentCheck = new ExpectedPaymentCheck(clock.getUTCNow().toLocalDate(), new BigDecimal("2399.95"), PaymentStatus.SUCCESS, invoice1.getId(), Currency.USD);
         final Payment payment1 = payments.get(0);
 
-
         final Map<UUID, BigDecimal> iias = new HashMap<UUID, BigDecimal>();
         iias.put(invoice1.getInvoiceItems().get(0).getId(), new BigDecimal("10.00"));
         busHandler.pushExpectedEvents(NextEvent.INVOICE_ADJUSTMENT);
@@ -650,14 +643,12 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 2);
 
-
         toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2013, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("2399.95")),
                 // TODO SETPH the  ITEM_ADJ seems to be created with the callcontext getCreatedDate()
                 new ExpectedInvoiceItemCheck(callContext.getCreatedDate().toLocalDate(), callContext.getCreatedDate().toLocalDate(), InvoiceItemType.ITEM_ADJ, new BigDecimal("-10.00")));
         invoiceChecker.checkInvoice(invoices.get(1).getId(), callContext, toBeChecked);
 
-
         //
         // FORCE AN IMMEDIATE CHANGE OF THE BILLING PERIOD
         //
@@ -666,7 +657,6 @@ public class TestIntegrationInvoiceWithRepairLogic extends TestIntegrationBase {
         invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 3);
 
-
         toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2013, 5, 1), InvoiceItemType.RECURRING, new BigDecimal("2399.95")),
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 1), new LocalDate(2013, 5, 1), InvoiceItemType.REPAIR_ADJ, new BigDecimal("-2389.95")),
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
index 0744c47..80fbf5a 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoInvoiceOffTag.java
@@ -28,12 +28,10 @@ import com.ning.billing.ObjectType;
 import com.ning.billing.account.api.Account;
 import com.ning.billing.api.TestApiListener.NextEvent;
 import com.ning.billing.catalog.api.BillingPeriod;
-import com.ning.billing.catalog.api.PriceListSet;
 import com.ning.billing.catalog.api.ProductCategory;
 import com.ning.billing.entitlement.api.DefaultEntitlement;
 import com.ning.billing.invoice.api.Invoice;
 import com.ning.billing.invoice.api.InvoiceUserApi;
-import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
 import com.ning.billing.util.api.TagApiException;
 import com.ning.billing.util.api.TagDefinitionApiException;
 import com.ning.billing.util.api.TagUserApi;
@@ -44,7 +42,6 @@ import com.google.inject.Inject;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
 
@@ -55,23 +52,20 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
     private TagUserApi tagApi;
 
     private Account account;
-    private SubscriptionBaseBundle bundle;
     private String productName;
     private BillingPeriod term;
-    private String planSetName;
 
     @Override
-    @BeforeMethod(groups = {"slow"})
+    @BeforeMethod(groups = "slow")
     public void beforeMethod() throws Exception {
         super.beforeMethod();
         account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
         assertNotNull(account);
         productName = "Shotgun";
         term = BillingPeriod.MONTHLY;
-        planSetName = PriceListSet.DEFAULT_PRICELIST_NAME;
     }
 
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoInvoiceOffAccount() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
         add_AUTO_INVOICING_OFF_Tag(account.getId(), ObjectType.ACCOUNT);
@@ -104,7 +98,7 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
         assertEquals(invoices.size(), 1);
     }
 
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoInvoiceOffSingleSubscription() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
@@ -115,7 +109,6 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
         Collection<Invoice> invoices = invoiceApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 1); // first invoice is generated immediately after creation can't reliably stop it
 
-
         add_AUTO_INVOICING_OFF_Tag(bpEntitlement.getSubscriptionBase().getBundleId(), ObjectType.BUNDLE);
 
         busHandler.pushExpectedEvents(NextEvent.PHASE);
@@ -124,11 +117,9 @@ public class TestIntegrationWithAutoInvoiceOffTag extends TestIntegrationBase {
 
         invoices = invoiceApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 1); //No additional invoices generated
-
     }
 
-
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoInvoiceOffMultipleSubscriptions() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
 
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
index b01f4c4..06bae39 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestIntegrationWithAutoPayOff.java
@@ -50,7 +50,6 @@ import static org.testng.Assert.assertTrue;
 
 public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
 
-
     @Inject
     private InvoiceUserApi invoiceApi;
 
@@ -60,16 +59,14 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
     @Inject
     private PaymentConfig paymentConfig;
 
-
     private Account account;
     private SubscriptionBaseBundle bundle;
     private String productName;
     private BillingPeriod term;
     private String planSetName;
 
-
     @Override
-    @BeforeMethod(groups = {"slow"})
+    @BeforeMethod(groups = "slow")
     public void beforeMethod() throws Exception {
         super.beforeMethod();
         account = createAccountWithNonOsgiPaymentMethod(getAccountData(25));
@@ -79,12 +76,11 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
         planSetName = PriceListSet.DEFAULT_PRICELIST_NAME;
     }
 
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoPayOff() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
         add_AUTO_PAY_OFF_Tag(account.getId(), ObjectType.ACCOUNT);
 
-
         final DefaultEntitlement bpEntitlement = createBaseEntitlementAndCheckForCompletion(account.getId(), "externalKey", productName, ProductCategory.BASE, term, NextEvent.CREATE, NextEvent.INVOICE);
         assertNotNull(bpEntitlement);
 
@@ -123,8 +119,7 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
         assertListenerStatus();
     }
 
-
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoPayOffWithPaymentFailure() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
         add_AUTO_PAY_OFF_Tag(account.getId(), ObjectType.ACCOUNT);
@@ -185,8 +180,7 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
 
     }
 
-
-    @Test(groups = {"slow"}, enabled = true)
+    @Test(groups = "slow")
     public void testAutoPayOffWithPaymentFailureOn_AUTO_PAY_OFF() throws Exception {
         clock.setTime(new DateTime(2012, 5, 1, 0, 3, 42, 0));
         add_AUTO_PAY_OFF_Tag(account.getId(), ObjectType.ACCOUNT);
@@ -219,7 +213,6 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
         assertListenerStatus();
         addDelayBceauseOfLackOfCorrectSynchro();
 
-
         invoices = invoiceApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 2);
         for (Invoice cur : invoices) {
@@ -260,7 +253,6 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
         clock.addDays(nbDaysBeforeRetry + 1);
         assertListenerStatus();
 
-
         invoices = invoiceApi.getInvoicesByAccount(account.getId(), callContext);
         for (Invoice cur : invoices) {
             if (cur.getChargedAmount().compareTo(BigDecimal.ZERO) == 0) {
@@ -273,7 +265,6 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
 
     }
 
-
     private void add_AUTO_PAY_OFF_Tag(final UUID id, final ObjectType type) throws TagDefinitionApiException, TagApiException {
         busHandler.pushExpectedEvent(NextEvent.TAG);
         tagApi.addTag(id, type, ControlTagType.AUTO_PAY_OFF.getId(), callContext);
@@ -289,7 +280,6 @@ public class TestIntegrationWithAutoPayOff extends TestIntegrationBase {
         assertListenerStatus();
     }
 
-
     private void addDelayBceauseOfLackOfCorrectSynchro() {
         // TODO When removing the tag, the payment system will schedule retries for payments that are in non terminal state
         // The issue is that at this point we know the event went on the bus but we don't know if the listener in payment completed
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
index d212691..c33eca2 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPaymentRefund.java
@@ -121,7 +121,6 @@ public class TestPaymentRefund extends TestIntegrationBase {
                                                                                                                              new LocalDate(2012, 3, 31), InvoiceItemType.RECURRING, new BigDecimal("233.83")));
         payment = paymentChecker.checkPayment(account.getId(), 1, callContext, new ExpectedPaymentCheck(new LocalDate(2012, 3, 2), new BigDecimal("233.83"), PaymentStatus.SUCCESS, invoice.getId(), Currency.USD));
 
-
         // Filter and extract UUId from all Recuring invoices
         invoiceItems = new HashSet<UUID>(Collections2.transform(Collections2.filter(invoice.getInvoiceItems(), new Predicate<InvoiceItem>() {
             @Override
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
index fca53cb..7e62cb7 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestPublicBus.java
@@ -37,13 +37,11 @@ import com.google.common.eventbus.Subscribe;
 import static com.jayway.awaitility.Awaitility.await;
 import static java.util.concurrent.TimeUnit.SECONDS;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestPublicBus extends TestIntegrationBase {
 
     private PublicListener publicListener;
 
-
     private AtomicInteger externalBusCount;
 
     public class PublicListener {
@@ -63,8 +61,7 @@ public class TestPublicBus extends TestIntegrationBase {
 
         publicListener = new PublicListener();
 
-        log.warn("\n");
-        log.warn("RESET TEST FRAMEWORK\n\n");
+        log.debug("RESET TEST FRAMEWORK");
 
         clock.resetDeltaFromReality();
         resetTestListenerStatus();
@@ -79,7 +76,6 @@ public class TestPublicBus extends TestIntegrationBase {
         this.externalBusCount = new AtomicInteger(0);
     }
 
-
     @Test(groups = "{slow}")
     public void testSimple() throws Exception {
 
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
index 8c65150..36b1e95 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestRepairIntegration.java
@@ -35,30 +35,28 @@ import com.ning.billing.catalog.api.PlanPhaseSpecifier;
 import com.ning.billing.catalog.api.PriceListSet;
 import com.ning.billing.catalog.api.ProductCategory;
 import com.ning.billing.entitlement.api.DefaultEntitlement;
+import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
 import com.ning.billing.subscription.api.SubscriptionBaseTransitionType;
 import com.ning.billing.subscription.api.timeline.BundleBaseTimeline;
 import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline;
-import com.ning.billing.subscription.api.user.DefaultSubscriptionBase;
-import com.ning.billing.subscription.api.user.SubscriptionEvents;
 import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.DeletedEvent;
 import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.ExistingEvent;
 import com.ning.billing.subscription.api.timeline.SubscriptionBaseTimeline.NewEvent;
-import com.ning.billing.entitlement.api.Entitlement.EntitlementState;
+import com.ning.billing.subscription.api.user.DefaultSubscriptionBase;
+import com.ning.billing.subscription.api.user.SubscriptionEvents;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestRepairIntegration extends TestIntegrationBase {
 
-
-    @Test(groups = {"slow"}, enabled = false)
+    @Test(groups = "slow", enabled = false)
     public void testRepairChangeBPWithAddonIncludedIntrial() throws Exception {
         log.info("Starting testRepairChangeBPWithAddonIncludedIntrial");
         testRepairChangeBPWithAddonIncluded(true);
     }
 
-    @Test(groups = {"slow"}, enabled = false)
+    @Test(groups = "slow", enabled = false)
     public void testRepairChangeBPWithAddonIncludedOutOfTrial() throws Exception {
         log.info("Starting testRepairChangeBPWithAddonIncludedOutOfTrial");
         testRepairChangeBPWithAddonIncluded(false);
@@ -82,8 +80,8 @@ public class TestRepairIntegration extends TestIntegrationBase {
         Interval it = new Interval(clock.getUTCNow(), clock.getUTCNow().plusDays(3));
         clock.addDeltaFromReality(it.toDurationMillis());
 
-        final DefaultEntitlement aoEntitlement1 = addAOEntitlementAndCheckForCompletion(bpEntitlement.getBundleId(), "Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY,NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
-        final DefaultEntitlement aoEntitlement2 = addAOEntitlementAndCheckForCompletion(bpEntitlement.getBundleId(), "Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY,NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
+        final DefaultEntitlement aoEntitlement1 = addAOEntitlementAndCheckForCompletion(bpEntitlement.getBundleId(), "Telescopic-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
+        final DefaultEntitlement aoEntitlement2 = addAOEntitlementAndCheckForCompletion(bpEntitlement.getBundleId(), "Laser-Scope", ProductCategory.ADD_ON, BillingPeriod.MONTHLY, NextEvent.CREATE, NextEvent.INVOICE, NextEvent.PAYMENT);
 
         // MOVE CLOCK A LITTLE BIT MORE -- EITHER STAY IN TRIAL OR GET OUT
         final int duration = inTrial ? 3 : 35;
@@ -133,7 +131,6 @@ public class TestRepairIntegration extends TestIntegrationBase {
             repairApi.repairBundle(bundleRepair, false, callContext);
             assertListenerStatus();
 
-
             final DefaultSubscriptionBase newAoSubscription = (DefaultSubscriptionBase) aoEntitlement1.getSubscriptionBase();
             assertEquals(newAoSubscription.getState(), EntitlementState.CANCELLED);
             assertEquals(newAoSubscription.getAllTransitions().size(), 2);
@@ -144,7 +141,6 @@ public class TestRepairIntegration extends TestIntegrationBase {
             assertEquals(newAoSubscription2.getAllTransitions().size(), 2);
             assertEquals(newAoSubscription2.getActiveVersion(), SubscriptionEvents.INITIAL_VERSION + 1);
 
-
             final DefaultSubscriptionBase newBaseSubscription = (DefaultSubscriptionBase) bpEntitlement.getSubscriptionBase();
             assertEquals(newBaseSubscription.getState(), EntitlementState.ACTIVE);
             assertEquals(newBaseSubscription.getAllTransitions().size(), 3);
@@ -193,7 +189,6 @@ public class TestRepairIntegration extends TestIntegrationBase {
         };
     }
 
-
     protected BundleBaseTimeline createBundleRepair(final UUID bundleId, final String viewId, final List<SubscriptionBaseTimeline> subscriptionRepair) {
         return new BundleBaseTimeline() {
             @Override
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestSubscription.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestSubscription.java
index e7cca7e..c99bca8 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestSubscription.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestSubscription.java
@@ -38,7 +38,6 @@ import com.google.common.collect.ImmutableList;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestSubscription extends TestIntegrationBase {
 
@@ -94,7 +93,6 @@ public class TestSubscription extends TestIntegrationBase {
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 5, 11), InvoiceItemType.CBA_ADJ, new BigDecimal("-169.32")));
         invoiceChecker.checkInvoice(invoices.get(2).getId(), callContext, toBeChecked);
 
-
         //
         // FORCE ANOTHER CHANGE
         //
@@ -103,7 +101,6 @@ public class TestSubscription extends TestIntegrationBase {
         invoices = invoiceUserApi.getInvoicesByAccount(account.getId(), callContext);
         assertEquals(invoices.size(), 4);
 
-
         toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 6, 1), InvoiceItemType.RECURRING, new BigDecimal("169.32")),
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 5, 11), InvoiceItemType.CBA_ADJ, new BigDecimal("-169.32")),
@@ -111,13 +108,11 @@ public class TestSubscription extends TestIntegrationBase {
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 5, 11), InvoiceItemType.CBA_ADJ, new BigDecimal("169.32")));
         invoiceChecker.checkInvoice(invoices.get(2).getId(), callContext, toBeChecked);
 
-
         toBeChecked = ImmutableList.<ExpectedInvoiceItemCheck>of(
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 6, 1), InvoiceItemType.RECURRING, new BigDecimal("137.76")),
                 new ExpectedInvoiceItemCheck(new LocalDate(2012, 5, 11), new LocalDate(2012, 5, 11), InvoiceItemType.CBA_ADJ, new BigDecimal("-137.76")));
         invoiceChecker.checkInvoice(invoices.get(3).getId(), callContext, toBeChecked);
 
-
     }
 
 }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
index 690e132..6fe6a54 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/integration/TestTagApi.java
@@ -36,7 +36,6 @@ import com.ning.billing.util.tag.Tag;
 import com.ning.billing.util.tag.TagDefinition;
 
 import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertTrue;
 
 public class TestTagApi extends TestIntegrationBase {
 
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/lifecycle/TestLifecycle.java b/beatrix/src/test/java/com/ning/billing/beatrix/lifecycle/TestLifecycle.java
index 6f2ee55..75c1229 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/lifecycle/TestLifecycle.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/lifecycle/TestLifecycle.java
@@ -34,6 +34,7 @@ import com.google.inject.Injector;
 import com.google.inject.Stage;
 
 public class TestLifecycle extends BeatrixTestSuite {
+
     private static final Logger log = LoggerFactory.getLogger(TestLifecycle.class);
 
     private Service1 s1;
@@ -42,6 +43,7 @@ public class TestLifecycle extends BeatrixTestSuite {
     private DefaultLifecycle lifecycle;
 
     public static class ServiceBase {
+
         private int count = 0;
 
         public ServiceBase() {
@@ -66,6 +68,7 @@ public class TestLifecycle extends BeatrixTestSuite {
     }
 
     public static class Service1 extends ServiceBase implements TestService1Interface {
+
         @LifecycleHandlerType(LifecycleLevel.INIT_BUS)
         public void initBus() {
             log.info("Service1 : got INIT_BUS");
@@ -95,6 +98,7 @@ public class TestLifecycle extends BeatrixTestSuite {
     }
 
     public static class Service2 extends ServiceBase implements TestService2Interface {
+
         @LifecycleHandlerType(LifecycleLevel.LOAD_CATALOG)
         public void loadCatalog() {
             log.info("Service2 : got LOAD_CATALOG");
@@ -157,6 +161,7 @@ public class TestLifecycle extends BeatrixTestSuite {
     }
 
     public static class LifecycleNoWarn extends DefaultLifecycle {
+
         @Inject
         public LifecycleNoWarn(final Injector injector) {
             super(injector);
@@ -168,6 +173,7 @@ public class TestLifecycle extends BeatrixTestSuite {
     }
 
     public static class TestLifecycleModule extends AbstractModule {
+
         @Override
         protected void configure() {
             bind(DefaultLifecycle.class).to(LifecycleNoWarn.class).asEagerSingleton();
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/osgi/SetupBundleWithAssertion.java b/beatrix/src/test/java/com/ning/billing/beatrix/osgi/SetupBundleWithAssertion.java
index 4ccae09..14c5856 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/osgi/SetupBundleWithAssertion.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/osgi/SetupBundleWithAssertion.java
@@ -57,7 +57,6 @@ public class SetupBundleWithAssertion {
         this.rootInstallDir = new File(config.getRootInstallationDir());
     }
 
-
     public void setupJrubyBundle() {
 
         try {
@@ -67,7 +66,6 @@ public class SetupBundleWithAssertion {
             final URL resourceUrl = Resources.getResource(bundleName);
             final File unzippedRubyPlugin = unGzip(new File(resourceUrl.getFile()), rootInstallDir);
 
-
             final StringBuilder tmp = new StringBuilder(rootInstallDir.getAbsolutePath());
             tmp.append("/plugins/")
                .append(PluginLanguage.RUBY.toString().toLowerCase());
@@ -155,7 +153,6 @@ public class SetupBundleWithAssertion {
         }
     }
 
-
     private void installJrubyJar() throws IOException {
 
         final String resourceName = JRUBY_BUNDLE_RESOURCE + "-" + killbillVersion + ".jar";
@@ -171,7 +168,6 @@ public class SetupBundleWithAssertion {
         ByteStreams.copy(new FileInputStream(rubyJarInput), new FileOutputStream(rubyJarDestination));
     }
 
-
     private PluginJavaConfig extractJavaBundleTestResource() {
 
         final String resourceName = bundleName + "-" + killbillVersion + "-jar-with-dependencies.jar";
@@ -235,7 +231,6 @@ public class SetupBundleWithAssertion {
         };
     }
 
-
     private static void unTar(final File inputFile, final File outputDir) throws IOException, ArchiveException {
 
         InputStream is = null;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
index f49a5c3..1099bf6 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/AuditChecker.java
@@ -35,15 +35,15 @@ import com.ning.billing.account.dao.AccountSqlDao;
 import com.ning.billing.entitlement.api.SubscriptionApi;
 import com.ning.billing.entitlement.api.SubscriptionApiException;
 import com.ning.billing.entitlement.api.SubscriptionBundle;
-import com.ning.billing.subscription.engine.dao.BundleSqlDao;
-import com.ning.billing.subscription.engine.dao.SubscriptionEventSqlDao;
-import com.ning.billing.subscription.engine.dao.SubscriptionSqlDao;
 import com.ning.billing.invoice.api.Invoice;
 import com.ning.billing.invoice.api.InvoiceItem;
 import com.ning.billing.invoice.dao.InvoiceItemSqlDao;
 import com.ning.billing.invoice.dao.InvoiceSqlDao;
 import com.ning.billing.payment.api.Payment;
 import com.ning.billing.payment.dao.PaymentSqlDao;
+import com.ning.billing.subscription.engine.dao.BundleSqlDao;
+import com.ning.billing.subscription.engine.dao.SubscriptionEventSqlDao;
+import com.ning.billing.subscription.engine.dao.SubscriptionSqlDao;
 import com.ning.billing.util.api.AuditLevel;
 import com.ning.billing.util.api.AuditUserApi;
 import com.ning.billing.util.audit.AuditLog;
@@ -59,7 +59,6 @@ import com.ning.billing.util.entity.Entity;
 import com.ning.billing.util.entity.dao.EntityModelDao;
 import com.ning.billing.util.entity.dao.EntitySqlDao;
 
-import com.google.common.collect.Lists;
 import com.google.inject.Inject;
 
 public class AuditChecker {
@@ -72,7 +71,6 @@ public class AuditChecker {
     private final InternalCallContextFactory callContextFactory;
     private final NonEntityDao nonEntityDao;
 
-
     @Inject
     public AuditChecker(final AuditUserApi auditUserApi, final IDBI dbi, final SubscriptionApi subscriptionApi, final InternalCallContextFactory callContextFactory, final NonEntityDao nonEntityDao) {
         this.auditUserApi = auditUserApi;
@@ -82,7 +80,6 @@ public class AuditChecker {
         this.nonEntityDao = nonEntityDao;
     }
 
-
     /**
      * ********************************************  ACCOUNT *******************************************************
      */
@@ -93,7 +90,6 @@ public class AuditChecker {
         checkAuditLog(ChangeType.UPDATE, context, result.getAccountAuditLogs().get(1), account.getId(), AccountSqlDao.class, true, true);
     }
 
-
     public void checkPaymentCreated(final Payment payment, final CallContext context) {
         AuditLogsForPayments result = getAuditLogsForPayment(payment, context);
         Assert.assertEquals(result.getPaymentsAuditLogs().size(), 1);
@@ -107,7 +103,6 @@ public class AuditChecker {
      * ********************************************  BUNDLE *******************************************************
      */
 
-
     // Pass the call callcontext used to create the bundle
     public void checkBundleCreated(final UUID bundleId, final CallContext context) {
         final AuditLogsForBundles auditLogsForBundles = getAuditLogsForBundle(bundleId, context);
@@ -153,8 +148,6 @@ public class AuditChecker {
         checkAuditLog(ChangeType.INSERT, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(0), subscriptionEventId, SubscriptionEventSqlDao.class, false, true);
     }
 
-
-
     // Pass the call callcontext used to update the subscription event
     public void checkSubscriptionEventUpdated(final UUID bundleId, final UUID subscriptionEventId, final CallContext context) {
         final AuditLogsForBundles auditLogsForBundles = getAuditLogsForBundle(bundleId, context);
@@ -162,7 +155,6 @@ public class AuditChecker {
         checkAuditLog(ChangeType.UPDATE, context, auditLogsForBundles.getSubscriptionEventsAuditLogs().get(subscriptionEventId).get(1), subscriptionEventId, SubscriptionEventSqlDao.class, false, true);
     }
 
-
     /**
      * ********************************************  PAYMENT *******************************************************
      */
@@ -191,7 +183,6 @@ public class AuditChecker {
         }
     }
 
-
     private AuditLogsForBundles getAuditLogsForBundle(final UUID bundleId, final CallContext context) {
         try {
             final SubscriptionBundle bundle = subscriptionApi.getSubscriptionBundle(bundleId, context);
@@ -206,12 +197,10 @@ public class AuditChecker {
         return auditUserApi.getAuditLogsForInvoices(Collections.singletonList(invoice), AuditLevel.FULL, context);
     }
 
-
     private void checkAuditLog(final ChangeType insert, final AuditLog auditLog) {
         checkAuditLog(insert, null, auditLog, null, EntitySqlDao.class, false, false);
     }
 
-
     private <T extends EntitySqlDao<M, E>, M extends EntityModelDao<E>, E extends Entity> void checkAuditLog(final ChangeType changeType, @Nullable final CallContext context, final AuditLog auditLog, final UUID entityId, Class<T> sqlDao,
                                                                                                              boolean useHistory, boolean checkContext) {
         Assert.assertEquals(auditLog.getChangeType(), changeType);
@@ -228,10 +217,8 @@ public class AuditChecker {
 
     }
 
-
     private <T extends EntitySqlDao<M, E>, M extends EntityModelDao<E>, E extends Entity> M extractEntityModelFromEntityWithTargetRecordId(final UUID entityId, final UUID auditLogId, final Class<T> sqlDao, final CallContext context, final boolean useHistory) {
 
-
         final M modelDaoThatGivesMeTableName = dbi.onDemand(sqlDao).getById(entityId.toString(), callContextFactory.createInternalCallContext(context));
 
         Integer targetRecordId = dbi.withHandle(new HandleCallback<Integer>() {
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
index 863a1af..d36682c 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/InvoiceChecker.java
@@ -152,7 +152,6 @@ public class InvoiceChecker {
         private final InvoiceItemType type;
         private final BigDecimal Amount;
 
-
         public ExpectedInvoiceItemCheck(final InvoiceItemType type, final BigDecimal amount) {
             this.checkDates = false;
             this.type = type;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/PaymentChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/PaymentChecker.java
index 2763aed..ec0d05a 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/PaymentChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/PaymentChecker.java
@@ -16,7 +16,6 @@
 
 package com.ning.billing.beatrix.util;
 
-
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.UUID;
@@ -39,7 +38,6 @@ public class PaymentChecker {
 
     private static final Logger log = LoggerFactory.getLogger(PaymentChecker.class);
 
-
     private final PaymentApi paymentApi;
     private final AuditChecker auditChecker;
 
@@ -64,7 +62,7 @@ public class PaymentChecker {
     private void checkPayment(final UUID accountId, final Payment payment, final CallContext context, final ExpectedPaymentCheck expected) {
         Assert.assertEquals(payment.getAccountId(), accountId);
         Assert.assertTrue(payment.getAmount().compareTo(expected.getAmount()) == 0);
-        Assert.assertEquals(payment.getPaymentStatus(),expected.getStatus());
+        Assert.assertEquals(payment.getPaymentStatus(), expected.getStatus());
         Assert.assertEquals(payment.getInvoiceId(), expected.getInvoiceId());
         Assert.assertEquals(payment.getCurrency(), expected.getCurrency());
         auditChecker.checkPaymentCreated(payment, context);
@@ -73,7 +71,7 @@ public class PaymentChecker {
     private void checkPaymentNoAuditForRuntimeException(final UUID accountId, final Payment payment, final CallContext context, final ExpectedPaymentCheck expected) {
         Assert.assertEquals(payment.getAccountId(), accountId);
         Assert.assertTrue(payment.getAmount().compareTo(expected.getAmount()) == 0);
-        Assert.assertEquals(payment.getPaymentStatus(),expected.getStatus());
+        Assert.assertEquals(payment.getPaymentStatus(), expected.getStatus());
         Assert.assertEquals(payment.getInvoiceId(), expected.getInvoiceId());
         Assert.assertEquals(payment.getCurrency(), expected.getCurrency());
     }
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/RefundChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/RefundChecker.java
index 93ee40c..28942e6 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/RefundChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/RefundChecker.java
@@ -30,8 +30,8 @@ import org.testng.Assert;
 
 import com.ning.billing.catalog.api.Currency;
 import com.ning.billing.invoice.api.InvoicePayment;
-import com.ning.billing.invoice.api.InvoicePaymentType;
 import com.ning.billing.invoice.api.InvoicePaymentApi;
+import com.ning.billing.invoice.api.InvoicePaymentType;
 import com.ning.billing.invoice.api.InvoiceUserApi;
 import com.ning.billing.payment.api.PaymentApi;
 import com.ning.billing.payment.api.PaymentApiException;
@@ -46,7 +46,6 @@ public class RefundChecker {
 
     private static final Logger log = LoggerFactory.getLogger(RefundChecker.class);
 
-
     private final PaymentApi paymentApi;
     private final InvoicePaymentApi invoicePaymentApi;
     private final AuditChecker auditChecker;
@@ -60,12 +59,12 @@ public class RefundChecker {
         this.invoiceUserApi = invoiceApi;
     }
 
-    public Refund checkRefund(final UUID paymentId,  final CallContext context, ExpectedRefundCheck expected) throws PaymentApiException {
+    public Refund checkRefund(final UUID paymentId, final CallContext context, ExpectedRefundCheck expected) throws PaymentApiException {
 
         final List<Refund> refunds = paymentApi.getPaymentRefunds(paymentId, context);
         Assert.assertEquals(refunds.size(), 1);
 
-        final InvoicePayment refundInvoicePayment = getInvoicePaymentEntry(paymentId, InvoicePaymentType.REFUND , context);
+        final InvoicePayment refundInvoicePayment = getInvoicePaymentEntry(paymentId, InvoicePaymentType.REFUND, context);
         final InvoicePayment invoicePayment = getInvoicePaymentEntry(paymentId, InvoicePaymentType.ATTEMPT, context);
 
         final Refund refund = refunds.get(0);
@@ -84,9 +83,8 @@ public class RefundChecker {
         return refund;
     }
 
-
     private InvoicePayment getInvoicePaymentEntry(final UUID paymentId, final InvoicePaymentType type, final CallContext context) {
-        final List<InvoicePayment> invoicePayments =  invoicePaymentApi.getInvoicePayments(paymentId, context);
+        final List<InvoicePayment> invoicePayments = invoicePaymentApi.getInvoicePayments(paymentId, context);
         final Collection<InvoicePayment> refundInvoicePayments = Collections2.filter(invoicePayments, new Predicate<InvoicePayment>() {
             @Override
             public boolean apply(@Nullable final InvoicePayment invoicePayment) {
@@ -97,7 +95,6 @@ public class RefundChecker {
         return refundInvoicePayments.iterator().next();
     }
 
-
     public static class ExpectedRefundCheck {
 
         private final UUID paymentId;
diff --git a/beatrix/src/test/java/com/ning/billing/beatrix/util/SubscriptionChecker.java b/beatrix/src/test/java/com/ning/billing/beatrix/util/SubscriptionChecker.java
index 43b3e57..2dcc679 100644
--- a/beatrix/src/test/java/com/ning/billing/beatrix/util/SubscriptionChecker.java
+++ b/beatrix/src/test/java/com/ning/billing/beatrix/util/SubscriptionChecker.java
@@ -25,18 +25,17 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.testng.Assert;
 
+import com.ning.billing.callcontext.InternalCallContext;
+import com.ning.billing.callcontext.InternalTenantContext;
 import com.ning.billing.subscription.api.SubscriptionBase;
+import com.ning.billing.subscription.api.SubscriptionBaseInternalApi;
 import com.ning.billing.subscription.api.user.SubscriptionBaseApiException;
 import com.ning.billing.subscription.api.user.SubscriptionBaseBundle;
 import com.ning.billing.subscription.api.user.SubscriptionBaseTransition;
 import com.ning.billing.subscription.api.user.SubscriptionBaseTransitionData;
-import com.ning.billing.callcontext.InternalCallContext;
-import com.ning.billing.callcontext.InternalTenantContext;
-import com.ning.billing.subscription.api.SubscriptionBaseInternalApi;
 
 public class SubscriptionChecker {
 
-
     private static final Logger log = LoggerFactory.getLogger(SubscriptionChecker.class);
 
     private final SubscriptionBaseInternalApi subscriptionApi;
diff --git a/beatrix/src/test/resources/catalogSample.xml b/beatrix/src/test/resources/catalogSample.xml
index 9cdf94a..8aa1247 100644
--- a/beatrix/src/test/resources/catalogSample.xml
+++ b/beatrix/src/test/resources/catalogSample.xml
@@ -24,872 +24,873 @@
 	and a one off (refurbish-maintenance) Phan with more than 2 phase (gunclub 
 	discount plans) Use Cases to do: Tiered Add On Riskfree period -->
 <catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:noNamespaceSchemaLocation="CatalogSchema.xsd ">
+         xsi:noNamespaceSchemaLocation="CatalogSchema.xsd ">
 
-	<effectiveDate>2011-01-01T00:00:00+00:00</effectiveDate>
-	<catalogName>Firearms</catalogName>
+    <effectiveDate>2011-01-01T00:00:00+00:00</effectiveDate>
+    <catalogName>Firearms</catalogName>
 
-	<currencies>
-		<currency>USD</currency>
-		<currency>EUR</currency>
-		<currency>GBP</currency>
-	</currencies>
+    <currencies>
+        <currency>USD</currency>
+        <currency>EUR</currency>
+        <currency>GBP</currency>
+    </currencies>
 
-	<products>
-		<product name="Blowdart">
-			<category>BASE</category>
-		</product>
-		<product name="Pistol">
-			<category>BASE</category>
-		</product>
-		<product name="Shotgun">
-			<category>BASE</category>
-			<available>
-				<addonProduct>Telescopic-Scope</addonProduct>
-				<addonProduct>Laser-Scope</addonProduct>
-			</available>
-		</product>
-		<product name="Assault-Rifle">
-			<category>BASE</category>
-			<included>
-				<addonProduct>Telescopic-Scope</addonProduct>
-			</included>
-			<available>
-				<addonProduct>Laser-Scope</addonProduct>
-			</available>
-		</product>
-		<product name="Telescopic-Scope">
-			<category>ADD_ON</category>
-		</product>
-		<product name="Laser-Scope">
-			<category>ADD_ON</category>
-		</product>
-		<product name="Holster">
-			<category>ADD_ON</category>
-		</product>
-		<product name="Extra-Ammo">
-			<category>ADD_ON</category>
-		</product>
-		<product name="Refurbish-Maintenance">
-			<category>ADD_ON</category>
-		</product>
-	</products>
+    <products>
+        <product name="Blowdart">
+            <category>BASE</category>
+        </product>
+        <product name="Pistol">
+            <category>BASE</category>
+        </product>
+        <product name="Shotgun">
+            <category>BASE</category>
+            <available>
+                <addonProduct>Telescopic-Scope</addonProduct>
+                <addonProduct>Laser-Scope</addonProduct>
+            </available>
+        </product>
+        <product name="Assault-Rifle">
+            <category>BASE</category>
+            <included>
+                <addonProduct>Telescopic-Scope</addonProduct>
+            </included>
+            <available>
+                <addonProduct>Laser-Scope</addonProduct>
+            </available>
+        </product>
+        <product name="Telescopic-Scope">
+            <category>ADD_ON</category>
+        </product>
+        <product name="Laser-Scope">
+            <category>ADD_ON</category>
+        </product>
+        <product name="Holster">
+            <category>ADD_ON</category>
+        </product>
+        <product name="Extra-Ammo">
+            <category>ADD_ON</category>
+        </product>
+        <product name="Refurbish-Maintenance">
+            <category>ADD_ON</category>
+        </product>
+    </products>
 
-	<rules>
-		<changePolicy>
-			<changePolicyCase>
-				<phaseType>TRIAL</phaseType>
-				<policy>IMMEDIATE</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<toProduct>Assault-Rifle</toProduct>
-				<policy>IMMEDIATE</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<fromProduct>Pistol</fromProduct>
-				<toProduct>Shotgun</toProduct>
-				<policy>IMMEDIATE</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<toPriceList>rescue</toPriceList>
-				<policy>END_OF_TERM</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<fromBillingPeriod>MONTHLY</fromBillingPeriod>
-				<toBillingPeriod>ANNUAL</toBillingPeriod>
-				<policy>IMMEDIATE</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<fromBillingPeriod>ANNUAL</fromBillingPeriod>
-				<toBillingPeriod>MONTHLY</toBillingPeriod>
-				<policy>END_OF_TERM</policy>
-			</changePolicyCase>
-			<changePolicyCase>
-				<policy>END_OF_TERM</policy>
-			</changePolicyCase>
-		</changePolicy>
-		<changeAlignment>
-			<changeAlignmentCase>
-				<toPriceList>rescue</toPriceList>
-				<alignment>CHANGE_OF_PLAN</alignment>
-			</changeAlignmentCase>
-			<changeAlignmentCase>
-				<fromPriceList>rescue</fromPriceList>
-				<toPriceList>rescue</toPriceList>
-				<alignment>CHANGE_OF_PRICELIST</alignment>
-			</changeAlignmentCase>
-			<changeAlignmentCase>
-				<alignment>START_OF_SUBSCRIPTION</alignment>
-			</changeAlignmentCase>
-		</changeAlignment>
-		<cancelPolicy>
-			<cancelPolicyCase>
-				<phaseType>TRIAL</phaseType>
-				<policy>IMMEDIATE</policy>
-			</cancelPolicyCase>
-			<cancelPolicyCase>
-				<policy>END_OF_TERM</policy>
-			</cancelPolicyCase>
-		</cancelPolicy>
-		<createAlignment>
-			<createAlignmentCase>
-				<product>Laser-Scope</product>
-				<alignment>START_OF_SUBSCRIPTION</alignment>
-			</createAlignmentCase>
-			<createAlignmentCase>
-				<alignment>START_OF_BUNDLE</alignment>
-			</createAlignmentCase>
-		</createAlignment>
-		<billingAlignment>
-			<billingAlignmentCase>
-				<productCategory>ADD_ON</productCategory>
-				<alignment>BUNDLE</alignment>
-			</billingAlignmentCase>
-			<billingAlignmentCase>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<alignment>SUBSCRIPTION</alignment>
-			</billingAlignmentCase>
-			<billingAlignmentCase>
-				<alignment>ACCOUNT</alignment>
-			</billingAlignmentCase>
-		</billingAlignment>
-		<priceList>
-			<priceListCase>
-				<fromPriceList>rescue</fromPriceList>
-				<toPriceList>DEFAULT</toPriceList>
-			</priceListCase>
-		</priceList>
-	</rules>
+    <rules>
+        <changePolicy>
+            <changePolicyCase>
+                <phaseType>TRIAL</phaseType>
+                <policy>IMMEDIATE</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <toProduct>Assault-Rifle</toProduct>
+                <policy>IMMEDIATE</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <fromProduct>Pistol</fromProduct>
+                <toProduct>Shotgun</toProduct>
+                <policy>IMMEDIATE</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <toPriceList>rescue</toPriceList>
+                <policy>END_OF_TERM</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <fromBillingPeriod>MONTHLY</fromBillingPeriod>
+                <toBillingPeriod>ANNUAL</toBillingPeriod>
+                <policy>IMMEDIATE</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <fromBillingPeriod>ANNUAL</fromBillingPeriod>
+                <toBillingPeriod>MONTHLY</toBillingPeriod>
+                <policy>END_OF_TERM</policy>
+            </changePolicyCase>
+            <changePolicyCase>
+                <policy>END_OF_TERM</policy>
+            </changePolicyCase>
+        </changePolicy>
+        <changeAlignment>
+            <changeAlignmentCase>
+                <toPriceList>rescue</toPriceList>
+                <alignment>CHANGE_OF_PLAN</alignment>
+            </changeAlignmentCase>
+            <changeAlignmentCase>
+                <fromPriceList>rescue</fromPriceList>
+                <toPriceList>rescue</toPriceList>
+                <alignment>CHANGE_OF_PRICELIST</alignment>
+            </changeAlignmentCase>
+            <changeAlignmentCase>
+                <alignment>START_OF_SUBSCRIPTION</alignment>
+            </changeAlignmentCase>
+        </changeAlignment>
+        <cancelPolicy>
+            <cancelPolicyCase>
+                <phaseType>TRIAL</phaseType>
+                <policy>IMMEDIATE</policy>
+            </cancelPolicyCase>
+            <cancelPolicyCase>
+                <policy>END_OF_TERM</policy>
+            </cancelPolicyCase>
+        </cancelPolicy>
+        <createAlignment>
+            <createAlignmentCase>
+                <product>Laser-Scope</product>
+                <alignment>START_OF_SUBSCRIPTION</alignment>
+            </createAlignmentCase>
+            <createAlignmentCase>
+                <alignment>START_OF_BUNDLE</alignment>
+            </createAlignmentCase>
+        </createAlignment>
+        <billingAlignment>
+            <billingAlignmentCase>
+                <productCategory>ADD_ON</productCategory>
+                <alignment>BUNDLE</alignment>
+            </billingAlignmentCase>
+            <billingAlignmentCase>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <alignment>SUBSCRIPTION</alignment>
+            </billingAlignmentCase>
+            <billingAlignmentCase>
+                <alignment>ACCOUNT</alignment>
+            </billingAlignmentCase>
+        </billingAlignment>
+        <priceList>
+            <priceListCase>
+                <fromPriceList>rescue</fromPriceList>
+                <toPriceList>DEFAULT</toPriceList>
+            </priceListCase>
+        </priceList>
+    </rules>
 
-	<plans>
-		<plan name="blowdart-monthly">
-			<product>Blowdart</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>6</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>9.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>9.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>9.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>29.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>29.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>29.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
+    <plans>
+        <plan name="blowdart-monthly">
+            <product>Blowdart</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>6</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>9.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>9.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>9.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>29.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>29.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>29.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
 
-		<plan name="pistol-monthly">
-			<product>Pistol</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice> <!-- empty price implies $0 -->
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>GBP</currency>
-						<value>29.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>29.95</value>
-					</price>
-					<price>
-						<currency>USD</currency>
-						<value>29.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="shotgun-monthly">
-			<product>Shotgun</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice></fixedPrice>
-					<!-- no price implies $0 -->
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-					<number>-1</number>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>249.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>149.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>169.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="assault-rifle-monthly">
-			<product>Assault-Rifle</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>599.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>349.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>399.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="pistol-annual">
-			<product>Pistol</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>199.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="shotgun-annual">
-			<product>Shotgun</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>2399.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>1499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>1699.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="assault-rifle-annual">
-			<product>Assault-Rifle</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>5999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>3499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>3999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="pistol-annual-gunclub-discount">
-			<product>Pistol</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>6</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>9.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>9.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>9.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>199.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="shotgun-annual-gunclub-discount">
-			<product>Shotgun</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>6</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>19.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>49.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>69.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>2399.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>1499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>1699.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="assault-rifle-annual-gunclub-discount">
-			<product>Assault-Rifle</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>6</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>99.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>99.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>99.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>5999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>3499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>3999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="laser-scope-monthly">
-			<product>Laser-Scope</product>
-			<initialPhases>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>1</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>999.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>499.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>999.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>1999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>1499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>1999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="telescopic-scope-monthly">
-			<product>Telescopic-Scope</product>
-			<initialPhases>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>MONTHS</unit>
-						<number>1</number>
-					</duration>
-					<billingPeriod>MONTHLY</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>399.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>299.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>399.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="extra-ammo-monthly">
-			<product>Extra-Ammo</product>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-			<plansAllowedInBundle>-1</plansAllowedInBundle> <!-- arbitrary number of these (multipack) -->
-		</plan>
-		<plan name="holster-monthly-regular">
-			<product>Holster</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>199.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="holster-monthly-special">
-			<product>Holster</product>
-			<initialPhases>
-				<phase type="TRIAL">
-					<duration>
-						<unit>DAYS</unit>
-						<number>30</number>
-					</duration>
-					<billingPeriod>NO_BILLING_PERIOD</billingPeriod>
-					<fixedPrice>
-					</fixedPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>199.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="assault-rifle-annual-rescue">
-			<product>Assault-Rifle</product>
-			<initialPhases>
-				<phase type="DISCOUNT">
-					<duration>
-						<unit>YEARS</unit>
-						<number>1</number>
-					</duration>
-					<billingPeriod>ANNUAL</billingPeriod>
-					<recurringPrice>
-						<price>
-							<currency>USD</currency>
-							<value>5999.95</value>
-						</price>
-						<price>
-							<currency>EUR</currency>
-							<value>3499.95</value>
-						</price>
-						<price>
-							<currency>GBP</currency>
-							<value>3999.95</value>
-						</price>
-					</recurringPrice>
-				</phase>
-			</initialPhases>
-			<finalPhase type="EVERGREEN">
-				<duration>
-					<unit>UNLIMITED</unit>
-				</duration>
-				<billingPeriod>ANNUAL</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>5999.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>3499.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>3999.95</value>
-					</price>
-				</recurringPrice>
-			</finalPhase>
-		</plan>
-		<plan name="refurbish-maintenance">
-			<product>Refurbish-Maintenance</product>
-			<finalPhase type="FIXEDTERM">
-				<duration>
-					<unit>MONTHS</unit>
-					<number>12</number>
-				</duration>
-				<billingPeriod>MONTHLY</billingPeriod>
-				<recurringPrice>
-					<price>
-						<currency>USD</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>199.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>199.95</value>
-					</price>
-				</recurringPrice>
-				<fixedPrice>
-					<price>
-						<currency>USD</currency>
-						<value>599.95</value>
-					</price>
-					<price>
-						<currency>EUR</currency>
-						<value>599.95</value>
-					</price>
-					<price>
-						<currency>GBP</currency>
-						<value>599.95</value>
-					</price>
-				</fixedPrice>
-			</finalPhase>
-		</plan>
-	</plans>
-	<priceLists>
-		<defaultPriceList name="DEFAULT">
-			<plans>
-			    <plan>blowdart-monthly</plan>
-				<plan>pistol-monthly</plan>
-				<plan>shotgun-monthly</plan>
-				<plan>assault-rifle-monthly</plan>
-				<plan>pistol-annual</plan>
-				<plan>shotgun-annual</plan>
-				<plan>assault-rifle-annual</plan>
-				<plan>laser-scope-monthly</plan>
-				<plan>telescopic-scope-monthly</plan>
-				<plan>extra-ammo-monthly</plan>
-				<plan>holster-monthly-regular</plan>
-				<plan>refurbish-maintenance</plan>
-			</plans>
-		</defaultPriceList>
-		<childPriceList name="gunclubDiscount">
-			<plans>
-				<plan>pistol-monthly</plan>
-				<plan>shotgun-monthly</plan>
-				<plan>assault-rifle-monthly</plan>
-				<plan>pistol-annual-gunclub-discount</plan>
-				<plan>shotgun-annual-gunclub-discount</plan>
-				<plan>assault-rifle-annual-gunclub-discount</plan>
-				<plan>holster-monthly-special</plan>
-			</plans>
-		</childPriceList>
-		<childPriceList name="rescue">
-			<plans>
-				<plan>assault-rifle-annual-rescue</plan>
-			</plans>
-		</childPriceList>
-	</priceLists>
+        <plan name="pistol-monthly">
+            <product>Pistol</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice> <!-- empty price implies $0 -->
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>29.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>29.95</value>
+                    </price>
+                    <price>
+                        <currency>USD</currency>
+                        <value>29.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="shotgun-monthly">
+            <product>Shotgun</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice></fixedPrice>
+                    <!-- no price implies $0 -->
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                    <number>-1</number>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>249.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>149.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>169.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="assault-rifle-monthly">
+            <product>Assault-Rifle</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>599.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>349.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>399.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="pistol-annual">
+            <product>Pistol</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>199.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="shotgun-annual">
+            <product>Shotgun</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>2399.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>1499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>1699.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="assault-rifle-annual">
+            <product>Assault-Rifle</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>5999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>3499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>3999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="pistol-annual-gunclub-discount">
+            <product>Pistol</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>6</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>9.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>9.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>9.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>199.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="shotgun-annual-gunclub-discount">
+            <product>Shotgun</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>6</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>19.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>49.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>69.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>2399.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>1499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>1699.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="assault-rifle-annual-gunclub-discount">
+            <product>Assault-Rifle</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>6</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>99.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>99.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>99.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>5999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>3499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>3999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="laser-scope-monthly">
+            <product>Laser-Scope</product>
+            <initialPhases>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>1</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>999.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>499.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>999.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>1999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>1499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>1999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="telescopic-scope-monthly">
+            <product>Telescopic-Scope</product>
+            <initialPhases>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>MONTHS</unit>
+                        <number>1</number>
+                    </duration>
+                    <billingPeriod>MONTHLY</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>399.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>299.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>399.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="extra-ammo-monthly">
+            <product>Extra-Ammo</product>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+            <plansAllowedInBundle>-1</plansAllowedInBundle>
+            <!-- arbitrary number of these (multipack) -->
+        </plan>
+        <plan name="holster-monthly-regular">
+            <product>Holster</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>199.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="holster-monthly-special">
+            <product>Holster</product>
+            <initialPhases>
+                <phase type="TRIAL">
+                    <duration>
+                        <unit>DAYS</unit>
+                        <number>30</number>
+                    </duration>
+                    <billingPeriod>NO_BILLING_PERIOD</billingPeriod>
+                    <fixedPrice>
+                    </fixedPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>199.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="assault-rifle-annual-rescue">
+            <product>Assault-Rifle</product>
+            <initialPhases>
+                <phase type="DISCOUNT">
+                    <duration>
+                        <unit>YEARS</unit>
+                        <number>1</number>
+                    </duration>
+                    <billingPeriod>ANNUAL</billingPeriod>
+                    <recurringPrice>
+                        <price>
+                            <currency>USD</currency>
+                            <value>5999.95</value>
+                        </price>
+                        <price>
+                            <currency>EUR</currency>
+                            <value>3499.95</value>
+                        </price>
+                        <price>
+                            <currency>GBP</currency>
+                            <value>3999.95</value>
+                        </price>
+                    </recurringPrice>
+                </phase>
+            </initialPhases>
+            <finalPhase type="EVERGREEN">
+                <duration>
+                    <unit>UNLIMITED</unit>
+                </duration>
+                <billingPeriod>ANNUAL</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>5999.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>3499.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>3999.95</value>
+                    </price>
+                </recurringPrice>
+            </finalPhase>
+        </plan>
+        <plan name="refurbish-maintenance">
+            <product>Refurbish-Maintenance</product>
+            <finalPhase type="FIXEDTERM">
+                <duration>
+                    <unit>MONTHS</unit>
+                    <number>12</number>
+                </duration>
+                <billingPeriod>MONTHLY</billingPeriod>
+                <recurringPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>199.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>199.95</value>
+                    </price>
+                </recurringPrice>
+                <fixedPrice>
+                    <price>
+                        <currency>USD</currency>
+                        <value>599.95</value>
+                    </price>
+                    <price>
+                        <currency>EUR</currency>
+                        <value>599.95</value>
+                    </price>
+                    <price>
+                        <currency>GBP</currency>
+                        <value>599.95</value>
+                    </price>
+                </fixedPrice>
+            </finalPhase>
+        </plan>
+    </plans>
+    <priceLists>
+        <defaultPriceList name="DEFAULT">
+            <plans>
+                <plan>blowdart-monthly</plan>
+                <plan>pistol-monthly</plan>
+                <plan>shotgun-monthly</plan>
+                <plan>assault-rifle-monthly</plan>
+                <plan>pistol-annual</plan>
+                <plan>shotgun-annual</plan>
+                <plan>assault-rifle-annual</plan>
+                <plan>laser-scope-monthly</plan>
+                <plan>telescopic-scope-monthly</plan>
+                <plan>extra-ammo-monthly</plan>
+                <plan>holster-monthly-regular</plan>
+                <plan>refurbish-maintenance</plan>
+            </plans>
+        </defaultPriceList>
+        <childPriceList name="gunclubDiscount">
+            <plans>
+                <plan>pistol-monthly</plan>
+                <plan>shotgun-monthly</plan>
+                <plan>assault-rifle-monthly</plan>
+                <plan>pistol-annual-gunclub-discount</plan>
+                <plan>shotgun-annual-gunclub-discount</plan>
+                <plan>assault-rifle-annual-gunclub-discount</plan>
+                <plan>holster-monthly-special</plan>
+            </plans>
+        </childPriceList>
+        <childPriceList name="rescue">
+            <plans>
+                <plan>assault-rifle-annual-rescue</plan>
+            </plans>
+        </childPriceList>
+    </priceLists>
 
 </catalog>