Details
diff --git a/analytics/src/test/java/com/ning/billing/analytics/api/TestAnalyticsService.java b/analytics/src/test/java/com/ning/billing/analytics/api/TestAnalyticsService.java
index 82b1241..5d452e1 100644
--- a/analytics/src/test/java/com/ning/billing/analytics/api/TestAnalyticsService.java
+++ b/analytics/src/test/java/com/ning/billing/analytics/api/TestAnalyticsService.java
@@ -25,7 +25,6 @@ import java.util.UUID;
import org.joda.time.DateTime;
import org.mockito.Mockito;
import org.testng.Assert;
-import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Guice;
@@ -37,17 +36,16 @@ import com.ning.billing.account.api.AccountCreationEvent;
import com.ning.billing.account.api.AccountUserApi;
import com.ning.billing.account.api.user.DefaultAccountCreationEvent;
import com.ning.billing.analytics.AnalyticsTestModule;
-import com.ning.billing.analytics.dao.BusinessAccountSqlDao;
-import com.ning.billing.analytics.model.BusinessSubscription;
-import com.ning.billing.analytics.model.BusinessSubscriptionEvent;
-import com.ning.billing.analytics.model.BusinessSubscriptionTransition;
-import com.ning.billing.analytics.MockAccount;
import com.ning.billing.analytics.MockDuration;
import com.ning.billing.analytics.MockPhase;
import com.ning.billing.analytics.MockPlan;
import com.ning.billing.analytics.MockProduct;
import com.ning.billing.analytics.TestWithEmbeddedDB;
+import com.ning.billing.analytics.dao.BusinessAccountSqlDao;
import com.ning.billing.analytics.dao.BusinessSubscriptionTransitionSqlDao;
+import com.ning.billing.analytics.model.BusinessSubscription;
+import com.ning.billing.analytics.model.BusinessSubscriptionEvent;
+import com.ning.billing.analytics.model.BusinessSubscriptionTransition;
import com.ning.billing.catalog.MockPriceList;
import com.ning.billing.catalog.api.Catalog;
import com.ning.billing.catalog.api.CatalogApiException;
@@ -74,6 +72,7 @@ import com.ning.billing.invoice.api.user.DefaultInvoiceCreationEvent;
import com.ning.billing.invoice.dao.InvoiceDao;
import com.ning.billing.invoice.model.DefaultInvoice;
import com.ning.billing.invoice.model.FixedPriceInvoiceItem;
+import com.ning.billing.mock.MockAccountBuilder;
import com.ning.billing.payment.api.DefaultPaymentInfoEvent;
import com.ning.billing.payment.api.PaymentInfoEvent;
import com.ning.billing.payment.api.PaymentStatus;
@@ -151,7 +150,11 @@ public class TestAnalyticsService extends TestWithEmbeddedDB {
@BeforeMethod(groups = "slow")
public void createMocks() {
- final MockAccount account = new MockAccount(UUID.randomUUID(), ACCOUNT_KEY, ACCOUNT_CURRENCY);
+ final Account account = new MockAccountBuilder(UUID.randomUUID())
+ .externalKey(ACCOUNT_KEY)
+ .currency(ACCOUNT_CURRENCY)
+ .build();
+
try {
final Account storedAccount = accountApi.createAccount(account, context);
diff --git a/analytics/src/test/java/com/ning/billing/analytics/TestAnalyticsListener.java b/analytics/src/test/java/com/ning/billing/analytics/TestAnalyticsListener.java
index a5cfc42..0b3287e 100644
--- a/analytics/src/test/java/com/ning/billing/analytics/TestAnalyticsListener.java
+++ b/analytics/src/test/java/com/ning/billing/analytics/TestAnalyticsListener.java
@@ -27,6 +27,7 @@ import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
+import com.ning.billing.account.api.Account;
import com.ning.billing.analytics.model.BusinessSubscription;
import com.ning.billing.analytics.model.BusinessSubscriptionEvent;
import com.ning.billing.analytics.model.BusinessSubscriptionTransition;
@@ -45,6 +46,10 @@ import com.ning.billing.entitlement.api.user.Subscription;
import com.ning.billing.entitlement.api.user.SubscriptionTransitionData;
import com.ning.billing.entitlement.events.EntitlementEvent;
import com.ning.billing.entitlement.events.user.ApiEventType;
+import com.ning.billing.mock.MockAccountBuilder;
+import com.ning.billing.mock.api.MockAccountUserApi;
+import com.ning.billing.mock.api.MockEntitlementUserApi;
+import com.ning.billing.util.callcontext.CallContext;
public class TestAnalyticsListener extends AnalyticsTestSuite {
private static final String EXTERNAL_KEY = "1234";
@@ -62,6 +67,7 @@ public class TestAnalyticsListener extends AnalyticsTestSuite {
private final CatalogService catalogService = Mockito.mock(CatalogService.class);
private final Catalog catalog = Mockito.mock(Catalog.class);
+ private UUID accountId;
private AnalyticsListener listener;
@BeforeClass(groups = "fast")
@@ -73,7 +79,15 @@ public class TestAnalyticsListener extends AnalyticsTestSuite {
@BeforeMethod(groups = "fast")
public void setUp() throws Exception {
- final BusinessSubscriptionTransitionRecorder recorder = new BusinessSubscriptionTransitionRecorder(dao, catalogService, new MockEntitlementUserApi(bundleUUID, EXTERNAL_KEY), new MockAccountUserApi(ACCOUNT_KEY, CURRENCY));
+ final MockAccountUserApi accountApi = new MockAccountUserApi();
+ final Account accountData = new MockAccountBuilder().externalKey(ACCOUNT_KEY).currency(CURRENCY).build();
+ final Account account = accountApi.createAccount(accountData, Mockito.mock(CallContext.class));
+ accountId = account.getId();
+
+ final MockEntitlementUserApi entitlementApi = new MockEntitlementUserApi();
+ entitlementApi.addBundle(bundleUUID, EXTERNAL_KEY, accountId);
+
+ final BusinessSubscriptionTransitionRecorder recorder = new BusinessSubscriptionTransitionRecorder(dao, catalogService, entitlementApi, accountApi);
listener = new AnalyticsListener(recorder, null, null, null);
}
diff --git a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
index 2eb018b..6f18739 100644
--- a/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
+++ b/analytics/src/test/java/com/ning/billing/analytics/TestBusinessTagRecorder.java
@@ -50,6 +50,7 @@ import com.ning.billing.entitlement.api.user.SubscriptionBundle;
import com.ning.billing.entitlement.engine.addon.AddonUtils;
import com.ning.billing.entitlement.engine.dao.AuditedEntitlementDao;
import com.ning.billing.entitlement.engine.dao.EntitlementDao;
+import com.ning.billing.mock.MockAccountBuilder;
import com.ning.billing.util.bus.InMemoryBus;
import com.ning.billing.util.callcontext.CallContext;
import com.ning.billing.util.callcontext.CallOrigin;
@@ -107,7 +108,11 @@ public class TestBusinessTagRecorder extends TestWithEmbeddedDB {
final CallContext callContext = callContextFactory.createCallContext(UUID.randomUUID().toString(), CallOrigin.TEST, UserType.TEST);
final String accountKey = UUID.randomUUID().toString();
- final Account account = accountUserApi.createAccount(new MockAccount(UUID.randomUUID(), accountKey, Currency.MXN), callContext);
+ final Account accountData = new MockAccountBuilder()
+ .externalKey(accountKey)
+ .currency(Currency.MXN)
+ .build();
+ final Account account = accountUserApi.createAccount(accountData, callContext);
final UUID accountId = account.getId();
Assert.assertEquals(accountTagSqlDao.getTagsForAccount(accountKey).size(), 0);
@@ -123,7 +128,10 @@ public class TestBusinessTagRecorder extends TestWithEmbeddedDB {
final CallContext callContext = callContextFactory.createCallContext(UUID.randomUUID().toString(), CallOrigin.TEST, UserType.TEST);
final String externalKey = UUID.randomUUID().toString();
- final Account account = accountUserApi.createAccount(new MockAccount(UUID.randomUUID(), UUID.randomUUID().toString(), Currency.MXN), callContext);
+ final Account accountData = new MockAccountBuilder()
+ .currency(Currency.MXN)
+ .build();
+ final Account account = accountUserApi.createAccount(accountData, callContext);
final SubscriptionBundle bundle = entitlementUserApi.createBundleForAccount(account.getId(), externalKey, callContext);
final UUID bundleId = bundle.getId();
diff --git a/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java b/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
index 3a937fa..2255d5f 100644
--- a/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
+++ b/util/src/test/java/com/ning/billing/mock/MockAccountBuilder.java
@@ -21,6 +21,7 @@ import java.util.UUID;
import org.joda.time.DateTimeZone;
import com.ning.billing.account.api.Account;
+import com.ning.billing.account.api.AccountData;
import com.ning.billing.account.api.MutableAccountData;
import com.ning.billing.catalog.api.Currency;
import com.ning.billing.junction.api.BlockingState;
@@ -55,6 +56,29 @@ public class MockAccountBuilder {
this.id = id;
}
+ public MockAccountBuilder(final AccountData data) {
+ this.id = UUID.randomUUID();
+ this.address1(data.getAddress1());
+ this.address2(data.getAddress2());
+ this.billingCycleDay(data.getBillCycleDay());
+ this.city(data.getCity());
+ this.companyName(data.getCompanyName());
+ this.country(data.getCountry());
+ this.currency(data.getCurrency());
+ this.email(data.getEmail());
+ this.externalKey(data.getExternalKey());
+ this.firstNameLength(data.getFirstNameLength());
+ this.isNotifiedForInvoices(data.isNotifiedForInvoices());
+ this.locale(data.getLocale());
+ this.migrated(data.isMigrated());
+ this.name(data.getName());
+ this.paymentMethodId(data.getPaymentMethodId());
+ this.phone(data.getPhone());
+ this.postalCode(data.getPostalCode());
+ this.stateOrProvince(data.getStateOrProvince());
+ this.timeZone(data.getTimeZone());
+ }
+
public MockAccountBuilder externalKey(final String externalKey) {
this.externalKey = externalKey;
return this;
@@ -152,7 +176,6 @@ public class MockAccountBuilder {
public Account build() {
return new Account() {
-
@Override
public String getExternalKey() {
return externalKey;