@@ -235,6 +235,7 @@ def test_replace_image_stack(self, mocked_select_file):
235
235
self .assertEqual (100 , list (self .main_window .presenter .datasets )[0 ].sample .data .shape [0 ])
236
236
237
237
self .main_window .dataset_tree_widget .topLevelItem (0 ).setSelected (True )
238
+ self ._check_datasets_consistent ()
238
239
239
240
self .main_window ._add_images_to_existing_dataset ()
240
241
QTest .qWait (SHORT_DELAY )
@@ -246,5 +247,51 @@ def test_replace_image_stack(self, mocked_select_file):
246
247
247
248
self .main_window .add_to_dataset_dialog .accepted .emit ()
248
249
QTest .qWait (SHORT_DELAY )
249
-
250
+ self . _check_datasets_consistent ()
250
251
self .assertEqual (20 , list (self .main_window .presenter .datasets )[0 ].sample .data .shape [0 ])
252
+
253
+ def _check_datasets_consistent (self , show_datasets = False ) -> None :
254
+ print ("_check_datasets_consistent" )
255
+ if show_datasets :
256
+ print ("Main window datasets" )
257
+ for k , v in self .main_window .presenter .model .datasets .items ():
258
+ print (" dataset:" , k )
259
+ for image_stack in v .all :
260
+ print (" " , image_stack .id , image_stack .name )
261
+ print ("Main window visualisers/tabs" )
262
+ for vis in self .main_window .presenter .get_active_stack_visualisers ():
263
+ print (" " , vis .id , vis .name )
264
+ print ("Main window treeview" )
265
+ for i in range (self .main_window .dataset_tree_widget .topLevelItemCount ()):
266
+ tree_ds = self .main_window .dataset_tree_widget .topLevelItem (i )
267
+ print (f" dataset: { tree_ds .id } { tree_ds .text (0 )} " )
268
+ for j in range (tree_ds .childCount ()):
269
+ tree_is = tree_ds .child (j )
270
+ print (f" { tree_is .id } { tree_is .text (0 )} " )
271
+
272
+ # Datasets
273
+ open_dataset_ids = list (self .main_window .presenter .model .datasets .keys ())
274
+ self .assertEqual (len (open_dataset_ids ), len (set (open_dataset_ids )))
275
+ image_stack_ids = self .main_window .presenter .model .image_ids
276
+ self .assertEqual (len (image_stack_ids ), len (set (image_stack_ids )))
277
+
278
+ # Visualisers/Tabs
279
+ visualiser_ids = [vis .id for vis in self .main_window .presenter .get_active_stack_visualisers ()]
280
+ self .assertEqual (len (visualiser_ids ), len (set (visualiser_ids )))
281
+ self .assertEqual (len (visualiser_ids ), len (image_stack_ids ))
282
+ for visualiser_id in visualiser_ids :
283
+ self .assertIn (visualiser_id , image_stack_ids )
284
+
285
+ #Tree view
286
+ tree_datasets = [
287
+ self .main_window .dataset_tree_widget .topLevelItem (i )
288
+ for i in range (self .main_window .dataset_tree_widget .topLevelItemCount ())
289
+ ]
290
+ tree_image_stack_ids = []
291
+ self .assertEqual (len (open_dataset_ids ), len (tree_datasets ))
292
+ for tree_dataset in tree_datasets :
293
+ self .assertIn (tree_dataset .id , open_dataset_ids )
294
+ for i in range (tree_dataset .childCount ()):
295
+ tree_image_stack_ids .append (tree_dataset .child (i ).id )
296
+ self .assertEqual (len (tree_image_stack_ids ), len (set (tree_image_stack_ids )))
297
+ self .assertEqual (len (tree_image_stack_ids ), len (image_stack_ids ))
0 commit comments