def put(self): """Creates a new task.""" task = self.request.body m = mjson.json2model(Task, task) saved_key = task_dao.Save(m) self.response.write(saved_key)
def test_model_2_json_enum_fields(self): """enum filed tests.""" model = Task() model.status = 'actionable' model.title = 'title' json_string = mjson.model2json(model) self.assertEqual('{"status": "actionable", "title": "title"}', json_string) parsed_model = mjson.json2model(Task, json_string) self.assertEqual(model, parsed_model)
def test_model_2_json_simple_fields(self): """simple json test.""" model = Task() model.status = 'actionable' model.title = 'title' model.created_at = datetime.utcfromtimestamp(1390576468) json_string = mjson.model2json(model) self.assertIsNotNone(json_string, 'message is none') self.assertEquals( '{"created_at": 1390576468, "status": "actionable", ' + '"title": "title"}', json_string) parsed_model = mjson.json2model(Task, json_string) self.assertEqual(model, parsed_model)
def test_model_2_json_repeated_structure(self): """repeated message test.""" model = Task() model.status = 'actionable' model.title = 'title' model.notes.append(TaskNote(text="text1")) model.notes.append(TaskNote(text="text2")) json_string = mjson.model2json(model) self.assertIsNotNone(json_string) self.assertEqual('{' + '"notes": [{"text": "text1"}, {"text": "text2"}], ' + '"status": "actionable", ' + '"title": "title"}', json_string) parsed_model = mjson.json2model(Task, json_string) self.assertEqual(model, parsed_model)
def test_model_2_json_repeated_fields(self): """Repeated field test.""" model = Task() model.status = 'actionable' model.title = 'title' model.tags.append("path.context1") model.tags.append("path.context2") json_string = mjson.model2json(model) self.assertIsNotNone(json_string) self.assertEqual('{"status": "actionable", ' + '"tags": ["path.context1", "path.context2"], ' + '"title": "title"}', json_string) parsed_model = mjson.json2model(Task, json_string) self.assertEqual(model, parsed_model)
def post(self): """Update task status and append notes.""" task = self.request.body m = mjson.json2model(Task, task) logging.info("get task update: %s", m.to_dict()) # Get stored one from db saved = m.key.get() saved.priority = m.priority saved.title = m.title saved.status = m.status saved.project = m.project saved.tags = m.tags if saved.notes[-1].text != m.notes[0].text: saved.notes.append(m.notes[0]) saved.put()
def post(self): project = self.request.body m = mjson.json2model(Project, project) logging.info("get project: %s", m.to_dict()) saved = project_dao.add(m.project_name) self.response.write(mjson.model2json(saved))
def post(self): tag = self.request.body m = mjson.json2model(Tag, tag) logging.info("get tag: %s", m.to_dict()) saved = tag_dao.add_tag(m.tag_name) self.response.write(mjson.model2json(saved))