killbill-uncached
Changes
payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentInfoPlugin.java 6(+2 -4)
payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentMethodPlugin.java 4(+2 -2)
Details
diff --git a/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModuleNoDB.java b/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModuleNoDB.java
index 14d2139..8946d1f 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModuleNoDB.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/glue/TestInvoiceModuleNoDB.java
@@ -21,6 +21,7 @@ import com.ning.billing.invoice.dao.InvoiceDao;
import com.ning.billing.invoice.dao.MockInvoiceDao;
import com.ning.billing.mock.glue.MockNonEntityDaoModule;
import com.ning.billing.util.bus.InMemoryBusModule;
+import com.ning.billing.util.glue.NonEntityDaoModule;
public class TestInvoiceModuleNoDB extends TestInvoiceModule {
diff --git a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
index d322910..b9c86e6 100644
--- a/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
+++ b/invoice/src/test/java/com/ning/billing/invoice/InvoiceTestSuiteNoDB.java
@@ -25,6 +25,7 @@ import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
+import com.ning.billing.GuicyKillbillTestSuiteNoDB;
import com.ning.billing.KillbillTestSuite;
import com.ning.billing.invoice.api.InvoiceMigrationApi;
import com.ning.billing.invoice.api.InvoicePaymentApi;
@@ -50,11 +51,10 @@ import com.google.inject.Injector;
import static org.testng.Assert.assertNotNull;
-public abstract class InvoiceTestSuiteNoDB extends KillbillTestSuite {
+public abstract class InvoiceTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
private static final Logger log = LoggerFactory.getLogger(InvoiceTestSuiteNoDB.class);
-
@Inject
protected InternalBus bus;
@Inject
diff --git a/payment/src/test/java/com/ning/billing/payment/api/TestEventJson.java b/payment/src/test/java/com/ning/billing/payment/api/TestEventJson.java
index 1fde26e..1cfdfdd 100644
--- a/payment/src/test/java/com/ning/billing/payment/api/TestEventJson.java
+++ b/payment/src/test/java/com/ning/billing/payment/api/TestEventJson.java
@@ -23,12 +23,12 @@ import org.joda.time.DateTime;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.payment.PaymentTestSuite;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
import com.ning.billing.util.events.PaymentErrorInternalEvent;
import com.ning.billing.util.events.PaymentInfoInternalEvent;
import com.ning.billing.util.jackson.ObjectMapper;
-public class TestEventJson extends PaymentTestSuite {
+public class TestEventJson extends PaymentTestSuiteNoDB {
private final ObjectMapper mapper = new ObjectMapper();
@Test(groups = "fast")
diff --git a/payment/src/test/java/com/ning/billing/payment/api/TestPaymentApi.java b/payment/src/test/java/com/ning/billing/payment/api/TestPaymentApi.java
index 27c1399..c833cdc 100644
--- a/payment/src/test/java/com/ning/billing/payment/api/TestPaymentApi.java
+++ b/payment/src/test/java/com/ning/billing/payment/api/TestPaymentApi.java
@@ -25,72 +25,42 @@ import org.joda.time.LocalDate;
import org.mockito.Mockito;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Guice;
import org.testng.annotations.Test;
import com.ning.billing.ErrorCode;
import com.ning.billing.account.api.Account;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.invoice.api.Invoice;
-import com.ning.billing.mock.glue.MockClockModule;
-import com.ning.billing.mock.glue.MockJunctionModule;
-import com.ning.billing.mock.glue.MockNonEntityDaoModule;
import com.ning.billing.payment.MockRecurringInvoiceItem;
-import com.ning.billing.payment.PaymentTestSuite;
-import com.ning.billing.payment.TestHelper;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
+import com.ning.billing.payment.TestPaymentHelper;
import com.ning.billing.payment.api.Payment.PaymentAttempt;
-import com.ning.billing.payment.glue.PaymentTestModuleWithMocks;
import com.ning.billing.payment.provider.DefaultNoOpPaymentMethodPlugin;
-import com.ning.billing.util.clock.Clock;
-import com.ning.billing.util.glue.CacheModule;
-import com.ning.billing.util.glue.CallContextModule;
-import com.ning.billing.util.glue.NonEntityDaoModule;
-import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcsapi.bus.InternalBus;
-import com.ning.billing.util.svcsapi.bus.InternalBus.EventBusException;
-
-import com.google.inject.Inject;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.assertTrue;
import static org.testng.Assert.fail;
-@Guice(modules = {PaymentTestModuleWithMocks.class, MockClockModule.class, MockJunctionModule.class, CacheModule.class, MockNonEntityDaoModule.class, CallContextModule.class})
-public class TestPaymentApi extends PaymentTestSuite {
- private static final Logger log = LoggerFactory.getLogger(TestPaymentApi.class);
+public class TestPaymentApi extends PaymentTestSuiteNoDB {
- @Inject
- private InternalBus eventBus;
- @Inject
- protected PaymentApi paymentApi;
- @Inject
- protected AccountInternalApi accountApi;
- @Inject
- protected TestHelper testHelper;
- @Inject
- protected Clock clock;
+ private static final Logger log = LoggerFactory.getLogger(TestPaymentApi.class);
private Account account;
@BeforeClass(groups = "fast")
- public void setupClass() throws Exception {
+ public void setup() throws Exception {
+ super.setup();
account = testHelper.createTestAccount("yoyo.yahoo.com", false);
}
@BeforeMethod(groups = "fast")
- public void setUp() throws Exception {
+ public void setupTest() throws Exception {
+ super.setupTest();
final PaymentMethodPlugin paymentMethodInfo = new DefaultNoOpPaymentMethodPlugin(UUID.randomUUID().toString(), true, null);
testHelper.addTestPaymentMethod(account, paymentMethodInfo);
- eventBus.start();
- }
-
- @AfterMethod(groups = "fast")
- public void tearDown() throws EventBusException {
- eventBus.stop();
}
@Test(groups = "fast")
@@ -181,7 +151,7 @@ public class TestPaymentApi extends PaymentTestSuite {
assertEquals(initDefaultMethod.getId(), account.getPaymentMethodId());
final PaymentMethodPlugin newPaymenrMethod = new DefaultNoOpPaymentMethodPlugin(UUID.randomUUID().toString(), true, null);
- final UUID newPaymentMethodId = paymentApi.addPaymentMethod(PaymentTestModuleWithMocks.PLUGIN_TEST_NAME, account, true, newPaymenrMethod, callContext);
+ final UUID newPaymentMethodId = paymentApi.addPaymentMethod(TestPaymentHelper.PLUGIN_TEST_NAME, account, true, newPaymenrMethod, callContext);
Mockito.when(account.getPaymentMethodId()).thenReturn(newPaymentMethodId);
methods = paymentApi.getPaymentMethods(account, false, callContext);
diff --git a/payment/src/test/java/com/ning/billing/payment/core/TestPaymentMethodProcessor.java b/payment/src/test/java/com/ning/billing/payment/core/TestPaymentMethodProcessor.java
index ce87305..18c0f5d 100644
--- a/payment/src/test/java/com/ning/billing/payment/core/TestPaymentMethodProcessor.java
+++ b/payment/src/test/java/com/ning/billing/payment/core/TestPaymentMethodProcessor.java
@@ -18,43 +18,17 @@ package com.ning.billing.payment.core;
import java.util.List;
import java.util.UUID;
-import java.util.concurrent.ExecutorService;
import org.mockito.Mockito;
import org.testng.Assert;
-import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
-import com.ning.billing.util.config.PaymentConfig;
-import com.ning.billing.payment.PaymentTestSuite;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
import com.ning.billing.payment.api.PaymentMethod;
-import com.ning.billing.payment.dao.MockPaymentDao;
-import com.ning.billing.payment.provider.DefaultPaymentProviderPluginRegistry;
import com.ning.billing.payment.provider.ExternalPaymentProviderPlugin;
-import com.ning.billing.util.clock.ClockMock;
-import com.ning.billing.util.globallocker.GlobalLocker;
-import com.ning.billing.util.svcapi.account.AccountInternalApi;
-import com.ning.billing.util.svcapi.tag.TagInternalApi;
-import com.ning.billing.util.svcsapi.bus.InternalBus;
-public class TestPaymentMethodProcessor extends PaymentTestSuite {
-
- private PaymentMethodProcessor processor;
-
- @BeforeMethod(groups = "fast")
- public void setUp() throws Exception {
- final DefaultPaymentProviderPluginRegistry pluginRegistry = new DefaultPaymentProviderPluginRegistry(Mockito.mock(PaymentConfig.class));
- pluginRegistry.register(new ExternalPaymentProviderPlugin(new ClockMock()), ExternalPaymentProviderPlugin.PLUGIN_NAME);
-
- final AccountInternalApi accountUserApi = Mockito.mock(AccountInternalApi.class);
- final InternalBus bus = Mockito.mock(InternalBus.class);
- final MockPaymentDao paymentDao = new MockPaymentDao();
- final GlobalLocker globalLocker = Mockito.mock(GlobalLocker.class);
- final ExecutorService executorService = Mockito.mock(ExecutorService.class);
- final TagInternalApi tagUserApi = Mockito.mock(TagInternalApi.class);
- processor = new PaymentMethodProcessor(pluginRegistry, accountUserApi, bus, paymentDao, tagUserApi, globalLocker, executorService);
- }
+public class TestPaymentMethodProcessor extends PaymentTestSuiteNoDB {
@Test(groups = "fast")
public void testGetExternalPaymentProviderPlugin() throws Exception {
@@ -63,12 +37,12 @@ public class TestPaymentMethodProcessor extends PaymentTestSuite {
Mockito.when(account.getId()).thenReturn(accountId);
Mockito.when(account.getExternalKey()).thenReturn(accountId.toString());
- Assert.assertEquals(processor.getPaymentMethods(account, false, internalCallContext).size(), 0);
+ Assert.assertEquals(paymentMethodProcessor.getPaymentMethods(account, false, internalCallContext).size(), 0);
// The first call should create the payment method
- final ExternalPaymentProviderPlugin providerPlugin = processor.getExternalPaymentProviderPlugin(account, internalCallContext);
+ final ExternalPaymentProviderPlugin providerPlugin = paymentMethodProcessor.getExternalPaymentProviderPlugin(account, internalCallContext);
Assert.assertEquals(providerPlugin.getName(), ExternalPaymentProviderPlugin.PLUGIN_NAME);
- final List<PaymentMethod> paymentMethods = processor.getPaymentMethods(account, false, internalCallContext);
+ final List<PaymentMethod> paymentMethods = paymentMethodProcessor.getPaymentMethods(account, false, internalCallContext);
Assert.assertEquals(paymentMethods.size(), 1);
Assert.assertEquals(paymentMethods.get(0).getPluginName(), ExternalPaymentProviderPlugin.PLUGIN_NAME);
Assert.assertEquals(paymentMethods.get(0).getAccountId(), account.getId());
@@ -76,10 +50,10 @@ public class TestPaymentMethodProcessor extends PaymentTestSuite {
// The succeeding calls should not create any other payment method
final UUID externalPaymentMethodId = paymentMethods.get(0).getId();
for (int i = 0; i < 50; i++) {
- final ExternalPaymentProviderPlugin foundProviderPlugin = processor.getExternalPaymentProviderPlugin(account, internalCallContext);
+ final ExternalPaymentProviderPlugin foundProviderPlugin = paymentMethodProcessor.getExternalPaymentProviderPlugin(account, internalCallContext);
Assert.assertEquals(foundProviderPlugin.getName(), ExternalPaymentProviderPlugin.PLUGIN_NAME);
- final List<PaymentMethod> foundPaymentMethods = processor.getPaymentMethods(account, false, internalCallContext);
+ final List<PaymentMethod> foundPaymentMethods = paymentMethodProcessor.getPaymentMethods(account, false, internalCallContext);
Assert.assertEquals(foundPaymentMethods.size(), 1);
Assert.assertEquals(foundPaymentMethods.get(0).getPluginName(), ExternalPaymentProviderPlugin.PLUGIN_NAME);
Assert.assertEquals(foundPaymentMethods.get(0).getAccountId(), account.getId());
diff --git a/payment/src/test/java/com/ning/billing/payment/dao/TestPaymentDao.java b/payment/src/test/java/com/ning/billing/payment/dao/TestPaymentDao.java
index a55e42b..7581025 100644
--- a/payment/src/test/java/com/ning/billing/payment/dao/TestPaymentDao.java
+++ b/payment/src/test/java/com/ning/billing/payment/dao/TestPaymentDao.java
@@ -48,32 +48,6 @@ import static org.testng.Assert.fail;
public class TestPaymentDao extends PaymentTestSuiteWithEmbeddedDB {
- private PaymentDao paymentDao;
- private DBTestingHelper helper;
- private IDBI dbi;
- private Clock clock;
- private CacheControllerDispatcher controllerDispatcher;
-
-
- @BeforeSuite(groups = "slow")
- public void setup() throws IOException {
- clock = new DefaultClock();
- controllerDispatcher = new CacheControllerDispatcher();
- setupDb();
- paymentDao = new DefaultPaymentDao(dbi, clock, controllerDispatcher, new DefaultNonEntityDao(dbi));
- }
-
- private void setupDb() {
- helper = KillbillTestSuiteWithEmbeddedDB.getDBTestingHelper();
- if (helper.isUsingLocalInstance()) {
- final DbiConfig config = new ConfigurationObjectFactory(System.getProperties()).build(DbiConfig.class);
- final DBIProvider provider = new DBIProvider(config);
- dbi = provider.get();
- } else {
- dbi = helper.getDBI();
- }
- }
-
@Test(groups = "slow")
public void testRefund() {
final UUID accountId = UUID.randomUUID();
diff --git a/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteNoDB.java b/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteNoDB.java
new file mode 100644
index 0000000..571fb2f
--- /dev/null
+++ b/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteNoDB.java
@@ -0,0 +1,111 @@
+/*
+ * Copyright 2010-2012 Ning, Inc.
+ *
+ * Ning licenses this file to you under the Apache License, version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+package com.ning.billing.payment;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.Properties;
+
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
+
+import com.ning.billing.GuicyKillbillTestSuiteNoDB;
+import com.ning.billing.payment.api.PaymentApi;
+import com.ning.billing.payment.core.PaymentMethodProcessor;
+import com.ning.billing.payment.core.PaymentProcessor;
+import com.ning.billing.payment.glue.TestPaymentModuleNoDB;
+import com.ning.billing.payment.provider.PaymentProviderPluginRegistry;
+import com.ning.billing.payment.retry.FailedPaymentRetryService;
+import com.ning.billing.payment.retry.PluginFailureRetryService;
+import com.ning.billing.util.config.PaymentConfig;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
+import com.ning.billing.util.svcsapi.bus.InternalBus;
+
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+
+import static org.testng.Assert.assertNotNull;
+
+public abstract class PaymentTestSuiteNoDB extends GuicyKillbillTestSuiteNoDB {
+
+ @Inject
+ protected PaymentConfig paymentConfig;
+ @Inject
+ protected PaymentProcessor paymentProcessor;
+ @Inject
+ protected PaymentMethodProcessor paymentMethodProcessor;
+ @Inject
+ protected InvoiceInternalApi invoiceApi;
+ @Inject
+ protected PaymentProviderPluginRegistry registry;
+ @Inject
+ protected FailedPaymentRetryService retryService;
+ @Inject
+ protected PluginFailureRetryService pluginRetryService;
+ @Inject
+ protected InternalBus eventBus;
+ @Inject
+ protected PaymentApi paymentApi;
+ @Inject
+ protected AccountInternalApi accountApi;
+ @Inject
+ protected TestPaymentHelper testHelper;
+
+
+
+ @BeforeClass(groups = "fast")
+ protected void setup() throws Exception {
+
+ loadSystemPropertiesFromClasspath("/resource.properties");
+
+ final Injector injector = Guice.createInjector(new TestPaymentModuleNoDB());
+ injector.injectMembers(this);
+ }
+
+ @BeforeMethod(groups = "fast")
+ public void setupTest() throws Exception {
+ eventBus.start();
+ }
+
+ @AfterMethod(groups = "fast")
+ public void cleanupTest()throws Exception {
+ eventBus.stop();
+ }
+
+
+
+ private void loadSystemPropertiesFromClasspath(final String resource) {
+ final URL url = PaymentTestSuiteNoDB.class.getResource(resource);
+ assertNotNull(url);
+
+ try {
+ final Properties properties = System.getProperties();
+ properties.load(url.openStream());
+
+ properties.setProperty("killbill.payment.provider.default", TestPaymentHelper.PLUGIN_TEST_NAME);
+ properties.setProperty("killbill.payment.engine.events.off", "false");
+
+ //configSource = new SimplePropertyConfigSource(properties);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+}
diff --git a/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteWithEmbeddedDB.java b/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteWithEmbeddedDB.java
index 50e82a6..bc3fef5 100644
--- a/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteWithEmbeddedDB.java
+++ b/payment/src/test/java/com/ning/billing/payment/PaymentTestSuiteWithEmbeddedDB.java
@@ -16,7 +16,91 @@
package com.ning.billing.payment;
-import com.ning.billing.KillbillTestSuiteWithEmbeddedDB;
+import java.io.IOException;
+import java.net.URL;
+import java.util.Properties;
-public abstract class PaymentTestSuiteWithEmbeddedDB extends KillbillTestSuiteWithEmbeddedDB {
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.BeforeMethod;
+
+import com.ning.billing.GuicyKillbillTestSuiteWithEmbeddedDB;
+import com.ning.billing.payment.api.PaymentApi;
+import com.ning.billing.payment.core.PaymentMethodProcessor;
+import com.ning.billing.payment.core.PaymentProcessor;
+import com.ning.billing.payment.dao.PaymentDao;
+import com.ning.billing.payment.glue.TestPaymentModuleWithEmbeddedDB;
+import com.ning.billing.payment.provider.PaymentProviderPluginRegistry;
+import com.ning.billing.payment.retry.FailedPaymentRetryService;
+import com.ning.billing.payment.retry.PluginFailureRetryService;
+import com.ning.billing.util.config.PaymentConfig;
+import com.ning.billing.util.svcapi.account.AccountInternalApi;
+import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
+import com.ning.billing.util.svcsapi.bus.InternalBus;
+
+import com.google.inject.Guice;
+import com.google.inject.Inject;
+import com.google.inject.Injector;
+
+import static org.testng.Assert.assertNotNull;
+
+public abstract class PaymentTestSuiteWithEmbeddedDB extends GuicyKillbillTestSuiteWithEmbeddedDB {
+
+ @Inject
+ protected PaymentConfig paymentConfig;
+ @Inject
+ protected PaymentProcessor paymentProcessor;
+ @Inject
+ protected PaymentMethodProcessor paymentMethodProcessor;
+ @Inject
+ protected InvoiceInternalApi invoiceApi;
+ @Inject
+ protected PaymentProviderPluginRegistry registry;
+ @Inject
+ protected FailedPaymentRetryService retryService;
+ @Inject
+ protected PluginFailureRetryService pluginRetryService;
+ @Inject
+ protected InternalBus eventBus;
+ @Inject
+ protected PaymentApi paymentApi;
+ @Inject
+ protected AccountInternalApi accountApi;
+ @Inject
+ protected PaymentDao paymentDao;
+ @Inject
+ protected TestPaymentHelper testHelper;
+
+ @BeforeClass(groups = "slow")
+ protected void setup() throws Exception {
+
+ loadSystemPropertiesFromClasspath("/resource.properties");
+
+ final Injector injector = Guice.createInjector(new TestPaymentModuleWithEmbeddedDB());
+ injector.injectMembers(this);
+ }
+
+ @BeforeMethod(groups = "slow")
+ public void setupTest() throws Exception {
+ eventBus.start();
+ }
+
+ @AfterMethod(groups = "slow")
+ public void cleanupTest()throws Exception {
+ eventBus.stop();
+ }
+
+
+
+ private void loadSystemPropertiesFromClasspath(final String resource) {
+ final URL url = PaymentTestSuiteWithEmbeddedDB.class.getResource(resource);
+ assertNotNull(url);
+
+ try {
+ final Properties properties = System.getProperties();
+ properties.load(url.openStream());
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
}
diff --git a/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentInfoPlugin.java b/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentInfoPlugin.java
index 158f30e..26a40b9 100644
--- a/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentInfoPlugin.java
+++ b/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentInfoPlugin.java
@@ -23,14 +23,12 @@ import org.joda.time.DateTime;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.payment.PaymentTestSuite;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
import com.ning.billing.payment.plugin.api.PaymentInfoPlugin.PaymentPluginStatus;
import com.ning.billing.util.clock.Clock;
import com.ning.billing.util.clock.ClockMock;
-public class TestDefaultNoOpPaymentInfoPlugin extends PaymentTestSuite {
-
- private final Clock clock = new ClockMock();
+public class TestDefaultNoOpPaymentInfoPlugin extends PaymentTestSuiteNoDB {
@Test(groups = "fast")
public void testEquals() throws Exception {
diff --git a/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentMethodPlugin.java b/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentMethodPlugin.java
index d093077..4d4a15c 100644
--- a/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentMethodPlugin.java
+++ b/payment/src/test/java/com/ning/billing/payment/provider/TestDefaultNoOpPaymentMethodPlugin.java
@@ -22,12 +22,12 @@ import java.util.UUID;
import org.testng.Assert;
import org.testng.annotations.Test;
-import com.ning.billing.payment.PaymentTestSuite;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
import com.ning.billing.payment.api.PaymentMethodPlugin.PaymentMethodKVInfo;
import com.google.common.collect.ImmutableList;
-public class TestDefaultNoOpPaymentMethodPlugin extends PaymentTestSuite {
+public class TestDefaultNoOpPaymentMethodPlugin extends PaymentTestSuiteNoDB {
@Test(groups = "fast")
public void testEquals() throws Exception {
diff --git a/payment/src/test/java/com/ning/billing/payment/provider/TestExternalPaymentProviderPlugin.java b/payment/src/test/java/com/ning/billing/payment/provider/TestExternalPaymentProviderPlugin.java
index 9c8a2c8..1741ed6 100644
--- a/payment/src/test/java/com/ning/billing/payment/provider/TestExternalPaymentProviderPlugin.java
+++ b/payment/src/test/java/com/ning/billing/payment/provider/TestExternalPaymentProviderPlugin.java
@@ -26,14 +26,14 @@ import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
-import com.ning.billing.payment.PaymentTestSuite;
+import com.ning.billing.payment.PaymentTestSuiteNoDB;
import com.ning.billing.payment.plugin.api.PaymentInfoPlugin;
import com.ning.billing.payment.plugin.api.PaymentInfoPlugin.PaymentPluginStatus;
import com.ning.billing.payment.plugin.api.PaymentPluginApiException;
import com.ning.billing.util.clock.Clock;
import com.ning.billing.util.clock.ClockMock;
-public class TestExternalPaymentProviderPlugin extends PaymentTestSuite {
+public class TestExternalPaymentProviderPlugin extends PaymentTestSuiteNoDB {
private final Clock clock = new ClockMock();
private ExternalPaymentProviderPlugin plugin;
diff --git a/payment/src/test/java/com/ning/billing/payment/TestRetryService.java b/payment/src/test/java/com/ning/billing/payment/TestRetryService.java
index 3ca7eb4..7ea7797 100644
--- a/payment/src/test/java/com/ning/billing/payment/TestRetryService.java
+++ b/payment/src/test/java/com/ning/billing/payment/TestRetryService.java
@@ -27,35 +27,17 @@ import java.util.concurrent.TimeoutException;
import org.joda.time.LocalDate;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Guice;
import org.testng.annotations.Test;
import com.ning.billing.account.api.Account;
import com.ning.billing.catalog.api.Currency;
-import com.ning.billing.mock.glue.MockNonEntityDaoModule;
-import com.ning.billing.util.config.PaymentConfig;
import com.ning.billing.invoice.api.Invoice;
-import com.ning.billing.mock.glue.MockClockModule;
-import com.ning.billing.mock.glue.MockJunctionModule;
import com.ning.billing.payment.api.Payment;
import com.ning.billing.payment.api.Payment.PaymentAttempt;
import com.ning.billing.payment.api.PaymentApiException;
import com.ning.billing.payment.api.PaymentStatus;
-import com.ning.billing.payment.core.PaymentProcessor;
import com.ning.billing.payment.glue.DefaultPaymentService;
-import com.ning.billing.payment.glue.PaymentTestModuleWithMocks;
import com.ning.billing.payment.provider.MockPaymentProviderPlugin;
-import com.ning.billing.payment.provider.PaymentProviderPluginRegistry;
-import com.ning.billing.payment.retry.FailedPaymentRetryService;
-import com.ning.billing.payment.retry.PluginFailureRetryService;
-import com.ning.billing.util.clock.ClockMock;
-import com.ning.billing.util.glue.CacheModule;
-import com.ning.billing.util.glue.CallContextModule;
-import com.ning.billing.util.glue.NonEntityDaoModule;
-import com.ning.billing.util.svcapi.invoice.InvoiceInternalApi;
-import com.ning.billing.util.svcsapi.bus.InternalBus;
-
-import com.google.inject.Inject;
import static com.jayway.awaitility.Awaitility.await;
import static java.util.concurrent.TimeUnit.SECONDS;
@@ -63,48 +45,30 @@ import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertTrue;
import static org.testng.Assert.fail;
-@Guice(modules = {PaymentTestModuleWithMocks.class, MockClockModule.class, MockJunctionModule.class, CacheModule.class, CallContextModule.class, MockNonEntityDaoModule.class})
-public class TestRetryService extends PaymentTestSuite {
- @Inject
- private PaymentConfig paymentConfig;
- @Inject
- private InternalBus eventBus;
- @Inject
- private PaymentProcessor paymentProcessor;
- @Inject
- private InvoiceInternalApi invoiceApi;
- @Inject
- private TestHelper testHelper;
- @Inject
- private PaymentProviderPluginRegistry registry;
- @Inject
- private FailedPaymentRetryService retryService;
- @Inject
- private PluginFailureRetryService pluginRetryService;
-
- @Inject
- private ClockMock clock;
+public class TestRetryService extends PaymentTestSuiteNoDB {
private MockPaymentProviderPlugin mockPaymentProviderPlugin;
+ @Override
@BeforeMethod(groups = "fast")
- public void setUp() throws Exception {
+ public void setupTest() throws Exception {
+ super.setupTest();
pluginRetryService.initialize(DefaultPaymentService.SERVICE_NAME);
pluginRetryService.start();
retryService.initialize(DefaultPaymentService.SERVICE_NAME);
retryService.start();
- eventBus.start();
mockPaymentProviderPlugin = (MockPaymentProviderPlugin) registry.getPlugin(null);
mockPaymentProviderPlugin.clear();
}
+ @Override
@AfterMethod(groups = "fast")
- public void tearDown() throws Exception {
+ public void cleanupTest() throws Exception {
+ super.cleanupTest();
retryService.stop();
pluginRetryService.stop();
- eventBus.stop();
}
private Payment getPaymentForInvoice(final UUID invoiceId) throws PaymentApiException {