Refactored UT's fixtures to be on separate files and renamed folders/fixture to be more precise

This commit is contained in:
VakarisZ 2021-05-18 15:38:07 +03:00
parent 3205d8344c
commit a4a0aba0fe
13 changed files with 65 additions and 49 deletions

View File

@ -9,43 +9,8 @@ sys.path.insert(0, MONKEY_BASE_PATH)
@pytest.fixture(scope="session")
def resources_dir(pytestconfig):
return os.path.join(pytestconfig.rootdir, "monkey", "tests", "resources")
@pytest.fixture(scope="session")
def environment_resources_dir(resources_dir):
return os.path.join(resources_dir, "environment")
@pytest.fixture(scope="session")
def with_credentials(environment_resources_dir):
return os.path.join(environment_resources_dir, "server_config_with_credentials.json")
@pytest.fixture(scope="session")
def no_credentials(environment_resources_dir):
return os.path.join(environment_resources_dir, "server_config_no_credentials.json")
@pytest.fixture(scope="session")
def partial_credentials(environment_resources_dir):
return os.path.join(environment_resources_dir, "server_config_partial_credentials.json")
@pytest.fixture(scope="session")
def standard_with_credentials(environment_resources_dir):
return os.path.join(environment_resources_dir, "server_config_standard_with_credentials.json")
@pytest.fixture(scope="session")
def server_config_resources_dir(resources_dir):
return os.path.join(resources_dir, "server_configs")
@pytest.fixture(scope="session")
def test_server_config(server_config_resources_dir):
return os.path.join(server_config_resources_dir, "test_server_config.json")
def mocked_data_dir(pytestconfig):
return os.path.join(pytestconfig.rootdir, "monkey", "tests", "mocked_data")
@pytest.fixture

View File

@ -2,5 +2,8 @@
"environment" : {
"server_config": "password",
"deployment": "develop"
},
"mongodb": {
"start_mongodb": true
}
}

View File

@ -3,5 +3,8 @@
"server_config": "password",
"deployment": "develop",
"user": "test"
},
"mongodb": {
"start_mongodb": true
}
}

View File

@ -2,5 +2,8 @@
"environment" : {
"server_config": "standard",
"deployment": "develop"
},
"mongodb": {
"start_mongodb": true
}
}

View File

@ -5,5 +5,8 @@
"deployment": "develop",
"user": "test",
"password_hash": "abcdef"
},
"mongodb": {
"start_mongodb": true
}
}

View File

@ -4,5 +4,8 @@
"deployment": "develop",
"user": "test",
"password_hash": "abcdef"
},
"mongodb": {
"start_mongodb": true
}
}

View File

@ -0,0 +1,23 @@
import os
import pytest
@pytest.fixture(scope="module")
def with_credentials(mocked_server_configs_dir):
return os.path.join(mocked_server_configs_dir, "server_config_with_credentials.json")
@pytest.fixture(scope="module")
def no_credentials(mocked_server_configs_dir):
return os.path.join(mocked_server_configs_dir, "server_config_no_credentials.json")
@pytest.fixture(scope="module")
def partial_credentials(mocked_server_configs_dir):
return os.path.join(mocked_server_configs_dir, "server_config_partial_credentials.json")
@pytest.fixture(scope="module")
def standard_with_credentials(mocked_server_configs_dir):
return os.path.join(mocked_server_configs_dir, "server_config_standard_with_credentials.json")

View File

@ -27,7 +27,7 @@ FULL_USER_CREDENTIALS = UserCreds(username="test", password_hash="1231234")
# This fixture is a dirty hack that can be removed once these tests are converted from
# unittest to pytest. Instead, the appropriate fixtures from conftest.py can be used.
@pytest.fixture(scope="module", autouse=True)
def configure_resources(environment_resources_dir):
def configure_resources(mocked_server_configs_dir):
global WITH_CREDENTIALS
global NO_CREDENTIALS
global PARTIAL_CREDENTIALS
@ -35,16 +35,16 @@ def configure_resources(environment_resources_dir):
global STANDARD_ENV
WITH_CREDENTIALS = os.path.join(
environment_resources_dir, "server_config_with_credentials.json"
mocked_server_configs_dir, "server_config_with_credentials.json"
)
NO_CREDENTIALS = os.path.join(environment_resources_dir, "server_config_no_credentials.json")
NO_CREDENTIALS = os.path.join(mocked_server_configs_dir, "server_config_no_credentials.json")
PARTIAL_CREDENTIALS = os.path.join(
environment_resources_dir, "server_config_partial_credentials.json"
mocked_server_configs_dir, "server_config_partial_credentials.json"
)
STANDARD_WITH_CREDENTIALS = os.path.join(
environment_resources_dir, "server_config_standard_with_credentials.json"
mocked_server_configs_dir, "server_config_standard_with_credentials.json"
)
STANDARD_ENV = os.path.join(environment_resources_dir, "server_config_standard_env.json")
STANDARD_ENV = os.path.join(mocked_server_configs_dir, "server_config_standard_env.json")
def get_tmp_file():

View File

@ -8,20 +8,20 @@ PLAINTEXT = "Hello, Monkey!"
CYPHERTEXT = "vKgvD6SjRyIh1dh2AM/rnTa0NI/vjfwnbZLbMocWtE4e42WJmSUz2ordtbQrH1Fq"
def test_aes_cbc_encryption(resources_dir):
initialize_encryptor(resources_dir)
def test_aes_cbc_encryption(mocked_data_dir):
initialize_encryptor(mocked_data_dir)
assert get_encryptor().enc(PLAINTEXT) != PLAINTEXT
def test_aes_cbc_decryption(resources_dir):
initialize_encryptor(resources_dir)
def test_aes_cbc_decryption(mocked_data_dir):
initialize_encryptor(mocked_data_dir)
assert get_encryptor().dec(CYPHERTEXT) == PLAINTEXT
def test_aes_cbc_enc_dec(resources_dir):
initialize_encryptor(resources_dir)
def test_aes_cbc_enc_dec(mocked_data_dir):
initialize_encryptor(mocked_data_dir)
assert get_encryptor().dec(get_encryptor().enc(PLAINTEXT)) == PLAINTEXT

View File

@ -0,0 +1,13 @@
import os
import pytest
@pytest.fixture(scope="module")
def mocked_server_configs_dir(mocked_data_dir):
return os.path.join(mocked_data_dir, "server_configs")
@pytest.fixture(scope="module")
def test_server_config(mocked_server_configs_dir):
return os.path.join(mocked_server_configs_dir, "test_server_config.json")