def test_create_duplicated_carrier_trunk(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier_trunk import CarrierTrunk from wazo_router_confd.models.carrier import Carrier from wazo_router_confd.models.tenant import Tenant tenant = Tenant(name="tenant", uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") carrier = Carrier(name="carrier", tenant=tenant) carrier_trunk = CarrierTrunk( name='carrier_trunk1', tenant=tenant, carrier=carrier, sip_proxy='proxy.somedomain.com', ) session = SessionLocal(bind=app_auth.engine) session.add_all([tenant, carrier, carrier_trunk]) session.commit() # response = client_auth_with_token.post( "/1.0/carrier_trunks", json={ "name": "carrier_trunk1", "tenant_uuid": str(tenant.uuid), "carrier_id": carrier.id, "sip_proxy": "proxy.somedomain.com", }, ) assert response.status_code == 409
def create_routing_rule(app_auth, tenant_uuid, suffix=1): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier import Carrier from wazo_router_confd.models.carrier_trunk import CarrierTrunk from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant from wazo_router_confd.models.ipbx import IPBX from wazo_router_confd.models.routing_group import RoutingGroup from wazo_router_confd.models.routing_rule import RoutingRule session = SessionLocal(bind=app_auth.engine) tenant = session.query(Tenant).filter(Tenant.uuid == tenant_uuid).first() if tenant is None: tenant = Tenant(name="tenant_{}".format(suffix), uuid=tenant_uuid) session.add(tenant) domain = Domain(domain='testdomain_{}.com'.format(suffix), tenant=tenant) ipbx = IPBX( tenant=tenant, domain=domain, customer=1, ip_fqdn='mypbx.com', registered=True, username='******', password='******', ) carrier = Carrier(name='carrier_{}'.format(suffix), tenant=tenant) carrier_trunk = CarrierTrunk( name='carrier_trunk_{}'.format(suffix), carrier=carrier, sip_proxy='proxy.somedomain.com', ) carrier_trunk_2 = CarrierTrunk( name='carrier_trunk_{}_bis'.format(suffix), carrier=carrier, sip_proxy='proxy.somedomain.com', ) routing_rule = RoutingRule( prefix="39", carrier_trunk=carrier_trunk, ipbx=ipbx, did_regex=r'^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$', route_type="pstn", ) routing_group = RoutingGroup(tenant=tenant, routing_rule=routing_rule) session.add_all([ tenant, domain, carrier, carrier_trunk, carrier_trunk_2, ipbx, routing_rule, routing_group, ]) session.commit() session.flush() return routing_rule, ipbx, carrier_trunk, tenant, session
def test_get_cdrs(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.cdr import CDR from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) tenant = Tenant(name="tenant", uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") cdr = CDR( from_uri="100@localhost", to_uri="200@localhost", call_id="1000", source_ip="10.0.0.1", source_port=5060, duration=60, call_start=parse("2019-09-01T00:00:00"), tenant=tenant, ) session.add_all([tenant, cdr]) session.commit() # response = client_auth_with_token.get("/1.0/cdrs") assert response.status_code == 200 assert response.json() == { "items": [{ "id": cdr.id, "from_uri": "100@localhost", "to_uri": "200@localhost", "call_id": "1000", "source_ip": "10.0.0.1", "source_port": 5060, "duration": 60, "call_start": "2019-09-01T00:00:00", "tenant_uuid": str(tenant.uuid), }] }
def test_create_cdr(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant tenant = Tenant(name="tenant", uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") session = SessionLocal(bind=app_auth.engine) session.add(tenant) session.commit() # response = client_auth_with_token.post( "/1.0/cdrs", json={ "from_uri": "100@localhost", "to_uri": "200@localhost", "call_id": "1000", "source_ip": "10.0.0.1", "source_port": 5060, "duration": 60, "call_start": "2019-09-01T00:00:00", "tenant_uuid": str(tenant.uuid), }, ) assert response.status_code == 200 assert response.json() == { "id": mock.ANY, "from_uri": "100@localhost", "to_uri": "200@localhost", "call_id": "1000", "source_ip": "10.0.0.1", "source_port": 5060, "duration": 60, "call_start": "2019-09-01T00:00:00", "tenant_uuid": str(tenant.uuid), }
def test_create_duplicated_normalization_rule(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.normalization import NormalizationRule from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) normalization_rule = NormalizationRule( match_regex='^11', match_prefix='11', replace_regex='', profile=normalization_profile, ) session.add_all([tenant, normalization_profile, normalization_rule]) session.commit() # response = client.post( "/1.0/normalization-rules", json={ "profile_id": normalization_profile.id, "match_regex": "^11", "replace_regex": "", }, ) assert response.status_code == 409
def test_get_normalization_profile(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) session.add_all([normalization_profile, tenant]) session.commit() # response = client.get("/1.0/normalization-profiles/%s" % normalization_profile.id) assert response.status_code == 200 assert response.json() == { "id": normalization_profile.id, "name": "profile 1", "tenant_uuid": str(tenant.uuid), "country_code": None, "area_code": None, "intl_prefix": None, "ld_prefix": None, "always_ld": False, "always_intl_prefix_plus": False, }
def test_get_normalization_rule(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.normalization import NormalizationRule from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) normalization_rule = NormalizationRule( match_regex='^11', match_prefix='11', replace_regex='', profile=normalization_profile, ) session.add_all([tenant, normalization_profile, normalization_rule]) session.commit() # response = client.get("/1.0/normalization-rules/%s" % normalization_rule.id) assert response.status_code == 200 assert response.json() == { "id": normalization_rule.id, "rule_type": 1, "priority": 0, "profile_id": normalization_profile.id, "match_regex": "^11", "replace_regex": '', }
def test_create_normalization_rule(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) session.add_all([normalization_profile, tenant]) session.commit() # response = client.post( "/1.0/normalization-rules", json={ "profile_id": normalization_profile.id, "rule_type": 1, "priority": 1, "match_regex": "^11", "replace_regex": "", }, ) assert response.status_code == 200 assert response.json() == { "id": mock.ANY, "profile_id": normalization_profile.id, "rule_type": 1, "priority": 1, "match_regex": "^11", "replace_regex": "", }
def test_create_normalization_profile(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") session.add_all([tenant]) session.commit() # response = client_auth_with_token.post( "/1.0/normalization-profiles", json={ "name": "profile 1", "tenant_uuid": str(tenant.uuid), "country_code": "39", "area_code": "11", "intl_prefix": "00", "ld_prefix": "0", "always_ld": True, "always_intl_prefix_plus": False, }, ) assert response.status_code == 200 assert response.json() == { "id": mock.ANY, "tenant_uuid": str(tenant.uuid), "name": "profile 1", "country_code": "39", "area_code": "11", "intl_prefix": "00", "ld_prefix": "0", "always_ld": True, "always_intl_prefix_plus": False, }
def test_delete_normalization_rule(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.normalization import NormalizationRule from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) normalization_rule = NormalizationRule( match_regex='^11', match_prefix='11', replace_regex='', profile=normalization_profile, ) session.add_all([tenant, normalization_profile, normalization_rule]) session.commit() # response = client_auth_with_token.delete( "/1.0/normalization-rules/%s" % normalization_rule.id ) assert response.status_code == 200 assert response.json() == { "id": normalization_rule.id, "rule_type": 1, "priority": 0, "profile_id": normalization_profile.id, "match_regex": "^11", "replace_regex": '', }
def test_get_normalization_profiles(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.normalization import NormalizationProfile from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") normalization_profile = NormalizationProfile(name='profile 1', tenant=tenant) session.add_all([normalization_profile, tenant]) session.commit() # response = client_auth_with_token.get("/1.0/normalization-profiles") assert response.status_code == 200 assert response.json() == { "items": [{ "id": normalization_profile.id, "name": "profile 1", "tenant_uuid": str(tenant.uuid), "country_code": None, "area_code": None, "intl_prefix": None, "ld_prefix": None, "always_ld": False, "always_intl_prefix_plus": False, }] }
def test_update_domain(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='test', uuid="3ab844af-8039-45d9-a3aa-bae6f298228f") tenant_2 = Tenant(name='test_2', uuid="38a334ec-8960-4367-80a3-b44c568df279") domain = Domain(domain='testdomain.com', tenant=tenant) session.add_all([domain, tenant, tenant_2]) session.commit() # response = client.put( "/1.0/domains/%s" % domain.id, json={ 'domain': 'otherdomain.com', 'tenant_uuid': str(tenant_2.uuid) }, ) assert response.status_code == 200 assert response.json() == { 'id': domain.id, 'domain': 'otherdomain.com', 'tenant_uuid': str(tenant_2.uuid), }
def test_create_ipbx_password_too_long(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") domain = Domain(domain='testdomain.com', tenant=tenant) session = SessionLocal(bind=app_auth.engine) session.add_all([tenant, domain]) session.commit() # response = client_auth_with_token.post( "/1.0/ipbxs", json={ "tenant_uuid": str(tenant.uuid), "domain_id": domain.id, "customer": 1, "ip_fqdn": "mypbx.com", "port": 5060, "ip_address": "10.0.0.1", "registered": True, "username": '******' * 128, # String(50) "password": '******' * 248, # String(192) }, ) assert response.status_code >= 400 and response.status_code < 500
def test_update_routing_rule(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.routing_rule import RoutingRule session = SessionLocal(bind=app.engine) session.add( RoutingRule( prefix="39", carrier_trunk_id=1, ipbx_id=1, did_regex=r'^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$', route_type="pstn", )) session.commit() # response = client.put( "/routing_rules/1", json={ 'prefix': '40', 'carrier_trunk_id': 2, 'ipbx_id': 1, 'did_regex': r'^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$', 'route_type': "pstn", }, ) assert response.status_code == 200 assert response.json() == { "id": 1, "prefix": "40", "carrier_trunk_id": 2, "ipbx_id": 1, "did_regex": r"^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$", "route_type": "pstn", }
def test_update_did(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.did import DID session = SessionLocal(bind=app.engine) session.add( DID( did_regex=r'^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$', carrier_trunk_id=1, tenant_id=1, )) session.commit() # response = client.put( "/dids/1", json={ "id": 1, "did_regex": r"^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$", "carrier_trunk_id": 2, "tenant_id": 2, }, ) assert response.status_code == 200 assert response.json() == { "id": 1, "did_regex": r"^(\+?1)?(8(00|44|55|66|77|88)[2-9]\d{6})$", "carrier_trunk_id": 2, "tenant_id": 2, }
def test_kamailio_routing_did_with_no_matching_ipbx(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier import Carrier from wazo_router_confd.models.carrier_trunk import CarrierTrunk from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant from wazo_router_confd.models.ipbx import IPBX from wazo_router_confd.models.did import DID session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') domain = Domain(domain='testdomain.com', tenant=tenant) ipbx = IPBX( tenant=tenant, domain=domain, customer=1, ip_fqdn='mypbx.com', registered=True, username='******', password='******', ) carrier = Carrier(name='carrier', tenant=tenant) carrier_trunk = CarrierTrunk(name='carrier_trunk1', carrier=carrier, sip_proxy='proxy.somedomain.com') did = DID( did_regex=r'^39[0-9]+$', did_prefix='39', tenant=tenant, ipbx=ipbx, carrier_trunk=carrier_trunk, ) session.add_all([tenant, domain, ipbx, carrier, carrier_trunk, did]) session.commit() # request_from_name = "From name" request_from_uri = "sip:[email protected]" request_from_tag = "from_tag" request_to_name = "to name" request_to_uri = "sip:[email protected]" request_to_tag = "to_tag" # response = client.post( "/1.0/kamailio/routing", json={ "event": "sip-routing", "source_ip": "10.0.0.1", "source_port": 5060, "call_id": "call-id", "from_name": request_from_name, "from_uri": request_from_uri, "from_tag": request_from_tag, "to_uri": request_to_uri, "to_name": request_to_name, "to_tag": request_to_tag, }, ) assert response.status_code == 200 assert response.json() == {"auth": None, "rtjson": {"success": False}}
def test_update_carrier_trunk(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier_trunk import CarrierTrunk from wazo_router_confd.models.carrier import Carrier from wazo_router_confd.models.tenant import Tenant tenant = Tenant(name="tenant", uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") carrier = Carrier(name="carrier", tenant=tenant) carrier_trunk = CarrierTrunk( name='carrier_trunk1', tenant=tenant, carrier=carrier, sip_proxy='proxy.somedomain.com', auth_username='******', auth_password='******', ) session = SessionLocal(bind=app_auth.engine) session.add_all([tenant, carrier, carrier_trunk]) session.commit() # response = client_auth_with_token.put( "/1.0/carrier_trunks/%s" % carrier_trunk.id, json={ 'name': 'updated_carrier_trunk1', "tenant_uuid": str(tenant.uuid), "carrier_id": carrier.id, "normalization_profile_id": None, "sip_proxy": "proxy.somedomain.com", "sip_proxy_port": 5061, "ip_address": "10.0.0.1", "registered": True, 'auth_username': '******', 'auth_password': '******', "realm": "somerealm.com", "registrar_proxy": "registrar-proxy.com", "from_domain": "gw.somedomain.com", "expire_seconds": 1800, "retry_seconds": 10, }, ) assert response.status_code == 200 assert response.json() == { 'id': carrier_trunk.id, 'name': 'updated_carrier_trunk1', "tenant_uuid": str(tenant.uuid), "carrier_id": carrier.id, "normalization_profile_id": None, 'sip_proxy': 'proxy.somedomain.com', "sip_proxy_port": 5061, "ip_address": "10.0.0.1", 'auth_username': '******', 'expire_seconds': 1800, 'retry_seconds': 10, 'from_domain': "gw.somedomain.com", 'realm': "somerealm.com", 'registered': True, 'registrar_proxy': "registrar-proxy.com", }
def test_kamailio_cdr_failed_no_tenant(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier import Carrier from wazo_router_confd.models.carrier_trunk import CarrierTrunk from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant from wazo_router_confd.models.ipbx import IPBX from wazo_router_confd.models.did import DID session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid='5a6c0c40-b481-41bb-a41a-75d1cc25ff34') domain = Domain(domain='testdomain.com', tenant=tenant) ipbx = IPBX( tenant=tenant, domain=domain, customer=1, ip_fqdn='mypbx.com', registered=True, username='******', password='******', ) carrier = Carrier(name='carrier', tenant=tenant) carrier_trunk = CarrierTrunk( name='carrier_trunk1', carrier=carrier, sip_proxy='proxy.somedomain.com' ) did = DID( did_regex=r'^39[0-9]+$', did_prefix='39', tenant=tenant, ipbx=ipbx, carrier_trunk=carrier_trunk, ) session.add_all([tenant, domain, ipbx, carrier, carrier_trunk, did]) session.commit() # request_from_uri = "*****@*****.**" request_to_uri = "*****@*****.**" call_start = 1570752000 duration = 60 # response = client.post( "/1.0/kamailio/cdr", json={ "tenant_uuid": "5ecdf9dd-36d3-4735-a5e8-99bd297bc325", "event": "sip-routing", "source_ip": "10.0.0.1", "source_port": 5060, "call_id": "call-id", "from_uri": request_from_uri, "to_uri": request_to_uri, "call_start": call_start, "duration": duration, }, ) assert response.status_code == 200 assert response.json() == {"success": False, "cdr": None}
def test_create_duplicated_tenant(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) session.add(Tenant(name='fabio')) session.commit() # response = client.post("/tenants/", json={"name": "fabio"}) assert response.status_code == 400
def test_update_tenant(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) session.add(Tenant(name='fabio')) session.commit() # response = client.put("/tenants/1", json={'name': 'alex'}) assert response.status_code == 200 assert response.json() == {'id': 1, 'name': 'alex'}
def test_get_tenant(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) session.add(Tenant(name='fabio')) session.commit() # response = client.get("/tenants/1") assert response.status_code == 200 assert response.json() == {"id": 1, "name": "fabio"}
def test_get_routing_groups(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.routing_group import RoutingGroup session = SessionLocal(bind=app.engine) session.add(RoutingGroup(routing_rule=1, tenant_id=1)) session.commit() # response = client.get("/routing_groups/") assert response.status_code == 200 assert response.json() == [{"id": 1, "routing_rule": 1, "tenant_id": 1}]
def test_get_carriers(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier import Carrier session = SessionLocal(bind=app.engine) session.add(Carrier(name='carrier1', tenant_id=1)) session.commit() # response = client.get("/carriers/") assert response.status_code == 200 assert response.json() == [{'id': 1, 'name': 'carrier1', 'tenant_id': 1}]
def test_delete_tenant(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio', uuid="fc8faf32-1bf8-47a4-9d82-f369799b3006") session.add(tenant) session.commit() # response = client.delete("/1.0/tenants/%s" % tenant.uuid) assert response.status_code == 200 assert response.json() == {'uuid': str(tenant.uuid), 'name': 'fabio'}
def test_delete_tenant(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") session.add(tenant) session.commit() # response = client_auth_with_token.delete("/1.0/tenants/%s" % tenant.uuid) assert response.status_code == 200 assert response.json() == {'uuid': str(tenant.uuid), 'name': 'fabio'}
def test_create_duplicated_tenant(app, client): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app.engine) session.add(Tenant(name='fabio', uuid="fc8faf32-1bf8-47a4-9d82-f369799b3006")) session.commit() # response = client.post( "/1.0/tenants", json={"name": "fabio", "uuid": "0da63438-02a2-47c3-b05d-344d5d16cef7"}, ) assert response.status_code == 409
def test_create_duplicated_tenant(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant session = SessionLocal(bind=app_auth.engine) session.add(Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff")) session.commit() # response = client_auth_with_token.post( "/1.0/tenants", json={"name": "fabio", "uuid": "0da63438-02a2-47c3-b05d-344d5d16cef7"}, ) assert response.status_code == 409
def test_update_ipbx(app_auth, client_auth_with_token): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.ipbx import IPBX from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.tenant import Tenant tenant = Tenant(name='fabio', uuid="ffffffff-ffff-4c1c-ad1c-ffffffffffff") tenant_2 = Tenant(name='sileht', uuid='ff69a896-8025-4b0c-993e-1ee6449091c5') domain = Domain(domain='testdomain.com', tenant=tenant) domain_2 = Domain(domain='otherdomain.com', tenant=tenant_2) ipbx = IPBX( tenant=tenant, domain=domain, customer=1, ip_fqdn='mypbx.com', ip_address="10.0.0.1", registered=True, username='******', password='******', realm='realm', ) session = SessionLocal(bind=app_auth.engine) session.add_all([tenant, tenant_2, domain, domain_2, ipbx]) session.commit() # response = client_auth_with_token.put( "/1.0/ipbxs/%s" % ipbx.id, json={ 'ip_fqdn': 'mypbx2.com', 'tenant_uuid': str(tenant_2.uuid), 'domain_id': domain_2.id, 'username': '******', 'password': '******', 'registered': False, }, ) assert response.status_code == 200 assert response.json() == { "id": ipbx.id, "customer": 1, "normalization_profile_id": None, "ip_fqdn": "mypbx2.com", "port": 5060, "ip_address": "10.0.0.1", "domain_id": domain_2.id, "tenant_uuid": str(tenant_2.uuid), "registered": False, "username": "******", "realm": "realm", }
def test_create_duplicated_carrier(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.carrier import Carrier session = SessionLocal(bind=app.engine) session.add(Carrier(name='carrier1', tenant_id=1)) session.commit() # response = client.post("/carriers/", json={ "name": "carrier1", "tenant_id": 1 }) assert response.status_code == 400
def test_kamailio_routing_with_no_matching_ipbx(app=None, client=None): from wazo_router_confd.database import SessionLocal from wazo_router_confd.models.tenant import Tenant from wazo_router_confd.models.domain import Domain from wazo_router_confd.models.ipbx import IPBX session = SessionLocal(bind=app.engine) tenant = Tenant(name='fabio') domain = Domain(domain='testdomain.com', tenant=tenant) ipbx = IPBX( customer=1, ip_fqdn='mypbx.com', domain=domain, registered=True, username='******', sha1='da39a3ee5e6b4b0d3255bfef95601890afd80709', sha1b='f10e2821bbbea527ea02200352313bc059445190', tenant=tenant, ) session.add_all([tenant, domain, ipbx]) session.commit() # request_from_name = "From name" request_from_uri = "*****@*****.**" request_from_tag = "from_tag" request_to_name = "to name" request_to_uri = "*****@*****.**" request_to_tag = "to_tag" # response = client.post( "/kamailio/routing", json={ "event": "sip-routing", "source_ip": "10.0.0.1", "source_port": 5060, "call_id": "call-id", "from_name": request_from_name, "from_uri": request_from_uri, "from_tag": request_from_tag, "to_uri": request_to_uri, "to_name": request_to_name, "to_tag": request_to_tag, }, ) assert response.status_code == 200 assert response.json() == { "version": "1.0", "routing": "serial", "routes": [] }