def test_get_prefix_to_backend_map(self): backend1 = SQLTestSMSBackend.objects.create( name='BACKEND1', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend2 = SQLTestSMSBackend.objects.create( name='BACKEND2', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend3 = SQLTestSMSBackend.objects.create( name='BACKEND3', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend4 = SQLTestSMSBackend.objects.create( name='BACKEND4', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend5 = SQLTestSMSBackend.objects.create( name='BACKEND5', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend6 = SQLTestSMSBackend.objects.create( name='BACKEND6', is_global=True, hq_api_id=SQLTestSMSBackend.get_api_id(), ) backend_mapping1 = SQLMobileBackendMapping.objects.create( is_global=True, backend_type=SQLMobileBackend.SMS, prefix='*', backend=backend1 ) backend_mapping2 = SQLMobileBackendMapping.objects.create( is_global=True, backend_type=SQLMobileBackend.SMS, prefix='27', backend=backend2 ) backend_mapping3 = SQLMobileBackendMapping.objects.create( is_global=True, backend_type=SQLMobileBackend.SMS, prefix='1', backend=backend3 ) backend_mapping4 = SQLMobileBackendMapping.objects.create( is_global=False, domain='prefix-backend-map-test', backend_type=SQLMobileBackend.SMS, prefix='*', backend=backend4 ) backend_mapping5 = SQLMobileBackendMapping.objects.create( is_global=False, domain='prefix-backend-map-test', backend_type=SQLMobileBackend.SMS, prefix='256', backend=backend5 ) backend_mapping6 = SQLMobileBackendMapping.objects.create( is_global=False, domain='prefix-backend-map-test', backend_type=SQLMobileBackend.SMS, prefix='25670', backend=backend6 ) global_backend_map = SQLMobileBackendMapping.get_prefix_to_backend_map(SQLMobileBackend.SMS) self.assertEqual(global_backend_map.catchall_backend_id, backend1.pk) self.assertEqual(global_backend_map.backend_map_dict, { '27': backend2.pk, '1': backend3.pk, }) domain_backend_map = SQLMobileBackendMapping.get_prefix_to_backend_map( SQLMobileBackend.SMS, domain='prefix-backend-map-test' ) self.assertEqual(domain_backend_map.catchall_backend_id, backend4.pk) self.assertEqual(domain_backend_map.backend_map_dict, { '256': backend5.pk, '25670': backend6.pk, }) backend_mapping1.delete() backend_mapping2.delete() backend_mapping3.delete() backend_mapping4.delete() backend_mapping5.delete() backend_mapping6.delete() backend1.delete() backend2.delete() backend3.delete() backend4.delete() backend5.delete() backend6.delete()