def test_room_model_to_dict(): init_dict = { "code": uuid.uuid4(), "size": 200, "price": 10, "longitude": -0.09998975, "latitude": 51.754636293, } room = Room.from_dict(init_dict) assert room.to_dict() == init_dict
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]
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"
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
def list(self): return [Room.from_dict(i) for i in self.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 __init__(self, data): self.data = [Room.from_dict(i) for i in data]