def domain_rooms(): room_1 = Room( code=uuid.uuid4(), size=215, price=39, longitude=-0.09998975, latitude=51.75436293, ) room_2 = Room( code=uuid.uuid4(), size=405, price=66, longitude=0.18228006, latitude=51.74640997, ) room_3 = Room( code=uuid.uuid4(), size=56, price=60, longitude=0.27891577, latitude=51.45994069, ) room_4 = Room( code=uuid.uuid4(), size=93, price=48, longitude=0.33894476, latitude=51.39916678, ) return [room_1, room_2, room_3, room_4]
def test_room_model_comparison(room_dict): code = uuid.uuid4() rd = room_dict(code) room1 = Room.from_dict(rd) room2 = Room.from_dict(rd) assert room1 == room2
def test_room_model_comparison(): room_dict = { 'code': uuid.uuid4(), 'size': 200, 'price': 10, 'longitude': -0.09998975, 'latitude': 51.75436293 } room1 = Room.from_dict(room_dict) room2 = Room.from_dict(room_dict) assert room1 == room2
def test_room_model_comparison(): init_dict = { "code": uuid.uuid4(), "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293 } room1 = Room.from_dict(init_dict) room2 = Room.from_dict(init_dict) assert room1 == room2
def test_room_model_from_dict(room_dict): code = uuid.uuid4() room = Room.from_dict(room_dict(code)) assert room.code == code assert room.size == 200 assert room.price == 10 assert room.longitude == -0.09998975 assert room.latitude == 51.7546293
def test_room_model_to_dict(): room_dict = { 'code': uuid.uuid4(), 'size': 200, 'price': 10, 'longitude': -0.09998975, 'latitude': 51.75436293 } room = Room.from_dict(room_dict) assert room.to_dict() == room_dict
def test_room_model_init(): code = uuid.uuid4() room = Room(code, size=200, price=10, longitude=-0.09998975, latitude=51.75436293) assert room.code == code assert room.size == 200 assert room.price == 10 assert room.longitude == -0.09998975 assert room.latitude == 51.75436293
def test_room_model_to_dict(): init_dict = { "code": uuid.uuid4(), "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293 } room = Room.from_dict(init_dict) assert room.to_dict() == init_dict
def test_serialize_domain_room(expected_json_factory): code = uuid.uuid4() size = 200 price = 10 longitude = -0.09998975 latitude = 51.75436293 room = Room(code, size, price, longitude, latitude) expected_json = expected_json_factory(code, size, price, longitude, latitude) json_room = json.dumps(room, cls=RoomJsonEncoder) assert json.loads(json_room) == json.loads(expected_json)
def test_create_room_from_dict(): code = uuid.uuid4() room = Room.from_dict({ 'code': code, 'size': 200, 'price': 10, 'longitude': -0.09998975, 'latitude': 51.75436293 }) assert room.code == code assert room.size == 200 assert room.price == 10 assert room.longitude == -0.09998975 assert room.latitude == 51.75436293
def test_room_model_from_dict(): code = uuid.uuid4() init_dict = { "code": code, "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293 } room = Room.from_dict(init_dict) assert room.code == code assert room.size == 200 assert room.price == 10 assert room.longitude == -0.09998975 assert room.latitude == 51.75436293
def list(self, filters=None): collection = self.db.rooms if filters is None: result = collection.find() else: mongo_filter = {} for key, value in filters.items(): key, operator = key.split('__') filter_value = mongo_filter.get(key, {}) if key == 'price': value = int(value) filter_value['${}'.format(operator)] = value mongo_filter[key] = filter_value result = collection.find(mongo_filter) return [Room.from_dict(d) for d in result]
def test_serialize_domain_room(): code = uuid.uuid4() room = Room(code=code, size=200, price=10, longitude=-0.09998975, latitude=51.75436293) expected_json = """ {{ "code": "{}", "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293 }} """.format(code) json_room = json.dumps(room, cls=RoomJsonEncoder) assert json.loads(json_room) == json.loads(expected_json)
def __init__(self, data): self.data = [Room.from_dict(i) for i in data]
def test_repository_list_without_parameters(room_dicts): repo = MemRepo(room_dicts) rooms = [Room.from_dict(i) for i in room_dicts] assert repo.list() == rooms
def list(self): return [Room.from_dict(i) for i in self.data]
def _rooms_factory(size, price, longitude, latitude, code=uuid.uuid4()): room = Room(code, size, price, longitude, latitude) return room
def test_room_model_to_dict(room_dict): code = uuid.uuid4() rd = room_dict(code) room = Room.from_dict(rd) assert room.to_dict() == rd
import json from unittest import mock from rentomatic.domain.room import Room from rentomatic.response_objects import response_objects as res room_dict = { "code": "3251a5bd-86be-428d-8ae9-6e51a8048c33", "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293, } room = Room.from_dict(room_dict) rooms = [room] @mock.patch("rentomatic.use_cases.room_list_use_case.RoomListUseCase") def test_get(mock_use_case, client): mock_use_case().execute.return_value = res.ResponseSuccess(rooms) http_response = client.get("/rooms") assert json.loads(http_response.data.decode("UTF-8")) == [room_dict] mock_use_case().execute.assert_called() args, kwargs = mock_use_case().execute.call_args assert args[0].filters == {} # args[0] is RequestObject assert http_response.status_code == 200 assert http_response.mimetype == "application/json"
import json from unittest import mock from rentomatic.domain.room import Room room_dict = { "code": "3251a5bd-86be-428d-8ae9-6e51a8048c33", "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.75436293, } rooms = [Room.from_dict(room_dict)] @mock.patch("application.rest.room.room_list_use_case") def test_get(mock_use_case, client): mock_use_case.return_value = rooms http_response = client.get("/rooms") assert json.loads(http_response.data.decode("UTF-8")) == [room_dict] mock_use_case.assert_called() assert http_response.status_code == 200 assert http_response.mimetype == "application/json"