From d06323d6853bccad0e3e46b09c3b87381a5ce433 Mon Sep 17 00:00:00 2001 From: Henning Bredel Date: Mon, 16 Oct 2023 14:42:32 +0200 Subject: [PATCH] Ensure index on extensions found multiple times --- geonode/storage/tests.py | 17 ++++++++++++++++- geonode/storage/tests/data/example.zip | Bin 140 -> 324 bytes 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/geonode/storage/tests.py b/geonode/storage/tests.py index 48d1f3ebfe2..3f98844f8ee 100644 --- a/geonode/storage/tests.py +++ b/geonode/storage/tests.py @@ -573,7 +573,22 @@ def test_zip_file_should_correctly_recognize_main_extension_with_csv(self): self.assertIsNotNone(storage_manager.data_retriever.temporary_folder) _files = storage_manager.get_retrieved_paths() - self.assertTrue("example.csv" in _files.get("base_file")) + # Selected base_file is not defined in case of multiple csv files + self.assertTrue(_files.get("base_file").endswith(".csv")) + + def test_zip_file_should_correctly_relate_file_extensions(self): + # reinitiate the storage manager with the zip file + storage_manager = self.sut( + remote_files={"base_file": os.path.join(f"{self.project_root}", "tests/data/example.zip")} + ) + storage_manager.clone_remote_files() + + self.assertIsNotNone(storage_manager.data_retriever.temporary_folder) + _files = storage_manager.get_retrieved_paths() + # Selected base_file is not defined in case of multiple csv files + self.assertIsNotNone(_files.get("csv_file")) + # extensions found more than once get indexed + self.assertIsNotNone(_files.get("csv_file_1")) @override_settings( SUPPORTED_DATASET_FILE_TYPES=[ diff --git a/geonode/storage/tests/data/example.zip b/geonode/storage/tests/data/example.zip index 099888b8ef30952a98553b0ffe978c41fdd87b58..bb54c689f548c71a5455a78973833b76f8feecb9 100644 GIT binary patch literal 324 zcmWIWW@Zs#W?neK-5V1YrgS22mj92IAC;#N2|MRK4WlveO>EK89P^Cc4F> zc3QSwb2!Ao5P(xJCs1#GNk(cBPMwTQ_RP5KRRQV-0fmMojUXDy60B=?{ko8PJxC2O+ HfjA5RA1F*t literal 140 zcmWIWW@Zs#U|`^22#J>neK-5V1Q1UYh`E6{wIVUMASYEXxw!1Khp&&}mU9e~++tEY rE!(a+9O7UI@MdHZVZf~&XaWNxhyVj5!vefn*+629Kxhf1ZNUlv5U3nd