From 1c1d6a17ef402f81ba8b579c7a737c84ed7f4380 Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Sat, 30 Sep 2017 08:43:09 -0700 Subject: [PATCH] Basic validation for a board --- tictactoe.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/tictactoe.py b/tictactoe.py index 0ea9fd9..708c9fc 100644 --- a/tictactoe.py +++ b/tictactoe.py @@ -1,7 +1,23 @@ -from flask import Flask +from flask import Flask, abort, request app = Flask(__name__) @app.route('/') def hello(): - return 'Hello!' + board = _get_board_or_abort() + return board + +def _get_board_or_abort(): + ''' + Get the board from the request, or abort the request with a 400 error. + ''' + board = request.args.get('board', None) + is_valid = all( + board is not None, # 'board' var must exist. + len(board) >= 9, # Board should be at least 9 characters long. + ) + + if not is_valid: + abort(400) + + return board