Skip to content

Commit 03b0a00

Browse files
feat(tests): strenghten unit tests
1 parent 9066879 commit 03b0a00

File tree

2 files changed

+73
-79
lines changed

2 files changed

+73
-79
lines changed

src/opengeodeweb_back/geode_functions.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,6 @@ def list_geode_objects(
156156
return_dict[geode_object] = {"is_loadable": file_is_loadable}
157157
else:
158158
return_dict[geode_object] = {"is_loadable": file_is_loadable}
159-
160159
return return_dict
161160

162161

tests/test_functions.py

Lines changed: 73 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -65,64 +65,56 @@ def test_load():
6565
print(f"\n{geode_object=}")
6666
input_extensions = geode_functions.geode_object_input_extensions(geode_object)
6767
for input_extension in input_extensions:
68-
if geode_object != "RegularGrid3D" and input_extension != "vti":
69-
print(f"\t{input_extension=}")
70-
missing_files = geode_functions.missing_files(
71-
geode_object, f"tests/data/test.{input_extension}"
72-
)
73-
has_missing_files = missing_files.has_missing_files()
74-
if has_missing_files:
75-
mandatory_files = missing_files.mandatory_files
76-
print(f"\t\t{mandatory_files=}")
77-
additional_files = missing_files.additional_files
78-
print(f"\t\t{additional_files=}")
79-
file_apsolute_path = os.path.abspath(
80-
f"tests/data/test.{input_extension}"
81-
)
82-
is_loadable = geode_functions.is_loadable(
83-
geode_object, file_apsolute_path
84-
)
85-
if is_loadable:
86-
data = geode_functions.load(geode_object, file_apsolute_path)
87-
if "save_viewable" in value:
88-
uu_id = str(uuid.uuid4()).replace("-", "")
89-
viewable_file_path = geode_functions.save_viewable(
90-
geode_object,
91-
data,
92-
os.path.abspath(f"/output"),
93-
uu_id,
94-
)
95-
os.remove(viewable_file_path)
96-
geode_objects_and_output_extensions = (
97-
geode_functions.geode_objects_output_extensions(
98-
geode_object, data
99-
)
68+
print(f"\t{input_extension=}")
69+
missing_files = geode_functions.missing_files(
70+
geode_object, f"tests/data/test.{input_extension}"
71+
)
72+
has_missing_files = missing_files.has_missing_files()
73+
if has_missing_files:
74+
mandatory_files = missing_files.mandatory_files
75+
print(f"\t\t{mandatory_files=}")
76+
additional_files = missing_files.additional_files
77+
print(f"\t\t{additional_files=}")
78+
file_apsolute_path = os.path.abspath(f"tests/data/test.{input_extension}")
79+
if geode_functions.is_loadable(geode_object, file_apsolute_path):
80+
data = geode_functions.load(geode_object, file_apsolute_path)
81+
if "save_viewable" in value:
82+
uu_id = str(uuid.uuid4()).replace("-", "")
83+
viewable_file_path = geode_functions.save_viewable(
84+
geode_object,
85+
data,
86+
os.path.abspath(f"/output"),
87+
uu_id,
10088
)
101-
assert type(geode_objects_and_output_extensions) is dict
89+
os.remove(viewable_file_path)
90+
geode_objects_and_output_extensions = (
91+
geode_functions.geode_objects_output_extensions(geode_object, data)
92+
)
93+
assert type(geode_objects_and_output_extensions) is dict
94+
for (
95+
output_geode_object,
96+
output_geode_object_value,
97+
) in geode_objects_and_output_extensions.items():
98+
print(f"\t\t{output_geode_object=}")
10299
for (
103-
output_geode_object,
104-
output_geode_object_value,
105-
) in geode_objects_and_output_extensions.items():
106-
print(f"\t\t{output_geode_object=}")
107-
for (
108-
output_extension,
109-
output_extension_value,
110-
) in output_geode_object_value.items():
111-
print(f"\t\t\t{output_extension=}")
112-
uu_id = str(uuid.uuid4()).replace("-", "")
113-
filename = f"{uu_id}.{output_extension}"
114-
if geode_functions.is_saveable(
115-
output_geode_object, data, filename
116-
):
117-
saved_files = geode_functions.save(
118-
output_geode_object,
119-
data,
120-
os.path.abspath(f"/output"),
121-
filename,
122-
)
123-
assert type(saved_files) is list
124-
for saved_file in saved_files:
125-
os.remove(saved_file)
100+
output_extension,
101+
output_extension_value,
102+
) in output_geode_object_value.items():
103+
print(f"\t\t\t{output_extension=}")
104+
uu_id = str(uuid.uuid4()).replace("-", "")
105+
filename = f"{uu_id}.{output_extension}"
106+
if geode_functions.is_saveable(
107+
output_geode_object, data, filename
108+
):
109+
saved_files = geode_functions.save(
110+
output_geode_object,
111+
data,
112+
os.path.abspath(f"/output"),
113+
filename,
114+
)
115+
assert type(saved_files) is list
116+
for saved_file in saved_files:
117+
os.remove(saved_file)
126118

127119

128120
def test_is_model():
@@ -156,22 +148,19 @@ def test_geode_object_output_extensions():
156148
print(f"\n{geode_object=}")
157149
input_extensions = geode_functions.geode_object_input_extensions(geode_object)
158150
for input_extension in input_extensions:
159-
if geode_object != "RegularGrid3D" and input_extension != "vti":
160-
print(f"\t{input_extension=}")
161-
missing_files = geode_functions.missing_files(
162-
geode_object, f"tests/data/test.{input_extension}"
163-
)
164-
has_missing_files = missing_files.has_missing_files()
165-
if has_missing_files:
166-
mandatory_files = missing_files.mandatory_files
167-
print(f"\t\t{mandatory_files=}")
168-
additional_files = missing_files.additional_files
169-
print(f"\t\t{additional_files=}")
170-
file_apsolute_path = os.path.abspath(
171-
f"tests/data/test.{input_extension}"
172-
)
173-
174-
data = geode_functions.load(geode_object, file_apsolute_path)
151+
print(f"\t{input_extension=}")
152+
missing_files = geode_functions.missing_files(
153+
geode_object, f"tests/data/test.{input_extension}"
154+
)
155+
has_missing_files = missing_files.has_missing_files()
156+
if has_missing_files:
157+
mandatory_files = missing_files.mandatory_files
158+
print(f"\t\t{mandatory_files=}")
159+
additional_files = missing_files.additional_files
160+
print(f"\t\t{additional_files=}")
161+
file_absolute_path = os.path.abspath(f"tests/data/test.{input_extension}")
162+
if geode_functions.is_loadable(geode_object, file_absolute_path):
163+
data = geode_functions.load(geode_object, file_absolute_path)
175164
geode_objets_and_output_extensions = (
176165
geode_functions.geode_objects_output_extensions(geode_object, data)
177166
)
@@ -228,11 +217,11 @@ def test_list_geode_objects():
228217
input_extensions = geode_functions.list_input_extensions(key)
229218
for geode_object, value in geode_objects.geode_objects_dict().items():
230219
for input_extension in input_extensions:
231-
file_apsolute_path = os.path.abspath(
220+
file_absolute_path = os.path.abspath(
232221
f"tests/data/test.{input_extension}"
233222
)
234223
return_dict = geode_functions.list_geode_objects(
235-
file_apsolute_path, key
224+
file_absolute_path, key
236225
)
237226
assert type(return_dict) is dict
238227

@@ -242,16 +231,22 @@ def test_list_geode_objects():
242231
assert invalid_geode_object not in return_dict.keys()
243232
else:
244233
assert len(return_dict.keys()) >= 1
234+
for input_geode_object, input_extension_dict in return_dict.items():
235+
assert type(input_extension_dict) is dict
236+
for (
237+
input_extension,
238+
input_extension_value,
239+
) in input_extension_dict.items():
240+
assert type(input_extension_value["is_saveable"]) is bool
245241

246242

247243
def test_geode_objects_output_extensions():
248244
for geode_object, value in geode_objects.geode_objects_dict().items():
249245
input_extensions = geode_functions.geode_object_input_extensions(geode_object)
250246
for input_extension in input_extensions:
251-
if geode_object != "RegularGrid3D" and input_extension != "vti":
252-
data = geode_functions.load(
253-
geode_object, f"tests/data/test.{input_extension}"
254-
)
247+
file_absolute_path = f"tests/data/test.{input_extension}"
248+
if geode_functions.is_loadable(geode_object, file_absolute_path):
249+
data = geode_functions.load(geode_object, file_absolute_path)
255250
geode_objects_and_output_extensions = (
256251
geode_functions.geode_objects_output_extensions(geode_object, data)
257252
)

0 commit comments

Comments
 (0)