@@ -72,41 +72,44 @@ def test_load():
7272 )
7373
7474 data = geode_functions .load (geode_object , file_apsolute_path )
75+
76+ if "save_viewable" in value :
77+ uu_id = str (uuid .uuid4 ()).replace ("-" , "" )
78+ viewable_file_path = geode_functions .save_viewable (
79+ geode_object ,
80+ data ,
81+ os .path .abspath (f"/output" ),
82+ uu_id ,
83+ )
84+ os .remove (viewable_file_path )
85+ geode_objects_and_output_extensions = (
86+ geode_functions .geode_objects_output_extensions (geode_object , data )
87+ )
88+ assert type (geode_objects_and_output_extensions ) is dict
7589 for (
76- geode_object_and_output_extensions
77- ) in geode_functions .geode_objects_output_extensions (
78- geode_object , data
79- ):
80- output_geode_object = geode_object_and_output_extensions [
81- "geode_object"
82- ]
90+ output_geode_object ,
91+ output_geode_object_value ,
92+ ) in geode_objects_and_output_extensions .items ():
8393 print (f"\t \t { output_geode_object = } " )
84- output_extensions = geode_functions .geode_object_output_extensions (
85- geode_object
86- )
87-
88- for output_extension in output_extensions :
94+ for (
95+ output_extension ,
96+ output_extension_value ,
97+ ) in output_geode_object_value .items ():
8998 print (f"\t \t \t { output_extension = } " )
9099 uu_id = str (uuid .uuid4 ()).replace ("-" , "" )
91100 filename = f"{ uu_id } .{ output_extension } "
92- if geode_functions .is_saveable (geode_object , data , filename ):
93- file_path = geode_functions .save (
94- geode_object ,
101+ if geode_functions .is_saveable (
102+ output_geode_object , data , filename
103+ ):
104+ saved_files = geode_functions .save (
105+ output_geode_object ,
95106 data ,
96- os .path .abspath (f"output" ),
97- f" { uu_id } . { output_extension } " ,
107+ os .path .abspath (f"/ output" ),
108+ filename ,
98109 )
99-
100- if "save_viewable" in value :
101- uu_id = str (uuid .uuid4 ()).replace ("-" , "" )
102- viewable_file_path = geode_functions .save_viewable (
103- geode_object ,
104- data ,
105- os .path .abspath (f"output" ),
106- uu_id ,
107- )
108-
109- os .remove (viewable_file_path )
110+ assert type (saved_files ) is list
111+ for saved_file in saved_files :
112+ os .remove (saved_file )
110113
111114
112115def test_is_model ():
@@ -137,10 +140,39 @@ def test_geode_object_input_extensions():
137140
138141def test_geode_object_output_extensions ():
139142 for geode_object , value in geode_objects .geode_objects_dict ().items ():
140- output_extensions = geode_functions .geode_object_output_extensions (geode_object )
141- assert type (output_extensions ) is list
142- for output_extension in output_extensions :
143- assert type (output_extension ) is str
143+ print (f"\n { geode_object = } " )
144+ input_extensions = geode_functions .geode_object_input_extensions (geode_object )
145+ for input_extension in input_extensions :
146+ if geode_object != "RegularGrid3D" and input_extension != "vti" :
147+ print (f"\t { input_extension = } " )
148+ missing_files = geode_functions .missing_files (
149+ geode_object , f"tests/data/test.{ input_extension } "
150+ )
151+ has_missing_files = missing_files .has_missing_files ()
152+ if has_missing_files :
153+ mandatory_files = missing_files .mandatory_files
154+ print (f"\t \t { mandatory_files = } " )
155+ additional_files = missing_files .additional_files
156+ print (f"\t \t { additional_files = } " )
157+ file_apsolute_path = os .path .abspath (
158+ f"tests/data/test.{ input_extension } "
159+ )
160+
161+ data = geode_functions .load (geode_object , file_apsolute_path )
162+ geode_objets_and_output_extensions = (
163+ geode_functions .geode_objects_output_extensions (geode_object , data )
164+ )
165+ assert type (geode_objets_and_output_extensions ) is dict
166+ for (
167+ output_geode_object ,
168+ output_geode_object_value ,
169+ ) in geode_objets_and_output_extensions .items ():
170+ for (
171+ output_extension ,
172+ output_extension_value ,
173+ ) in output_geode_object_value .items ():
174+ assert type (output_extension ) is str
175+ assert type (output_extension_value ["is_saveable" ]) is bool
144176
145177
146178def test_list_input_extensions ():
@@ -168,8 +200,6 @@ def test_list_geode_objects():
168200 "Graph" ,
169201 "RasterImage2D" ,
170202 "RasterImage3D" ,
171- "RasterImage2D" ,
172- "RasterImage3D" ,
173203 "VertexSet" ,
174204 ],
175205 },
@@ -202,32 +232,23 @@ def test_geode_objects_output_extensions():
202232 for geode_object , value in geode_objects .geode_objects_dict ().items ():
203233 input_extensions = geode_functions .geode_object_input_extensions (geode_object )
204234 for input_extension in input_extensions :
205- if input_extension not in [ "og_img3d" , "vti" ] :
235+ if geode_object != "RegularGrid3D" and input_extension != "vti" :
206236 data = geode_functions .load (
207237 geode_object , f"tests/data/test.{ input_extension } "
208238 )
209- geode_objects_and_output_extensions_list = (
239+ geode_objects_and_output_extensions = (
210240 geode_functions .geode_objects_output_extensions (geode_object , data )
211241 )
212- print (f"{ geode_objects_and_output_extensions_list = } " )
213- assert type (geode_objects_and_output_extensions_list ) is list
242+ assert type (geode_objects_and_output_extensions ) is dict
214243 for (
215- geode_object_and_output_extensions
216- ) in geode_objects_and_output_extensions_list :
217- print (f"{ geode_object_and_output_extensions = } " )
218- assert type (geode_object_and_output_extensions ) is dict
219- assert "geode_object" in geode_object_and_output_extensions
220- assert (
221- type (geode_object_and_output_extensions ["geode_object" ]) is str
222- )
223- assert "outputs" in geode_object_and_output_extensions
224- assert type (geode_object_and_output_extensions ["outputs" ]) is list
225- outputs = geode_object_and_output_extensions ["outputs" ]
226- for output in outputs :
227- assert "extension" in output
228- assert type (output ["extension" ]) is str
229- assert "is_saveable" in output
230- assert type (output ["is_saveable" ]) is bool
244+ output_geode_object ,
245+ output_geode_object_value ,
246+ ) in geode_objects_and_output_extensions .items ():
247+ for (
248+ output_extension ,
249+ output_extension_value ,
250+ ) in output_geode_object_value .items ():
251+ assert type (output_extension_value ["is_saveable" ]) is bool
231252
232253
233254def test_versions ():
0 commit comments