Esempio n. 1
0
def test_model_profile_return_dict(app_context) -> NoReturn:
    with app_context:
        # Action
        save(
            CoffeeRoom(id='e3383c48-9b89-472f-9086-9cb21feaad7f',
                       name='CafeClub',
                       capacity=23))

        save(
            Convention(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='Hall',
                       capacity=23))

        profile = save(
            Profile(id='d74052ac-cf9f-4baa-a49a-3993cdf0e50f',
                    name='Jon',
                    last_name='Snow',
                    conventions_id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                    coffee_room_id='e3383c48-9b89-472f-9086-9cb21feaad7f'))

        # Assert
        assert isinstance(profile, Profile)
        assert profile.name == 'Jon'
        assert profile.last_name == 'Snow'
        assert profile.coffee_room_id == 'e3383c48-9b89-472f-9086-9cb21feaad7f'
        assert profile.conventions_id == '6b6ce977-1339-4461-9e7c-1a930a57dbdb'
Esempio n. 2
0
def test_profile_serialize(app_context) -> NoReturn:
    with app_context:
        save(
            CoffeeRoom(id='e3383c48-9b89-472f-9086-9cb21feaad7f',
                       name='CafeClub',
                       capacity=23))

        save(
            Convention(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='Hall',
                       capacity=23))

        profile = save(
            Profile(id='d74052ac-cf9f-4baa-a49a-3993cdf0e50f',
                    name='Jon',
                    last_name='Snow',
                    conventions_id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                    coffee_room_id='e3383c48-9b89-472f-9086-9cb21feaad7f'))

        profile_serialize = profile.serialize()

        assert profile_serialize == {
            'coffee_room_id': 'e3383c48-9b89-472f-9086-9cb21feaad7f',
            'conventions_id': '6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            'id': 'd74052ac-cf9f-4baa-a49a-3993cdf0e50f',
            'last_name': 'Snow',
            'name': 'Jon'
        }
Esempio n. 3
0
def test_create_profile(app_context, mocker) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='e3383c48-9b89-472f-9086-9cb21feaad7f',
                       name='CafeClub',
                       capacity=23))

        save(
            Convention(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='Hall',
                       capacity=23))

        mock_uuid = mocker.patch('app.profiles.actions.uuid4')
        mock_uuid.return_value = 'd74052ac-cf9f-4baa-a49a-3993cdf0e50f'
        # Action
        profile = create({
            "name":
            "Paul",
            "last_name":
            "Anka",
            "conventions_id":
            "6b6ce977-1339-4461-9e7c-1a930a57dbdb",
            "coffee_room_id":
            "e3383c48-9b89-472f-9086-9cb21feaad7f"
        })
        # Assert
        assert profile.id == 'd74052ac-cf9f-4baa-a49a-3993cdf0e50f'
        assert profile.name == 'Paul'
        assert profile.last_name == "Anka"
        assert profile.coffee_room_id == 'e3383c48-9b89-472f-9086-9cb21feaad7f'
        assert profile.conventions_id == '6b6ce977-1339-4461-9e7c-1a930a57dbdb'
Esempio n. 4
0
def test_get_by_id_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        id_coffee_room = "6b6ce977-1339-4461-9e7c-1a930a57dbdb"
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        test_client = app_context.app.test_client()

        request = test_client.get(f'/coffee-room/{id_coffee_room}')
        response = request.get_json()
        assert len(response) == 3
Esempio n. 5
0
def test_get_by_id_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        id_conventions = "6b6ce977-1339-4461-9e7c-1a930a57dbdb"
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Great Hall',
            capacity=23))
        test_client = app_context.app.test_client()

        request = test_client.get(f'/conventions/{id_conventions}')
        response = request.get_json()
        assert len(response) == 3
Esempio n. 6
0
def test_delete_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        # Action
        delete_coffee_room('6b6ce977-1339-4461-9e7c-1a930a57dbdb')

        # Assert
        coffee_room = get()
        assert len(coffee_room) == 0
Esempio n. 7
0
def test_delete_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Clubest',
            capacity=23))
        # Action
        delete_conventions('6b6ce977-1339-4461-9e7c-1a930a57dbdb')

        # Assert
        conventions = get()
        assert len(conventions) == 0
Esempio n. 8
0
def test_delete_coffee_room_with_id(app_context) -> NoReturn:
    with app_context:
        # Arrange
        id_coffee_room = "6b6ce977-1339-4461-9e7c-1a930a57dbdb"
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        test_client = app_context.app.test_client()
        # Action
        request = test_client.delete(f'/coffee-room/{id_coffee_room}')

        # Asserts
        assert request.status_code == 204
