def post_comment(token_data): '''comment投稿 Args: text: コメントテキスト thread_id: スレッドID Returns: 200: 正常終了 list(dict): comment情報のリスト 500: サーバエラー ''' try: params = request.json user_id = token_data.get('user_id') user = User.get(user_id=user_id) params.update({'user_id': user_id, 'name': user.get('nick_name')}) # comment作成 Comment.post(params) # comment追加後,thread_idに紐づく thread = Thread.get(thread_id=params.get('thread_id')) result = thread.get('comments') return make_response(jsonify(result), 201) except Exception as e: if str(e) == 'over text length': result = {'error_message': 'テキストが長すぎます'} return make_response(jsonify(result), 400) return make_response('', 500)
def test_delete(self): '''thread削除 ''' self.load_fixtures() thread = Thread() thread.delete(1) actual = thread.get(1) self.assertEqual(None, actual)
def post(token_data): '''threadを作成 Args: title: スレッドタイトル category_id: カテゴリID comment_text: 1コメ Returns: dict: 作成されたthread情報 ''' try: params = request.json new_thread = Thread.post( title=params.get('title'), category_id=params.get('category_id') ) user_id = token_data.get('user_id') user = User.get(user_id) data = { 'name': user.get('nick_name'), 'thread_id': new_thread.get('thread_id'), 'text': params.get('comment_text'), 'user_id': user_id, } Comment.post(data) result = Thread.get(new_thread.get('thread_id')) return jsonify(result) except Exception as e: if str(e) == 'over title length': result = { 'error_message': 'タイトルが長すぎます' } return make_response(jsonify(result), 400) return make_response('', 500)
def test_get(self): '''thread_idに紐づくthread取得 ''' self.load_fixtures() thread = Thread() actual = thread.get(1) expect = { 'thread': self.filter_test_data(table='thread', field='thread_id', target=[1])[0], 'comments': self.filter_test_data(table='comment', field='thread_id', target=[1]) } self.assertDictEqual(expect, actual)
def get(thread_id): '''thread_idからthread情報取得 Args: thread_id: スレッドID Returns: 200: dict: thread: thread情報 comments: list(dict) comment情報のリスト 400: threadが存在しない場合 500: サーバエラnー ''' try: result = Thread.get(thread_id) if not result: return make_response('', 400) return jsonify(result) except Exception as e: return make_response('', 500)