def questions(): try: if request.method == 'POST': app.logger.debug("request:form {}".format( json.dumps(request.get_json()))) question_text = request.json["question_text"] pub_date = datetime.strptime(request.json['pub_date'], '%Y-%m-%d') question = Question(question_text=question_text, pub_date=pub_date) question.save() resp = { 'question_text': question.question_text, 'id': question.id, 'pub_date': question.pub_date.strftime('%Y-%m-%d') } return json.dumps(resp) if request.method == 'GET': questions = Question.select() l = [] for question in questions: l.append({ 'question_text': question.question_text, 'id': question.id, 'pub_date': question.pub_date.strftime('%Y-%m-%d') }) return json.dumps(l) except Exception as ex: app.logger.error("questions {}".format(repr(ex))) raise ex
def test_given_test_data_set_up_when_get_questions_then_empty_json_array_response( self): test_date = datetime.datetime.now().date() question = Question(question_text="test question", pub_date=test_date) question.save() rv = self.client.get('/polls/questions/') self.assertEqual( json.dumps([{ "question_text": "test question", "id": 1, "pub_date": str(test_date) }]), rv.data.decode())