Esempio n. 9
0
def test_get_all_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        test_client = app_context.app.test_client()
        # Actions
        request = test_client.get('/coffee-room')

        response = request.get_json()
        # Assert
        assert len(response) == 1
Esempio n. 10
0
def test_delete_conventions_room_with_id(app_context) -> NoReturn:
    with app_context:
        # Arrange
        id_conventions = "6b6ce977-1339-4461-9e7c-1a930a57dbdb"
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Big Master Hall',
            capacity=100))
        test_client = app_context.app.test_client()
        # Action
        request = test_client.delete(f'/conventions/{id_conventions}')

        # Asserts
        assert request.status_code == 204
Esempio n. 11
0
def test_get_all_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Great Hall',
            capacity=23))
        test_client = app_context.app.test_client()
        # Actions
        request = test_client.get('/conventions')

        response = request.get_json()
        # Assert
        assert len(response) == 1
Esempio n. 12
0
def test_get_all_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        # Action
        coffee_room = get()

        # Assert
        assert isinstance(coffee_room, list)
        assert len(coffee_room) == 1
        assert isinstance(coffee_room[0], CoffeeRoom)
Esempio n. 13
0
def test_get_by_id_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Great Hall',
            capacity=23))
        # Action
        conventions = get_by_id('6b6ce977-1339-4461-9e7c-1a930a57dbdb')

        # Assert
        assert conventions.id == '6b6ce977-1339-4461-9e7c-1a930a57dbdb'
        assert conventions.name == 'Great Hall'
        assert conventions.capacity == 23
Esempio n. 14
0
def test_get_all_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Hall',
            capacity=23))
        # Action
        conventions = get()

        # Assert
        assert isinstance(conventions, list)
        assert len(conventions) == 1
        assert isinstance(conventions[0], Convention)
