コード例 #1
0
def create_account():
    if not request.is_json:
        abort(400)

    obj = pySql()
    json_obj = request.get_data()
    decode_data = json_obj.decode('utf-8')
    try:
        to_dict = ast.literal_eval(decode_data)
    except SyntaxError as e:
        return e.text + 'Following field has wrong value'

    values = list(to_dict.values())
    table = 'users'
    columns = ['login', 'password', 'first_name', 'last_name']

    try:
        if all(x in columns for x in list(to_dict.keys())):
            obj_val = UserValidation(to_dict)
            val = obj_val.validation()
            if val is None:
                results = obj.insert_data_to_db(table, columns, values)
            else:
                return str(val)
        else:
            results = "There is no mandatory field(s): " + str(
                set(columns) - set(to_dict.keys()))
    except pymysql.InternalError:
        return codes["code_3"]

    return str(results)
コード例 #2
0
ファイル: test_db_insert_data.py プロジェクト: bezumka/API
    def test_insert_user_to_db(self):
        obj = pySql()
        table = 'users'
        values = [Utilities.random_string(8)]
        columns = obj.get_column_names('select * from users')
        for i in range(len(columns) - 2):
            values.append('')

        result = obj.insert_data_to_db(table, columns[1:], values)
        self.assertEqual(result, 'Success Code: The HTTP 200 OK', msg='Wrong error message')
コード例 #3
0
def get_user_data():
    cookies = request.headers.get('Authorization')
    if cookies is None:
        return jsonify({"message":
                        "You are unauthorized to access this page"}), 300

    obj = pySql()
    json_obj = request.get_data()
    decode_data = json_obj.decode('utf-8')
    to_dict = ast.literal_eval(decode_data)

    if 'FirstName' in to_dict.keys():
        # login_name = (to_dict.get('FirstName'))
        user_result = obj.call_procedure('user',
                                         ((to_dict.get('FirstName')), ))
        # user_result = obj.smart_query_full('call user("' + login_name + '")')
    else:
        user_result = 'There is no mandatory field: FirstName'
    return user_result
コード例 #4
0
ファイル: test_select_from_users.py プロジェクト: bezumka/API
 def test_no_duplicates_in_db(self):
     obj = pySql()
     result = obj.smart_query('select * from users where login = "******"')
     self.assertEqual(len(result), 1)
コード例 #5
0
ファイル: test_select_from_users.py プロジェクト: bezumka/API
 def test_select_user_from_db(self):
     sting = ('admin', 'admin', 'Vasya', 'Pupkin')
     obj = pySql()
     result = obj.smart_query('select * from users where login = "******"')
     self.assertEqual(result[0], sting, msg='User not found or has wrong data')
コード例 #6
0
ファイル: auth_config.py プロジェクト: bezumka/API
def get_admin_cred():
    obj = pySql()
    query = obj.smart_query_full("select * from admin;")
    return query