def test_after_setting_service_id_that_inbound_number_is_unavailable( notify_db, notify_db_session, sample_inbound_numbers): service = create_service(service_name='test service') numbers = dao_get_available_inbound_numbers() assert len(numbers) == 1 dao_set_inbound_number_to_service(service.id, numbers[0]) res = dao_get_available_inbound_numbers() assert len(res) == 0
def test_get_available_inbound_numbers(notify_db, notify_db_session): inbound_number = create_inbound_number(number='1') res = dao_get_available_inbound_numbers() assert len(res) == 1 assert res[0] == inbound_number
def test_dao_add_inbound_number(notify_db_session): inbound_number = '12345678901' dao_add_inbound_number(inbound_number) res = dao_get_available_inbound_numbers() assert len(res) == 1 assert res[0].number == inbound_number assert res[0].provider == 'pinpoint'
def test_set_service_id_on_inbound_number(notify_db, notify_db_session, sample_inbound_numbers): service = create_service(service_name='test service') numbers = dao_get_available_inbound_numbers() dao_set_inbound_number_to_service(service.id, numbers[0]) res = InboundNumber.query.filter(InboundNumber.service_id == service.id).all() assert len(res) == 1 assert res[0].service_id == service.id
def test_dao_allocating_inbound_number_shows_on_service(notify_db_session): create_service_with_inbound_number() create_inbound_number(number='07700900003') inbound_numbers = dao_get_available_inbound_numbers() service = create_service(service_name='test service') dao_set_inbound_number_to_service(service.id, inbound_numbers[0]) assert service.inbound_number.number == inbound_numbers[0].number
def test_setting_a_service_twice_will_raise_an_error(notify_db, notify_db_session): create_inbound_number(number='1') create_inbound_number(number='2') service = create_service(service_name='test service') numbers = dao_get_available_inbound_numbers() dao_set_inbound_number_to_service(service.id, numbers[0]) with pytest.raises(IntegrityError) as e: dao_set_inbound_number_to_service(service.id, numbers[1]) assert 'duplicate key value violates unique constraint' in str(e.value)
def get_available_inbound_numbers(): inbound_numbers = [ i.serialize() for i in dao_get_available_inbound_numbers() ] return jsonify(data=inbound_numbers if inbound_numbers else [])