From 9d1fd33118cba8f19209560e367caa607796056a Mon Sep 17 00:00:00 2001 From: niekdejonge Date: Sun, 26 Nov 2023 17:39:22 +0100 Subject: [PATCH] Remove pickled embeddings from tests and update select_files_for_ms2query --- ms2query/ms2library.py | 3 +-- tests/conftest.py | 16 ------------ .../100_test_spectra_ms2ds_embeddings.pickle | Bin 321514 -> 0 bytes .../100_test_spectra_s2v_embeddings.pickle | Bin 9500 -> 0 bytes tests/test_library_files_creator.py | 24 ------------------ 5 files changed, 1 insertion(+), 42 deletions(-) delete mode 100644 tests/test_files/100_test_spectra_ms2ds_embeddings.pickle delete mode 100644 tests/test_files/100_test_spectra_s2v_embeddings.pickle diff --git a/ms2query/ms2library.py b/ms2query/ms2library.py index da726ad3..9c5c7cc2 100644 --- a/ms2query/ms2library.py +++ b/ms2query/ms2library.py @@ -386,8 +386,7 @@ def select_files_for_ms2query(file_names: List[str], files_to_select=None): """Selects the files needed for MS2Library based on their file extensions. """ dict_with_file_extensions = \ {"sqlite": ".sqlite", "s2v_model": ".model", "ms2ds_model": ".hdf5", - "ms2query_model": ".onnx", "s2v_embeddings": "s2v_embeddings.pickle", - "ms2ds_embeddings": "ms2ds_embeddings.pickle"} + "ms2query_model": ".onnx"} if files_to_select is not None: dict_with_file_extensions = {key: value for key, value in dict_with_file_extensions.items() if key in files_to_select} diff --git a/tests/conftest.py b/tests/conftest.py index ecd40d0f..7cea3296 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -112,19 +112,3 @@ def hundred_test_spectra(path_to_general_test_files): def expected_tanimoto_scores_df(path_to_general_test_files): return pd.read_csv(os.path.join(path_to_general_test_files, "tanimoto_scores_100_test_spectra.csv"), index_col=0) - - -@pytest.fixture(scope="package") -def expected_ms2ds_embeddings(path_to_general_test_files): - expected_embeddings = load_pickled_file(os.path.join( - path_to_general_test_files, - "100_test_spectra_ms2ds_embeddings.pickle")) - return expected_embeddings - - -@pytest.fixture(scope="package") -def expected_s2v_embeddings(path_to_general_test_files): - expected_embeddings = load_pickled_file(os.path.join( - path_to_general_test_files, - "100_test_spectra_s2v_embeddings.pickle")) - return expected_embeddings diff --git a/tests/test_files/100_test_spectra_ms2ds_embeddings.pickle b/tests/test_files/100_test_spectra_ms2ds_embeddings.pickle deleted file mode 100644 index e712e5adb30e32737207d3d4fb3e34a7c9195c8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 321514 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 PlN@YFqn~6xryL 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%0D`Y;yvBYX4FIe0n3}|l>a=4!+VW! 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 aK(7Ys8Wq{4Z`W>-eTT%1A2PIC$^QrN$ARSl diff --git a/tests/test_files/100_test_spectra_s2v_embeddings.pickle b/tests/test_files/100_test_spectra_s2v_embeddings.pickle deleted file mode 100644 index 4ed6e822849d05384b7f989dd0fc10c0f64e4e19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9500 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 ZY*rd{A5mspRI(^K4jxY`&d7?k_&-lRF|Yst diff --git a/tests/test_library_files_creator.py b/tests/test_library_files_creator.py index 34f74475..bb50b390 100644 --- a/tests/test_library_files_creator.py +++ b/tests/test_library_files_creator.py @@ -22,30 +22,6 @@ def test_give_already_used_file_name(tmp_path, path_to_general_test_files, hundr LibraryFilesCreator(hundred_test_spectra, tmp_path) -def test_create_ms2ds_embeddings(tmp_path, path_to_general_test_files, - hundred_test_spectra, - expected_ms2ds_embeddings, - ms2deepscore_model_file_name): - """Tests store_ms2ds_embeddings""" - library_spectra = [normalize_and_filter_peaks(s) for s in hundred_test_spectra if s is not None] - embeddings = create_ms2ds_embeddings(ms2ds_model=load_ms2ds_model(ms2deepscore_model_file_name), - list_of_spectra=library_spectra) - pd.testing.assert_frame_equal(embeddings, expected_ms2ds_embeddings, - check_exact=False, - atol=1e-5) - - -def test_create_s2v_embeddings(tmp_path, path_to_general_test_files, hundred_test_spectra, - expected_s2v_embeddings, - spec2vec_model_file_name): - """Tests store_ms2ds_embeddings""" - library_spectra = [normalize_and_filter_peaks(s) for s in hundred_test_spectra if s is not None] - - embeddings = create_s2v_embeddings(Word2Vec.load(spec2vec_model_file_name), library_spectra) - pd.testing.assert_frame_equal(embeddings, expected_s2v_embeddings, - check_exact=False, - atol=1e-5) - def check_sqlite_files_are_equal(new_sqlite_file_name, reference_sqlite_file, check_metadata=True): """Raises an error if the two sqlite files are not equal""" # Test if file is made