コード例 #1
0
def validate_input():
    """This method returns the result as sanitized or unsantized for valid input.

    Returns
    -------
    boolean

        {"result": "sanitized"}
        {"result": "unsanitized"}
    """
    try:
        content = request.json
    except Exception as err:
        # throws an error if input in not valid json
        print(err)
        return error_message("BAD_REQUEST")

    is_valid_key = key_exists("payload", content)
    if is_valid_key is False:
        return error_message("MISSING_PAYLOAD")

    if is_valid_input(content["payload"]):
        is_sanitized = compare_input(content["payload"])

        if (is_sanitized):
            # print(is_valid_key)
            return jsonify({"result": "sanitized"})
        else:
            return jsonify({"result": "unsanitized"})
    else:
        return error_message()
コード例 #2
0
 def test_validate_input_invalid_input(self):
     with app.app_context():
         resp = self.client.post('/api/v1/sanitized/input/',
                                 data=json.dumps(dict(payload=99)),
                                 content_type='application/json')
         self.assertEqual(resp.status_code, 400)
         self.assertEqual(str(resp.get_data(), 'utf-8'), error_message()[0])
コード例 #3
0
 def test_error_message_invalid_input(self):
     expected = "Invalid Input. Please verify your Input", 400
     actual = error_message("")
     self.assertEqual(actual, expected)
コード例 #4
0
 def test_error_message_bad_request(self):
     expected = "Bad Request. Please verify your Input", 400
     actual = error_message("BAD_REQUEST")
     self.assertEqual(actual, expected)
コード例 #5
0
 def test_error_message_missing_payload(self):
     expected = "Invalid Input. Request is missing \"payload\".", 400
     actual = error_message("MISSING_PAYLOAD")
     self.assertEqual(actual, expected)