def test_non_global_backends_with_direct_provider_fees( self, mock_log_smsbillables_error): bootstrap_twilio_gateway(apps) bootstrap_infobip_gateway(apps) bootstrap_usage_fees(apps) backends = generator.arbitrary_non_global_with_direct_fees_backends() for backend in backends: messages = [ message for phone_number in [generator.arbitrary_phone_number() for _ in range(10)] for message in generator.arbitrary_messages_by_backend_and_direction( {backend.hq_api_id: backend.couch_id}, phone_number=phone_number) ] for msg_log in messages: FakeMessageFactory.add_price_for_message( msg_log.backend_message_id, generator.arbitrary_fee()) for msg_log in messages: multipart_count = randint(1, 10) # Should be ignored billable = SmsBillable.create(msg_log, multipart_count=multipart_count) self.assertIsNotNone(billable) self.assertIsNone(billable.gateway_fee) self.assertEqual(billable.gateway_charge, 0) self.assertEqual(mock_log_smsbillables_error.call_count, 0)
def add_twilio_gateway_fee_for_migration(apps, schema_editor): bootstrap_twilio_gateway(apps)