Esempio n. 15
0
def test_validates_update_conventions(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(Convention(
            id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
            name='Hall',
            capacity=23))
        # Action
        conventions = update('6b6ce977-1339-4461-9e7c-1a930a57dbdb', {'name': 'Best Hall', 'capacity': '50'})

        # Asserts

        assert conventions.name == 'Best Hall'
        assert conventions.capacity == 50
Esempio n. 16
0
def test_get_by_id_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        # Action
        coffee_room = get_by_id('6b6ce977-1339-4461-9e7c-1a930a57dbdb')

        # Assert
        assert coffee_room.id == '6b6ce977-1339-4461-9e7c-1a930a57dbdb'
        assert coffee_room.name == 'CafeClub'
        assert coffee_room.capacity == 23
Esempio n. 17
0
def test_validate_maximum_profiles_in_same_coffee_room(
        app_context) -> NoReturn:
    with app_context:
        save(
            CoffeeRoom(id='e3383c48-9b89-472f-9086-9cb21feaad7f',
                       name='CafeClub',
                       capacity=23))

        save(
            Convention(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='Hall',
                       capacity=23))

        save(
            Profile(id='d74052ac-cf9f-4baa-a49a-3993cdf0e50f',
                    name='Jon',
                    last_name='Snow',
                    conventions_id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                    coffee_room_id='e3383c48-9b89-472f-9086-9cb21feaad7f'))
        save(
            Profile(id='A74052ac-cf9f-4baa-a49a-3993cdf0e50t',
                    name='Hanna',
                    last_name='Barbara',
                    conventions_id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                    coffee_room_id='e3383c48-9b89-472f-9086-9cb21feaad7f'))

        with pytest.raises(BadRequestException) as ex:
            validate_maximum_profiles_in_same_coffee_room(
                'e3383c48-9b89-472f-9086-9cb21feaad7f', 1)

        assert (
            str(ex.value) ==
            '400 Bad Request: Maximum number of profiles in same coffee room.')
Esempio n. 18
0
def create(data: dict) -> List[Profile]:
    validate_name(data['name'])
    validate_capacity(data['capacity'])
    return save(
        CoffeeRoom(id=str(uuid4()),
                   name=data['name'],
                   capacity=data['capacity']))
Esempio n. 19
0
    def test_user_model_should_be_serialized(self):
        user = save(User(name='Jose', email='*****@*****.**'))
        json = user.serialize()

        self.assertEqual(json['id'], 1)
        self.assertEqual(json['name'], 'Jose')
        self.assertEqual(json['email'], '*****@*****.**')
Esempio n. 20
0
def create(data: dict) -> List[Convention]:
    validate_name(data['name'])
    validate_capacity(data['capacity'])
    return save(
        Convention(id=str(uuid4()),
                   name=data['name'],
                   capacity=data['capacity']))
Esempio n. 21
0
def create(data: dict) -> Provider:
    address = data.pop("address")
    provider = Provider(**data)
    ValidateAddress(address)
    provider_saved = save(provider)
    address.update({"provider_id": provider.id})
    create_address(address)
    return provider_saved
Esempio n. 22
0
def test_validates_update_coffee_room(app_context) -> NoReturn:
    with app_context:
        # Arrange
        save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        # Action
        coffee_room = update('6b6ce977-1339-4461-9e7c-1a930a57dbdb', {
            'name': 'Best Coffee',
            'capacity': '50'
        })

        # Asserts

        assert coffee_room.name == 'Best Coffee'
        assert coffee_room.capacity == 50
Esempio n. 23
0
def create(data: Dict[str, Union[bool, str]]) -> Address:
    return save(
        Address(street=data["street"],
                number=data["number"],
                complement=data["complement"],
                zip_code=data["zip_code"],
                city=data["city"],
                state=data["state"]))
Esempio n. 24
0
def create(data: dict):
    return save(
        Salesman(fantasy_name=data['fantasy_name'],
                 company_name=data['company_name'],
                 cnpj=data['cnpj'],
                 email=data['email'],
                 phone=data['phone'],
                 address=data['address']))
Esempio n. 25
0
def create(data: dict):
    return save(
        Marketplace(name=data['name'],
                    description=data['description'],
                    site=data['site'],
                    email=data['email'],
                    phone=data['phone'],
                    technical_contact=data['technical_contact']))
Esempio n. 26
0
def validating_if_the_category_name_already_exists_in_the_db(csv_file: StringIO, field: str,
                                                             list_of_names_saved_in_db: list,
                                                             new_categories_list: list) -> NoReturn:
    for category_csv in import_csv_file(csv_file, field):
        if category_csv[field] not in list_of_names_saved_in_db:
            try:
                new_categories_list.append(save(Category(name=category_csv[field])))
            except SQLAlchemyError:
                raise RepeatedDataError([category_csv[field]])
Esempio n. 27
0
def validating_if_the_product_sku_already_exists_in_the_db(
        csv_file: StringIO, field: str, list_of_sku_saved_in_db: List,
        new_products_list: List, product_id_list: List) -> NoReturn:
    for product_csv in import_product_csv_file(csv_file):
        if product_csv[field] not in list_of_sku_saved_in_db:
            try:
                new_products_list.append(save(Product(**product_csv)))
            except SQLAlchemyError:
                raise InvalidValueError(['sku'])
Esempio n. 28
0
def create(data: dict) -> List[Profile]:
    coffee_room = get_by_id_coffee_room(data['coffee_room_id'])
    _limite_coffee_room = coffee_room.capacity
    conventions = get_by_id_conventions(data['conventions_id'])
    _limite_conventions = conventions.capacity
    validate_name(data['name'])
    validate_last_name(data['last_name'])
    validate_maximum_profiles_in_same_conventions_room(data['conventions_id'], _limite_conventions)
    validate_maximum_profiles_in_same_coffee_room(data['coffee_room_id'], _limite_coffee_room)
    return save(Profile(id=str(uuid4()), name=data['name'], last_name=data['last_name'],
                        conventions_id=data['conventions_id'], coffee_room_id=data['coffee_room_id']))
Esempio n. 29
0
def test_model_conventions_return_dict(app_context) -> NoReturn:
    with app_context:
        # Action
        conventions = save(
            Convention(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='Conventions Hall',
                       capacity=23))
        # Assert
        assert isinstance(conventions, Convention)
        assert conventions.name == 'Conventions Hall'
        assert conventions.capacity == 23
Esempio n. 30
0
def test_model_coffe_room_return_dict(app_context) -> NoReturn:
    with app_context:
        # Action
        coffe_room = save(
            CoffeeRoom(id='6b6ce977-1339-4461-9e7c-1a930a57dbdb',
                       name='CafeClub',
                       capacity=23))
        # Assert
        assert isinstance(coffe_room, CoffeeRoom)
        assert coffe_room.name == 'CafeClub'
        assert coffe_room.capacity == 23