/** * Creates a random {@link com.ning.billing.recurly.model.Subscription} object for use in tests * * @param currencyCode The currency code for which the subscription will be charged in * @param plan The associated plan * @param account The associated account * @param planAddOns AddOns for that subscription * @return The {@link com.ning.billing.recurly.model.Subscription} object */ public static Subscription createRandomSubscription(final String currencyCode, final Plan plan, final Account account, final Iterable<AddOn> planAddOns) { final Subscription sub = new Subscription(); // Make sure the quantity is > 0 sub.setQuantity(randomInteger(10) + 1); sub.setCurrency(randomCurrency()); sub.setPlanCode(plan.getPlanCode()); sub.setAccount(account); sub.setUnitAmountInCents(randomInteger(10)); sub.setCurrency(currencyCode); final SubscriptionAddOns addOns = new SubscriptionAddOns(); for (final AddOn addOn : planAddOns) { addOns.add(createRandomSubscriptionAddOn(addOn.getAddOnCode())); } sub.setAddOns(addOns); return sub; }
/** * Creates a random {@link com.ning.billing.recurly.model.Subscription} object for use in tests * * @param currencyCode The currency code for which the subscription will be charged in * @param plan The associated plan * @param account The associated account * @param planAddOns AddOns for that subscription * @return The {@link com.ning.billing.recurly.model.Subscription} object */ public static Subscription createRandomSubscription(final String currencyCode, final Plan plan, final Account account, final Iterable<AddOn> planAddOns) { final Subscription sub = new Subscription(); // Make sure the quantity is > 0 sub.setQuantity(randomInteger(10) + 1); sub.setCurrency(randomCurrency()); sub.setPlanCode(plan.getPlanCode()); sub.setAccount(account); sub.setUnitAmountInCents(randomInteger(10)); sub.setCurrency(currencyCode); final SubscriptionAddOns addOns = new SubscriptionAddOns(); for (final AddOn addOn : planAddOns) { addOns.add(createRandomSubscriptionAddOn(addOn.getAddOnCode())); } sub.setAddOns(addOns); return sub; }
/** * Creates a random {@link com.ning.billing.recurly.model.Subscription} object for use in tests given a seed * * @param seed The RNG seed * @return The {@link com.ning.billing.recurly.model.Subscription} object */ public static Subscription createRandomSubscription(final int seed) { final Subscription sub = new Subscription(); final Plan plan = createRandomPlan(seed); sub.setQuantity(randomInteger(10, seed) + 1); sub.setCurrency(randomCurrency(seed)); sub.setPlanCode(plan.getPlanCode()); sub.setAccount(createRandomAccount(seed)); sub.setUnitAmountInCents(randomInteger(10, seed)); sub.setCurrency(randomCurrency(seed)); final SubscriptionAddOns addOns = new SubscriptionAddOns(); for (int i = 0; i < 5; i++) { addOns.add(createRandomSubscriptionAddOn("code"+i)); } sub.setAddOns(addOns); return sub; }
/** * Creates a random {@link com.ning.billing.recurly.model.Subscription} object for use in tests given a seed * * @param seed The RNG seed * @return The {@link com.ning.billing.recurly.model.Subscription} object */ public static Subscription createRandomSubscription(final int seed) { final Subscription sub = new Subscription(); final Plan plan = createRandomPlan(seed); sub.setQuantity(randomInteger(10, seed) + 1); sub.setCurrency(randomCurrency(seed)); sub.setPlanCode(plan.getPlanCode()); sub.setAccount(createRandomAccount(seed)); sub.setUnitAmountInCents(randomInteger(10, seed)); sub.setCurrency(randomCurrency(seed)); final SubscriptionAddOns addOns = new SubscriptionAddOns(); for (int i = 0; i < 5; i++) { addOns.add(createRandomSubscriptionAddOn("code"+i)); } sub.setAddOns(addOns); return sub; }