| import os |
| import shutil |
| from glob import glob |
|
|
| from src.tests.utils import run_entry_point, setup_mocker_patches |
|
|
|
|
| def read_file(path): |
| with open(path) as file: |
| return file.read() |
|
|
|
|
| def run_sample(mocker, sample_path): |
| setup_mocker_patches(mocker) |
|
|
| input_path = os.path.join("samples", sample_path) |
| output_dir = os.path.join("outputs", sample_path) |
| if os.path.exists(output_dir): |
| print( |
| f"Warning: output directory already exists: {output_dir}. This may affect the test execution." |
| ) |
|
|
| run_entry_point(input_path, output_dir) |
|
|
| sample_outputs = extract_sample_outputs(output_dir) |
|
|
| print(f"Note: removing output directory: {output_dir}") |
| shutil.rmtree(output_dir) |
|
|
| return sample_outputs |
|
|
|
|
| EXT = "*.csv" |
|
|
|
|
| def extract_sample_outputs(output_dir): |
| sample_outputs = {} |
| for _dir, _subdir, _files in os.walk(output_dir): |
| for file in glob(os.path.join(_dir, EXT)): |
| relative_path = os.path.relpath(file, output_dir) |
| sample_outputs[relative_path] = read_file(file) |
| return sample_outputs |
|
|
|
|
| def test_run_answer_key_using_csv(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "answer-key/using-csv") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_answer_key_weighted_answers(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "answer-key/weighted-answers") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample1(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample1") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample2(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample2") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample3(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample3") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample4(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample4") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample5(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample5") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_sample6(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "sample6") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_Antibodyy(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/Antibodyy") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_ibrahimkilic(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/ibrahimkilic") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_Sandeep_1507(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/Sandeep-1507") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_Shamanth(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/Shamanth") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_UmarFarootAPS(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/UmarFarootAPS") |
| assert snapshot == sample_outputs |
|
|
|
|
| def test_run_community_UPSC_mock(mocker, snapshot): |
| sample_outputs = run_sample(mocker, "community/UPSC-mock") |
| assert snapshot == sample_outputs |
|
|