def test_get_auth_token_route_ok(app, mocker, client): expected_status = 200 expected_r_expiration = 14400 expected_r_user_id = 2 expected_r_username = "******" # mock db query query_mock = mocker.patch('flask_sqlalchemy._QueryProperty.__get__') # mock app key authorization db query query_mock.return_value \ .filter.return_value \ .one.return_value = AppKey() role1 = Role() role1.id = 1 role1.name = 'USER' role1.password_reset_days = 365 role1.password_policy = True role1.password_reuse_history = 10 user2 = User() user2.id = 2 user2.username = expected_r_username user2.password = "******" user2.roles = [role1] # mock user login db query query_mock.return_value \ .filter.return_value \ .first.return_value = user2 db_mock = mocker.patch('modules.users.authentication.db') db_mock.add.return_value = None db_mock.commit.return_value = None # mock user login auth_mock = mocker.patch('modules.users.Authentication.is_account_locked') auth_mock.return_value = False credentials = base64.b64encode( 'user2:user2pass'.encode('ascii')).decode('utf-8') response = client.get("/token?app_key=123", headers={"Authorization": f"Basic {credentials}"}) assert response.status_code == expected_status assert response.json['expiration'] == expected_r_expiration assert response.json['user_id'] == expected_r_user_id assert response.json['username'] == expected_r_username assert 'token' in response.json
def test_user_check_password_fail(app): user = User() user.password = '******' assert not user.check_password('testPass2')
def test_user_check_password_pass(app): user = User() user.password = '******' assert user.check_password('testPass1')