def setUp(self): super(TestBillingAccount, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.billing_account = generator.billing_account( self.dimagi_user, self.billing_contact)
def test_clean(self): account = BillingAccount.objects.create( currency=generator.init_default_currency(), ) subscription = Subscription.objects.create( account=account, date_start=date.today(), plan_version=generator.subscribable_plan(), subscriber=Subscriber.objects.create(domain='test') ) invoice = Invoice.objects.create( date_start=date.today(), date_end=date.today(), subscription=subscription, ) line_item = LineItem.objects.create( invoice=invoice, ) with self.assertRaises(ValidationError): try: CreditAdjustment( invoice=invoice, line_item=line_item, ).save() except ValidationError as e: self.assertIn('__all__', e.error_dict) raise e
def setUp(self): super(TestBillingAutoPay, self).setUp() self.account.created_by_domain = self.domain self.account.save() self.currency = generator.init_default_currency() self.web_user = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.fake_card = FakeStripeCard() self.fake_stripe_customer = FakeStripeCustomer(cards=[self.fake_card]) self.account.update_autopay_user(self.web_user.username, self.domain) self.invoice_date = utils.months_from_date(self.subscription.date_start, random.randint(2, self.subscription_length)) self.account_2 = generator.billing_account(self.dimagi_user, self.web_user) self.domain_2 = generator.arbitrary_domain() self.subscription_2, self.subscription_length_2 = generator.generate_domain_subscription_from_date( generator.get_start_date(), self.account_2, self.domain_2.name, min_num_months=self.min_subscription_length, ) tasks.generate_invoices(self.invoice_date)
def setUp(self): super(TestBillingRecord, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.domain = Domain(name='test') self.domain.save() self.invoice_start, self.invoice_end = get_previous_month_date_range() self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.subscription_length = 4 # months subscription_start_date = datetime.date(2016, 2, 23) subscription_end_date = add_months_to_date(subscription_start_date, self.subscription_length) self.subscription = generator.generate_domain_subscription( self.account, self.domain, date_start=subscription_start_date, date_end=subscription_end_date, ) self.invoice = Invoice( subscription=self.subscription, date_start=self.invoice_start, date_end=self.invoice_end, is_hidden=False, ) self.billing_record = BillingRecord(invoice=self.invoice)
def setUp(self): super(TestSubscription, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( datetime.date.today(), self.account, 'test' )
def setUp(self): SmsUsageFee.objects.all().delete() SmsUsageFeeCriteria.objects.all().delete() self.currency_usd = init_default_currency() self.least_specific_fees = generator.arbitrary_fees_by_direction() self.most_specific_fees = generator.arbitrary_fees_by_direction_and_domain() self.backend_ids = generator.arbitrary_backend_ids()
def setUp(self): super(TestSubscription, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( datetime.date.today(), self.account, 'test')
def setUp(self): SmsUsageFee.objects.all().delete() SmsUsageFeeCriteria.objects.all().delete() self.currency_usd = init_default_currency() self.least_specific_fees = generator.arbitrary_fees_by_direction() self.most_specific_fees = generator.arbitrary_fees_by_direction_and_domain( ) self.backend_ids = generator.arbitrary_backend_ids()
def setUp(self): super(TestUsageFee, self).setUp() # Must remove existing data populated in migrations SmsUsageFee.objects.all().delete() SmsUsageFeeCriteria.objects.all().delete() self.currency_usd = init_default_currency() self.least_specific_fees = generator.arbitrary_fees_by_direction() self.most_specific_fees = generator.arbitrary_fees_by_direction_and_domain() self.backend_ids = generator.arbitrary_backend_ids()
def setUp(self): self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.domain = generator.arbitrary_domain() generator.instantiate_subscribable_plans() generator.instantiate_community_plans() self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( generator.get_start_date(), self.account, self.domain.name, min_num_months=self.min_subscription_length, )
def setUp(self): super(BaseInvoiceTestCase, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.domain = generator.arbitrary_domain() self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( generator.get_start_date(), self.account, self.domain.name, min_num_months=self.min_subscription_length ) self.community_plan = DefaultProductPlan.objects.get( product_type=SoftwareProductType.COMMCARE, edition=SoftwarePlanEdition.COMMUNITY ).plan.get_version()
def setUp(self): super(TestStripePaymentMethod, self).setUp() self.web_user = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.fake_card = FakeStripeCard() self.fake_stripe_customer = FakeStripeCustomer(cards=[self.fake_card]) self.currency = generator.init_default_currency() self.billing_account = generator.billing_account(self.dimagi_user, self.web_user) self.billing_account_2 = generator.billing_account(self.dimagi_user, self.web_user) self.payment_method = StripePaymentMethod(web_user=self.web_user.username, customer_id=self.fake_stripe_customer.id) self.payment_method.save()
def setUp(self): SmsGatewayFee.objects.all().delete() SmsGatewayFeeCriteria.objects.all().delete() self.currency_usd = init_default_currency() self.backend_ids = generator.arbitrary_backend_ids() self.message_logs = generator.arbitrary_messages_by_backend_and_direction(self.backend_ids) self.least_specific_fees = generator.arbitrary_fees_by_direction_and_backend() self.country_code_fees = generator.arbitrary_fees_by_country() self.instance_fees = generator.arbitrary_fees_by_backend_instance(self.backend_ids) self.most_specific_fees = generator.arbitrary_fees_by_all(self.backend_ids) self.country_code_and_prefixes = generator.arbitrary_country_code_and_prefixes(3, 3) self.prefix_fees = generator.arbitrary_fees_by_prefix(self.backend_ids, self.country_code_and_prefixes) self.other_currency = generator.arbitrary_currency()
def setUp(self): super(TestSubscription, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.domain = Domain(name='test') self.domain.save() self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.subscription_length = 15 # months subscription_start_date = datetime.date(2016, 2, 23) subscription_end_date = add_months_to_date(subscription_start_date, self.subscription_length) self.subscription = generator.generate_domain_subscription( self.account, self.domain, date_start=subscription_start_date, date_end=subscription_end_date, )
def setUp(self): super(BaseInvoiceTestCase, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.domain = generator.arbitrary_domain() self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( generator.get_start_date(), self.account, self.domain.name, min_num_months=self.min_subscription_length, ) self.community_plan = DefaultProductPlan.objects.get( product_type=SoftwareProductType.COMMCARE, edition=SoftwarePlanEdition.COMMUNITY).plan.get_version()
def setUp(self): super(TestBillingRecord, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.domain = Domain(name='test') self.domain.save() self.invoice_start, self.invoice_end = get_previous_month_date_range() self.currency = generator.init_default_currency() self.account = generator.billing_account(self.dimagi_user, self.billing_contact) self.subscription, self.subscription_length = generator.generate_domain_subscription_from_date( datetime.date.today(), self.account, self.domain.name ) self.invoice = Invoice( subscription=self.subscription, date_start=self.invoice_start, date_end=self.invoice_end, is_hidden=False, ) self.billing_record = BillingRecord(invoice=self.invoice)
def setUp(self): super(BaseInvoiceTestCase, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.account = generator.billing_account( self.dimagi_user, self.billing_contact) self.domain = generator.arbitrary_domain() self.subscription_length = 15 # months subscription_start_date = datetime.date(2016, 2, 23) subscription_end_date = add_months_to_date(subscription_start_date, self.subscription_length) self.subscription = generator.generate_domain_subscription( self.account, self.domain, date_start=subscription_start_date, date_end=subscription_end_date, ) self.community_plan = DefaultProductPlan.objects.get( product_type=SoftwareProductType.COMMCARE, edition=SoftwarePlanEdition.COMMUNITY ).plan.get_version()
def setUp(self): SmsGatewayFee.objects.all().delete() SmsGatewayFeeCriteria.objects.all().delete() self.currency_usd = init_default_currency() self.available_backends = get_available_backends().values() self.backend_ids = generator.arbitrary_backend_ids() self.message_logs = generator.arbitrary_messages_by_backend_and_direction( self.backend_ids) self.least_specific_fees = generator.arbitrary_fees_by_direction_and_backend( ) self.country_code_fees = generator.arbitrary_fees_by_country() self.instance_fees = generator.arbitrary_fees_by_backend_instance( self.backend_ids) self.most_specific_fees = generator.arbitrary_fees_by_all( self.backend_ids) self.country_code_and_prefixes = generator.arbitrary_country_code_and_prefixes( ) self.prefix_fees = generator.arbitrary_fees_by_prefix( self.backend_ids, self.country_code_and_prefixes) self.other_currency = generator.arbitrary_currency()
def setUp(self): super(TestBillingAccount, self).setUp() self.billing_contact = generator.arbitrary_web_user() self.dimagi_user = generator.arbitrary_web_user(is_dimagi=True) self.currency = generator.init_default_currency() self.billing_account = generator.billing_account(self.dimagi_user, self.billing_contact)