def update(self, request): """Get a shelf using location to update its properties.""" self.check_xsrf_token(self.request_state) user_email = user.get_user_email() shelf = get_shelf(request.shelf_request) kwargs = api_utils.to_dict(request, shelf_model.Shelf) shelf.edit(user_email=user_email, **kwargs) return message_types.VoidMessage()
def test_list_devices_with_filter_message(self): message = device_message.Device(enrolled=True, device_model='HP Chromebook 13 G1', current_ou='/') filters = api_utils.to_dict(message, device_model.Device) request = device_message.Device(**filters) response = self.service.list_devices(request) self.assertEqual(1, len(response.devices)) self.assertEqual(response.devices[0].serial_number, '6789')
def test_to_dict(self): """Test that a dictionary is build from a ProtoRPC message.""" message = shelf_messages.Shelf( location='NY', capacity=50, friendly_name='The_Big_Apple', audit_requested=False, responsible_for_audit='daredevils', last_audit_by=loanertest.USER_EMAIL, enabled=True) expected_dict = { 'location': 'NY', 'capacity': 50, 'friendly_name': 'The_Big_Apple', 'audit_requested': False, 'responsible_for_audit': 'daredevils', 'last_audit_by': loanertest.USER_EMAIL, 'enabled': True} filters = api_utils.to_dict(message, shelf_model.Shelf) self.assertEqual(filters, expected_dict)
def patch(self, request): """Patch a given survey question.""" self.check_xsrf_token(self.request_state) question = api_utils.get_ndb_key( urlsafe_key=request.question_urlsafe_key).get() answers = [] for answer in request.answers: try: new_answer = survey_models.Answer.create( text=answer.text, more_info_enabled=answer.more_info_enabled, placeholder_text=answer.placeholder_text) answers.append(new_answer) except ValueError as e: raise endpoints.BadRequestException(e.message) survey_kwargs = api_utils.to_dict(request, survey_models.Question) survey_kwargs['answers'] = answers question.patch(**survey_kwargs) return message_types.VoidMessage()
def test_list_devices_with_filter_message(self): message = device_messages.Device(enrolled=True, device_model='HP Chromebook 13 G1', current_ou='/') filters = api_utils.to_dict(message, device_model.Device) request = device_messages.Device(**filters) response = self.service.list_devices(request) expected_response = device_messages.ListDevicesResponse( devices=[ device_messages.Device(serial_number='6789', identifier='6789', enrolled=True, device_model='HP Chromebook 13 G1', current_ou='/', locked=False, lost=False, chrome_device_id='unique_id_2', damaged=False, guest_permitted=True) ], has_additional_results=False) self.assertEqual(response, expected_response)
def test_to_dict(self, message, expected_dict): """Test that a dictionary is build from a ProtoRPC message.""" filters = api_utils.to_dict(message, shelf_model.Shelf) self.assertEqual(filters, expected_dict)