| main/__init__.py |
(no function) |
|
0 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
CircularProgress.__init__ |
|
4 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
CircularProgress.setValue |
|
2 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
CircularProgress.setColor |
|
4 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
CircularProgress.sizeHint |
|
1 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
CircularProgress.paintEvent |
|
23 |
0 |
0 |
|
100% |
| main/components/circular_progress_bar.py |
(no function) |
|
9 |
0 |
0 |
|
100% |
| main/components/collapsible_info_frame.py |
CollapsibleInfoFrame.__init__ |
|
23 |
0 |
0 |
|
100% |
| main/components/collapsible_info_frame.py |
CollapsibleInfoFrame.toggle_content |
|
2 |
2 |
0 |
|
0% |
| main/components/collapsible_info_frame.py |
CollapsibleInfoFrame._translate_ui |
|
2 |
0 |
0 |
|
100% |
| main/components/collapsible_info_frame.py |
(no function) |
|
6 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
ClickableFrame.mousePressEvent |
|
2 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame.__init__ |
|
22 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._apply_style |
|
5 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._build_ui |
|
32 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._populate_content |
|
53 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._add_pet4d_json_display |
|
15 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._update_pet4d_json_display |
|
16 |
1 |
0 |
|
94% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._on_header_clicked |
|
3 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._toggle_expand |
|
5 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._save_patient |
|
8 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
CollapsiblePatientFrame._translate_ui |
|
7 |
0 |
0 |
|
100% |
| main/components/collapsible_patient_frame.py |
(no function) |
|
19 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.__init__ |
|
9 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.setup_crosshairs |
|
6 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.mouseMoveEvent |
|
8 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.wheelEvent |
|
3 |
3 |
0 |
|
0% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.mousePressEvent |
|
7 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.update_crosshairs |
|
8 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.set_crosshair_position |
|
8 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
CrosshairGraphicsView.leaveEvent |
|
3 |
0 |
0 |
|
100% |
| main/components/crosshair_graphic_view.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog.__init__ |
|
98 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog.filter_subjects |
|
4 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog.get_selections |
|
16 |
2 |
0 |
|
88% |
| main/components/file_role_dialog.py |
FileRoleDialog.get_relative_path |
|
18 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog._find_patient_dirs |
|
9 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog.first_level_toggled |
|
8 |
0 |
0 |
|
100% |
| main/components/file_role_dialog.py |
FileRoleDialog.update_ok_button |
|
11 |
1 |
0 |
|
91% |
| main/components/file_role_dialog.py |
(no function) |
|
12 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.__init__ |
|
33 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.open_tree_dialog |
|
5 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.clear_selected_files |
|
6 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.set_selected_files |
|
13 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.get_selected_files |
|
1 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget.set_processing_mode |
|
5 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
FileSelectorWidget._translate_ui |
|
4 |
0 |
0 |
|
100% |
| main/components/file_selector_widget.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.__init__ |
|
10 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard._setup_ui |
|
28 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.add_files |
|
11 |
1 |
0 |
|
91% |
| main/components/folder_card.py |
FolderCard.start_pulse_animation |
|
16 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.reset_state |
|
11 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.show_files_dialog |
|
41 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.check_new_files |
|
9 |
1 |
0 |
|
89% |
| main/components/folder_card.py |
FolderCard._list_all_files |
|
8 |
0 |
0 |
|
100% |
| main/components/folder_card.py |
FolderCard.set_finished_state |
|
11 |
11 |
0 |
|
0% |
| main/components/folder_card.py |
(no function) |
|
15 |
0 |
0 |
|
100% |
| main/components/info_label.py |
InfoLabel.__init__ |
|
8 |
0 |
0 |
|
100% |
| main/components/info_label.py |
InfoLabel.enterEvent |
|
2 |
2 |
0 |
|
0% |
| main/components/info_label.py |
(no function) |
|
5 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog.__init__ |
|
14 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog.get_files |
|
4 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._build_ui |
|
54 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._populate_files |
|
41 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._populate_file_list |
|
8 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._update_info_label |
|
5 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._apply_filters |
|
31 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._connect_signals |
|
16 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._connect_signals.on_no_flag_toggled |
|
2 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._connect_signals.on_with_flag_toggled |
|
2 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._reset_filters |
|
7 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._select_all_visible |
|
4 |
0 |
0 |
|
100% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._accept |
|
36 |
1 |
0 |
|
97% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._apply_forced_filters |
|
15 |
2 |
0 |
|
87% |
| main/components/nifti_file_dialog.py |
NiftiFileDialog._apply_forced_filters.safe_set_combo_value |
|
8 |
2 |
0 |
|
75% |
| main/components/nifti_file_dialog.py |
(no function) |
|
21 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.__init__ |
|
26 |
0 |
0 |
|
100% |
| main/controller.py |
Controller._show_current_page |
|
3 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.go_to_next_page |
|
5 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.go_to_previous_page |
|
5 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.return_to_import |
|
6 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.update_buttons_state |
|
2 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.create_buttons |
|
5 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.start |
|
1 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.open_nifti_viewer |
|
2 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.set_language |
|
4 |
0 |
0 |
|
100% |
| main/controller.py |
Controller.save_language |
|
1 |
0 |
0 |
|
100% |
| main/controller.py |
(no function) |
|
28 |
0 |
0 |
|
100% |
| main/logger.py |
CompressedRotatingFileHandler.__init__ |
|
5 |
0 |
0 |
|
100% |
| main/logger.py |
CompressedRotatingFileHandler.shouldRollover |
|
8 |
1 |
0 |
|
88% |
| main/logger.py |
CompressedRotatingFileHandler.doRollover |
|
15 |
2 |
0 |
|
87% |
| main/logger.py |
setup_logger |
|
20 |
0 |
0 |
|
100% |
| main/logger.py |
get_logger |
|
1 |
0 |
0 |
|
100% |
| main/logger.py |
set_log_level |
|
1 |
0 |
0 |
|
100% |
| main/logger.py |
(no function) |
|
16 |
0 |
0 |
|
100% |
| main/main.py |
(no function) |
|
21 |
21 |
0 |
|
0% |
| main/page.py |
Page._setup_ui |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.is_ready_to_advance |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.is_ready_to_go_back |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.reset_page |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.on_enter |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.next |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page.back |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
Page._translate_ui |
|
1 |
1 |
0 |
|
0% |
| main/page.py |
(no function) |
|
10 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.__init__ |
|
32 |
3 |
0 |
|
91% |
| main/threads/dl_worker.py |
DlWorker.update_progress |
|
8 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.start |
|
9 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.process_single_file |
|
7 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.run_synthstrip |
|
15 |
1 |
0 |
|
93% |
| main/threads/dl_worker.py |
DlWorker.on_synthstrip_finished |
|
13 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.run_coregistration |
|
13 |
13 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.on_coregistration_finished |
|
13 |
7 |
0 |
|
46% |
| main/threads/dl_worker.py |
DlWorker.run_reorientation |
|
20 |
20 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.on_reorientation_finished |
|
13 |
13 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.run_preprocess |
|
12 |
12 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.on_preprocess_finished |
|
13 |
13 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.run_deep_learning |
|
10 |
10 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.on_dl_finished |
|
13 |
13 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.run_postprocess |
|
10 |
10 |
0 |
|
0% |
| main/threads/dl_worker.py |
DlWorker.on_postprocess_finished |
|
17 |
7 |
0 |
|
59% |
| main/threads/dl_worker.py |
DlWorker.cancel |
|
12 |
0 |
0 |
|
100% |
| main/threads/dl_worker.py |
DlWorker.on_stdout |
|
8 |
2 |
0 |
|
75% |
| main/threads/dl_worker.py |
DlWorker.on_stderr |
|
8 |
2 |
0 |
|
75% |
| main/threads/dl_worker.py |
DlWorker.on_error |
|
6 |
2 |
0 |
|
67% |
| main/threads/dl_worker.py |
(no function) |
|
35 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread.__init__ |
|
7 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread.run |
|
116 |
15 |
0 |
|
87% |
| main/threads/import_thread.py |
ImportThread._handle_import |
|
52 |
9 |
0 |
|
83% |
| main/threads/import_thread.py |
ImportThread._are_dicom_series_of_same_patient |
|
38 |
4 |
0 |
|
89% |
| main/threads/import_thread.py |
ImportThread._subfolders_look_like_different_patients |
|
7 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread._process_single_patient_folder |
|
49 |
14 |
0 |
|
71% |
| main/threads/import_thread.py |
ImportThread._convert_dicom_folder_to_nifti |
|
37 |
9 |
0 |
|
76% |
| main/threads/import_thread.py |
ImportThread._convert_to_bids_structure |
|
62 |
9 |
0 |
|
85% |
| main/threads/import_thread.py |
ImportThread._is_bids_folder |
|
14 |
2 |
0 |
|
86% |
| main/threads/import_thread.py |
ImportThread._get_next_sub_id |
|
4 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread._rename_bids_files |
|
19 |
11 |
0 |
|
42% |
| main/threads/import_thread.py |
ImportThread._is_dicom_file |
|
5 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread._is_nifti_file |
|
1 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
ImportThread._subfolders_belong_to_single_subject |
|
49 |
12 |
0 |
|
76% |
| main/threads/import_thread.py |
ImportThread.cancel |
|
6 |
0 |
0 |
|
100% |
| main/threads/import_thread.py |
(no function) |
|
33 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
SaveNiftiThread.__init__ |
|
7 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
SaveNiftiThread.run |
|
12 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
ImageLoadThread.__init__ |
|
3 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
ImageLoadThread.run |
|
22 |
1 |
0 |
|
95% |
| main/threads/nifti_utils_threads.py |
ImageLoadThread.normalize_data_matplotlib_style |
|
9 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
ImageLoadThread.normalize_data_matplotlib_style.normalize_volume |
|
7 |
0 |
0 |
|
100% |
| main/threads/nifti_utils_threads.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| main/threads/skull_strip_thread.py |
SkullStripThread.__init__ |
|
9 |
0 |
0 |
|
100% |
| main/threads/skull_strip_thread.py |
SkullStripThread.cancel |
|
7 |
0 |
0 |
|
100% |
| main/threads/skull_strip_thread.py |
SkullStripThread.run |
|
92 |
9 |
0 |
|
90% |
| main/threads/skull_strip_thread.py |
(no function) |
|
22 |
0 |
0 |
|
100% |
| main/threads/utils_threads.py |
CopyDeleteThread.__init__ |
|
6 |
0 |
0 |
|
100% |
| main/threads/utils_threads.py |
CopyDeleteThread.run |
|
17 |
0 |
0 |
|
100% |
| main/threads/utils_threads.py |
(no function) |
|
10 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.__init__ |
|
12 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage._setup_ui |
|
63 |
2 |
0 |
|
97% |
| main/ui/dl_execution_page.py |
DlExecutionPage.on_enter |
|
6 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.start_processing |
|
22 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.update_progress |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.add_log_message |
|
11 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.update_file_status |
|
5 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.cancel_processing |
|
3 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.processing_finished |
|
20 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.reset_processing_state |
|
10 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.back |
|
10 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.next |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_execution_page.py |
DlExecutionPage._translate_ui |
|
14 |
1 |
0 |
|
93% |
| main/ui/dl_execution_page.py |
(no function) |
|
28 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.__init__ |
|
8 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage._setup_ui |
|
12 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.has_existing_segmentation |
|
15 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.back |
|
4 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.next |
|
8 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.on_enter |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage.reset_page |
|
4 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
DlNiftiSelectionPage._translate_ui |
|
1 |
0 |
0 |
|
100% |
| main/ui/dl_selection_page.py |
(no function) |
|
20 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.__init__ |
|
20 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.is_ready_to_advance |
|
2 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.next |
|
6 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.back |
|
1 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.dragEnterEvent |
|
2 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.dropEvent |
|
4 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.mousePressEvent |
|
2 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.open_folder_dialog |
|
11 |
4 |
0 |
|
64% |
| main/ui/import_page.py |
ImportPage._handle_import |
|
9 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.on_import_error |
|
8 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.on_import_finished |
|
10 |
2 |
0 |
|
80% |
| main/ui/import_page.py |
ImportPage.on_import_canceled |
|
8 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage.closeEvent |
|
8 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
ImportPage._translate_ui |
|
1 |
0 |
0 |
|
100% |
| main/ui/import_page.py |
(no function) |
|
26 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.__init__ |
|
12 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow._setup_ui |
|
7 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow._setup_splitter |
|
2 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow._setup_footer |
|
8 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow._setup_menus |
|
39 |
1 |
0 |
|
97% |
| main/ui/main_window.py |
MainWindow._add_language_option |
|
7 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.set_language |
|
3 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.clear_folder |
|
14 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.set_widgets |
|
11 |
3 |
0 |
|
73% |
| main/ui/main_window.py |
MainWindow.copydelete_thread_error |
|
6 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.copydelete_thread_success |
|
8 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.closeEvent |
|
16 |
4 |
0 |
|
75% |
| main/ui/main_window.py |
MainWindow.export_file_info |
|
1 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.new_thread |
|
4 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow.toggle_debug_log |
|
4 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
MainWindow._translate_ui |
|
15 |
0 |
0 |
|
100% |
| main/ui/main_window.py |
(no function) |
|
26 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.__init__ |
|
22 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.has_existing_mask |
|
24 |
4 |
0 |
|
83% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.on_enter |
|
1 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.open_nifti_viewer |
|
5 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.back |
|
4 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage.reset_page |
|
3 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
MaskNiftiSelectionPage._translate_ui |
|
2 |
0 |
0 |
|
100% |
| main/ui/nifti_mask_selection_page.py |
(no function) |
|
17 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
compute_mask_numba_mm |
|
13 |
13 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
apply_overlay_numba |
|
9 |
9 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
_slice |
|
12 |
1 |
0 |
|
92% |
| main/ui/nifti_viewer.py |
NiftiViewer.__init__ |
|
76 |
1 |
0 |
|
99% |
| main/ui/nifti_viewer.py |
NiftiViewer.init_ui |
|
17 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.create_control_panel |
|
336 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.format_info_text |
|
17 |
4 |
0 |
|
76% |
| main/ui/nifti_viewer.py |
NiftiViewer.create_image_display |
|
49 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.setup_crosshairs |
|
2 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.setup_connections |
|
22 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.show_workspace_nii_dialog |
|
5 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.open_file |
|
21 |
3 |
0 |
|
86% |
| main/ui/nifti_viewer.py |
NiftiViewer.on_file_loaded |
|
57 |
2 |
0 |
|
96% |
| main/ui/nifti_viewer.py |
NiftiViewer.on_load_error |
|
7 |
7 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer.on_load_canceled |
|
2 |
2 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer.initialize_display |
|
22 |
1 |
0 |
|
95% |
| main/ui/nifti_viewer.py |
NiftiViewer.toggle_overlay |
|
11 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_overlay_alpha |
|
3 |
3 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_overlay_threshold |
|
6 |
1 |
0 |
|
83% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_overlay_settings |
|
5 |
1 |
0 |
|
80% |
| main/ui/nifti_viewer.py |
NiftiViewer.slice_changed |
|
12 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.time_changed |
|
5 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.toggle_time_controls |
|
6 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.colormap_changed |
|
3 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.handle_click_coordinates |
|
15 |
15 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer.screen_to_image_coords |
|
20 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_coordinates |
|
13 |
5 |
0 |
|
62% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_coordinate_displays |
|
14 |
3 |
0 |
|
79% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_cross_view_lines |
|
17 |
1 |
0 |
|
94% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_display |
|
45 |
5 |
0 |
|
89% |
| main/ui/nifti_viewer.py |
NiftiViewer.setup_time_series_plot |
|
10 |
1 |
0 |
|
90% |
| main/ui/nifti_viewer.py |
NiftiViewer.hide_time_series_plot |
|
9 |
6 |
0 |
|
33% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_time_series_plot |
|
36 |
14 |
0 |
|
61% |
| main/ui/nifti_viewer.py |
NiftiViewer.apply_colormap_matplotlib |
|
7 |
3 |
0 |
|
57% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_all_displays |
|
10 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.create_overlay_composite |
|
15 |
3 |
0 |
|
80% |
| main/ui/nifti_viewer.py |
NiftiViewer.resizeEvent |
|
2 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.fit_all_views |
|
3 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.update_automaticROI |
|
3 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.automaticROI_clicked |
|
20 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.toggle_automaticROI |
|
12 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.automaticROI_drawing |
|
13 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.ROI_save |
|
63 |
17 |
0 |
|
73% |
| main/ui/nifti_viewer.py |
NiftiViewer._on_ROI_saved |
|
2 |
2 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer._on_ROI_saving_error |
|
2 |
2 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer._get_next_file_id |
|
13 |
5 |
0 |
|
62% |
| main/ui/nifti_viewer.py |
NiftiViewer.addOrigin_clicked |
|
8 |
8 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer.toggle_incrementalROI |
|
10 |
2 |
0 |
|
80% |
| main/ui/nifti_viewer.py |
NiftiViewer.closeEvent |
|
11 |
2 |
0 |
|
82% |
| main/ui/nifti_viewer.py |
NiftiViewer.reset_overlay |
|
12 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.resetROI |
|
16 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.pad_volume_to_shape |
|
8 |
0 |
0 |
|
100% |
| main/ui/nifti_viewer.py |
NiftiViewer.handle_scroll |
|
31 |
31 |
0 |
|
0% |
| main/ui/nifti_viewer.py |
NiftiViewer._translate_ui |
|
38 |
7 |
0 |
|
82% |
| main/ui/nifti_viewer.py |
(no function) |
|
83 |
3 |
0 |
|
96% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.__init__ |
|
36 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._update_column_count |
|
6 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.resizeEvent |
|
2 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._reload_patient_grid |
|
9 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.on_enter |
|
7 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.next |
|
30 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.back |
|
4 |
1 |
0 |
|
75% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._load_patients |
|
34 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._select_all_patients |
|
7 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._deselect_all_patients |
|
7 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._find_patient_dirs |
|
10 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._toggle_patient |
|
7 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.get_selected_patients |
|
1 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage.reset_page |
|
9 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
PatientSelectionPage._translate_ui |
|
4 |
0 |
0 |
|
100% |
| main/ui/patient_selection_page.py |
(no function) |
|
29 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.__init__ |
|
28 |
3 |
0 |
|
89% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._find_latest_config |
|
20 |
1 |
0 |
|
95% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._setup_ui |
|
44 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._setup_folder_cards |
|
8 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._start_pipeline |
|
16 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_process_finished |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_process_error |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_stdout_ready |
|
6 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_stderr_ready |
|
6 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._process_pipeline_output |
|
18 |
3 |
0 |
|
83% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_pipeline_finished |
|
10 |
1 |
0 |
|
90% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_pipeline_error |
|
8 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._update_progress |
|
21 |
14 |
0 |
|
33% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._update_current_operation |
|
11 |
1 |
0 |
|
91% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._extract_patient_id_from_log |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._log_message |
|
6 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.check_new_files |
|
2 |
1 |
0 |
|
50% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._on_stop_clicked |
|
12 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._return_to_import |
|
4 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.on_enter |
|
17 |
6 |
0 |
|
65% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.back |
|
5 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.next |
|
11 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.get_sub_list |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.reset_page |
|
17 |
5 |
0 |
|
71% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage.__del__ |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
PipelineExecutionPage._translate_ui |
|
4 |
0 |
0 |
|
100% |
| main/ui/pipeline_execution_page.py |
(no function) |
|
42 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.__init__ |
|
12 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._setup_ui |
|
32 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._create_summary_widget |
|
18 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._create_stat_pill |
|
19 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._check_patient_requirements |
|
36 |
2 |
0 |
|
94% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._load_patients |
|
15 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._create_patient_frame |
|
64 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._update_summary |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._select_all_eligible_patients |
|
7 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._deselect_all_patients |
|
7 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._refresh_patient_status |
|
16 |
4 |
0 |
|
75% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._toggle_patient |
|
7 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._find_patient_dirs |
|
12 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._update_column_count |
|
6 |
6 |
0 |
|
0% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._reload_patient_grid |
|
16 |
16 |
0 |
|
0% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._build_pipeline_config |
|
61 |
10 |
0 |
|
84% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._get_next_config_id |
|
16 |
3 |
0 |
|
81% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.on_enter |
|
1 |
1 |
0 |
|
0% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.next |
|
8 |
2 |
0 |
|
75% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.back |
|
4 |
1 |
0 |
|
75% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.get_selected_patients |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.get_eligible_patients |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.get_patient_status_summary |
|
4 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.reset_page |
|
10 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage.resizeEvent |
|
26 |
26 |
0 |
|
0% |
| main/ui/pipeline_patient_selection_page.py |
PipelinePatientSelectionPage._translate_ui |
|
9 |
0 |
0 |
|
100% |
| main/ui/pipeline_patient_selection_page.py |
(no function) |
|
41 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage.__init__ |
|
12 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._find_latest_config |
|
20 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._load_config_from_path |
|
9 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._load_config |
|
1 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._setup_ui |
|
40 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._save_single_patient |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage.on_enter |
|
9 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage.next |
|
15 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage.back |
|
17 |
2 |
0 |
|
88% |
| main/ui/pipeline_review_page.py |
PipelineReviewPage._translate_ui |
|
3 |
0 |
0 |
|
100% |
| main/ui/pipeline_review_page.py |
(no function) |
|
23 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.__init__ |
|
12 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage._setup_ui |
|
57 |
2 |
0 |
|
96% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage._setup_bet_options |
|
68 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.has_existing_skull_strip |
|
8 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.toggle_advanced |
|
3 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.run_bet |
|
24 |
3 |
0 |
|
88% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.cancel_processing |
|
5 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.set_processing_mode |
|
10 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_progress_updated |
|
2 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_progress_value_updated |
|
1 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_file_started |
|
1 |
1 |
0 |
|
0% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_file_completed |
|
2 |
2 |
0 |
|
0% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_all_completed |
|
14 |
1 |
0 |
|
93% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_worker_finished |
|
6 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.back |
|
8 |
1 |
0 |
|
88% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.on_enter |
|
1 |
1 |
0 |
|
0% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage.reset_page |
|
22 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
SkullStrippingPage._translate_ui |
|
15 |
0 |
0 |
|
100% |
| main/ui/skull_stripping_page.py |
(no function) |
|
32 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.__init__ |
|
53 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.on_selection |
|
3 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.is_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.next |
|
16 |
1 |
0 |
|
94% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.back |
|
4 |
1 |
0 |
|
75% |
| main/ui/tool_selection_page.py |
ToolSelectionPage.reset_page |
|
5 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
ToolSelectionPage._translate_ui |
|
7 |
0 |
0 |
|
100% |
| main/ui/tool_selection_page.py |
(no function) |
|
20 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.__init__ |
|
14 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.handle_workspace_click |
|
4 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.handle_double_click |
|
10 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.adjust_tree_columns |
|
6 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.open_tree_context_menu |
|
24 |
24 |
0 |
|
0% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._add_workspace_actions |
|
7 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._add_folder_actions |
|
6 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._add_file_actions |
|
11 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._add_multi_file_actions |
|
3 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.add_file_to_workspace |
|
32 |
25 |
0 |
|
22% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.open_role_dialog |
|
8 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._including_json |
|
6 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.export_files |
|
29 |
14 |
0 |
|
52% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.export_files._get_file_filter |
|
7 |
2 |
0 |
|
71% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.export_files._get_json_file |
|
9 |
9 |
0 |
|
0% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView.remove_from_workspace |
|
14 |
2 |
0 |
|
86% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._open_in_explorer |
|
10 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
WorkspaceTreeView._open_nifti |
|
5 |
0 |
0 |
|
100% |
| main/ui/workspace_tree_view.py |
(no function) |
|
29 |
0 |
0 |
|
100% |
| main/utils.py |
get_bin_path |
|
14 |
0 |
0 |
|
100% |
| main/utils.py |
get_app_dir |
|
10 |
4 |
0 |
|
60% |
| main/utils.py |
resource_path |
|
3 |
0 |
0 |
|
100% |
| main/utils.py |
get_shell_path |
|
15 |
0 |
0 |
|
100% |
| main/utils.py |
setup_fsl_env |
|
6 |
0 |
0 |
|
100% |
| main/utils.py |
get_dl_python_executable |
|
5 |
5 |
0 |
|
0% |
| main/utils.py |
get_script_path |
|
3 |
0 |
0 |
|
100% |
| main/utils.py |
(no function) |
|
14 |
0 |
0 |
|
100% |
| tests/__init__.py |
(no function) |
|
0 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestCircularProgressInitialization.test_initialization_default |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestCircularProgressInitialization.test_initialization_custom_color |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestCircularProgressInitialization.test_initialization_color_variations |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_basic |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_zero |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_hundred |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_negative_clamped |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_over_hundred_clamped |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_extreme_negative |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_extreme_positive |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_sequence |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_triggers_update |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetValue.test_set_value_float_converted_to_int |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_string |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_qcolor |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_named |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_rgb_hex |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_triggers_update |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_multiple_times |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSetColor.test_set_color_invalid_string |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSizeHint.test_size_hint_with_parent |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSizeHint.test_size_hint_without_parent |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestSizeHint.test_size_hint_parent_resized |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_called |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_creates_painter |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_different_values |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_different_colors |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_small_size |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_large_size |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_rectangular_shape |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_wide_rectangle |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestPaintEvent.test_paint_event_tall_rectangle |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_very_small_widget |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_zero_width |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_zero_height |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_rapid_value_changes |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_rapid_color_changes |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_simultaneous_value_and_color_change |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestEdgeCases.test_unicode_in_existing_files |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestIntegration.test_full_progress_cycle |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestIntegration.test_progress_with_color_change |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestIntegration.test_multiple_complete_cycles |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestIntegration.test_widget_in_parent_container |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestRenderingCalculations.test_square_widget_centering |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestRenderingCalculations.test_rectangular_widget_centering |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestRenderingCalculations.test_pen_width_calculation |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestRenderingCalculations.test_font_size_calculation |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestValueBoundaries.test_boundary_value_zero |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestValueBoundaries.test_boundary_value_hundred |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestValueBoundaries.test_all_integer_values |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestColorFormats.test_hex_color_3_digits |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestColorFormats.test_hex_color_6_digits |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestColorFormats.test_named_colors |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestColorFormats.test_qcolor_from_rgb |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestMemoryAndPerformance.test_no_memory_leak_on_repeated_updates |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
TestMemoryAndPerformance.test_rapid_repaints |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_circular_progress_bar.py |
(no function) |
|
73 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestClickableFrame.test_clickable_frame_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestClickableFrame.test_clickable_frame_emits_signal |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCollapsiblePatientFrameInitialization.test_init_locked_single_choice |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCollapsiblePatientFrameInitialization.test_init_unlocked_multiple_choice |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCollapsiblePatientFrameInitialization.test_init_with_save_callback |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCollapsiblePatientFrameInitialization.test_workspace_path_assignment |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCollapsiblePatientFrameInitialization.test_category_widgets_initialized_empty |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestUIBuilding.test_header_widgets_created |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestUIBuilding.test_toggle_button_configuration |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestUIBuilding.test_content_frame_created |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestUIBuilding.test_animation_setup |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestStyleApplication.test_locked_style |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestStyleApplication.test_unlocked_style |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestStyleApplication.test_style_changes_after_lock |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestExpandCollapse.test_initial_state_collapsed |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestExpandCollapse.test_toggle_expand_programmatically |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestExpandCollapse.test_toggle_collapse_programmatically |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestExpandCollapse.test_header_click_toggles_expansion |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestContentPopulation.test_populate_single_file_locked |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestContentPopulation.test_populate_multiple_files_unlocked |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestContentPopulation.test_populate_no_files_found |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestContentPopulation.test_populate_saves_button_in_unlocked_mode |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestPET4DJSONDetection.test_pet4d_json_found_locked_mode |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestPET4DJSONDetection.test_pet4d_json_not_found_locked_mode |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestPET4DJSONDetection.test_pet4d_json_dynamic_update_unlocked |
|
12 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestSaveConfiguration.test_save_patient_calls_callback |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestSaveConfiguration.test_save_patient_marks_not_needing_revision |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestSaveConfiguration.test_save_patient_locks_frame |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestSaveConfiguration.test_save_patient_updates_files_from_combos |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestTranslation.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestTranslation.test_language_changed_signal_connected |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestTranslation.test_patient_label_translation |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestTranslation.test_save_button_translation |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_empty_patterns_dict |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_empty_files_dict |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_single_file_in_multiple_choice_mode |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_patient_id_with_special_characters |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_no_save_callback_provided |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestEdgeCases.test_context_without_language_changed |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestFilePatternMatching.test_glob_called_with_correct_patterns |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestFilePatternMatching.test_relative_path_conversion |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestFilePatternMatching.test_multiple_patterns_per_category |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestFilePatternMatching.test_multiple_patterns_per_category.glob_side_effect |
|
5 |
1 |
0 |
|
80% |
| tests/components/test_collapsible_patient_frame.py |
TestComboBoxBehavior.test_combo_current_index_set_from_files |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestComboBoxBehavior.test_combo_default_to_first_if_no_match |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestComboBoxBehavior.test_combo_minimum_height |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAnimationBehavior.test_animation_duration |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAnimationBehavior.test_animation_easing_curve |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAnimationBehavior.test_animation_target_property |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestCategoryLabels.test_category_label_formatting |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestIntegrationScenarios.test_complete_workflow_locked_patient |
|
13 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestIntegrationScenarios.test_complete_workflow_locked_patient.glob_side_effect |
|
5 |
1 |
0 |
|
80% |
| tests/components/test_collapsible_patient_frame.py |
TestIntegrationScenarios.test_complete_workflow_unlocked_patient |
|
17 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestIntegrationScenarios.test_complete_workflow_unlocked_patient.glob_side_effect |
|
5 |
1 |
0 |
|
80% |
| tests/components/test_collapsible_patient_frame.py |
TestIntegrationScenarios.test_expand_select_save_workflow |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestMemoryAndCleanup.test_repopulate_content_cleans_old_widgets |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestMemoryAndCleanup.test_widget_deletion_on_repopulate |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAccessibility.test_toggle_button_cursor |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAccessibility.test_toggle_button_checkable |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestAccessibility.test_save_button_minimum_height |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestVisualEffects.test_drop_shadow_applied |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestVisualEffects.test_frame_shape |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
TestVisualEffects.test_object_name_set |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
test_locked_state_by_multiple_choice |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
test_arrow_type_by_expansion_state |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
test_various_patient_id_formats |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_collapsible_patient_frame.py |
(no function) |
|
124 |
1 |
0 |
|
99% |
| tests/components/test_crosshair_graphic_view.py |
mock_parent_viewer |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
graphics_scene |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_initialization_basic |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_initialization_with_parent |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_initialization_different_view_indices |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_mouse_tracking_enabled |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_drag_mode_set |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestCrosshairGraphicsViewInitialization.test_render_hints_set |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetupCrosshairs.test_setup_crosshairs_with_scene |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetupCrosshairs.test_setup_crosshairs_without_scene |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetupCrosshairs.test_setup_crosshairs_color |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetupCrosshairs.test_setup_crosshairs_multiple_calls |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_emits_coordinate_changed |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_updates_crosshairs |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_without_scene |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_without_parent_viewer |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_without_img_data |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_out_of_bounds |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMouseMoveEvent.test_mouse_move_negative_coordinates |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_left_click_calls_handle_click_coordinates |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_right_click_ignored |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_middle_click_ignored |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_click_without_scene |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_click_without_parent_viewer |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_click_without_img_data |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_click_out_of_bounds |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMousePressEvent.test_click_at_scene_edges |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_basic |
|
14 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_different_positions |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_without_scene |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_without_setup |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_makes_visible |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestUpdateCrosshairs.test_update_crosshairs_spans_full_scene |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_basic |
|
12 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_out_of_bounds |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_without_scene |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_without_setup |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_at_origin |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSetCrosshairPosition.test_set_crosshair_position_at_max |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestLeaveEvent.test_leave_event_calls_update_cross_view_lines |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestLeaveEvent.test_leave_event_without_crosshairs |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestLeaveEvent.test_leave_event_without_parent_viewer |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSignals.test_coordinate_changed_signal_exists |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestSignals.test_coordinate_changed_signal_parameters |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_very_small_scene |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_very_large_scene |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_rectangular_scene |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_rapid_mouse_movements |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_rapid_clicks |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_scene_change |
|
12 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestEdgeCases.test_coordinate_precision |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestIntegration.test_full_interaction_flow |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestIntegration.test_multiple_views_interaction |
|
20 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestIntegration.test_crosshair_synchronization |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestBoundaryConditions.test_click_at_zero_zero |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestBoundaryConditions.test_click_at_max_coordinates |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestBoundaryConditions.test_click_just_outside_bounds |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestViewIndexHandling.test_different_view_indices_in_signals |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestViewIndexHandling.test_view_idx_persists |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMemoryAndCleanup.test_scene_items_cleanup |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestMemoryAndCleanup.test_multiple_setup_doesnt_leak |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestRenderHints.test_antialiasing_enabled |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestRenderHints.test_smooth_pixmap_transform_enabled |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestRenderHints.test_render_hints_persist |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestErrorHandling.test_mapToScene_with_invalid_point |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestErrorHandling.test_operations_without_initialization |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestStateConsistency.test_crosshair_visible_state_consistency |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestStateConsistency.test_crosshair_position_consistency |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestDocumentation.test_class_docstring |
|
2 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestDocumentation.test_setup_crosshairs_docstring |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestAccessibility.test_crosshair_color_visible |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestAccessibility.test_crosshair_width_appropriate |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestPerformance.test_many_coordinate_updates |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestPerformance.test_signal_emission_performance |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
TestPerformance.test_signal_emission_performance.count_signal |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_crosshair_graphic_view.py |
(no function) |
|
101 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
workspace_with_subjects |
|
16 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_initialization_full_dialog |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_initialization_with_main_derivatives |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_initialization_with_subject |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_initialization_with_role |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_initialization_partial_params |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_ok_button_initially_disabled |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFileRoleDialogInitialization.test_window_title_set |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFindPatientDirs.test_find_patient_dirs_basic |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFindPatientDirs.test_find_patient_dirs_excludes_derivatives |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFindPatientDirs.test_find_patient_dirs_empty_workspace |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestFindPatientDirs.test_find_patient_dirs_nested_subjects |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_main_selected |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_derivatives_selected |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_derivatives_shows_extra_frame |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_main_hides_extra_frame |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_derivative_type_selection |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel1MainDerivatives.test_all_derivative_types |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel2Subject.test_subject_combo_populated |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel2Subject.test_subject_selection |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel2Subject.test_subject_combo_default_selection |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel2Subject.test_subject_not_shown_when_provided |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel3Role.test_anat_role_selection |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel3Role.test_ses01_role_selection |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel3Role.test_ses02_role_selection |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestLevel3Role.test_role_not_shown_when_provided |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetSelections.test_get_selections_all_levels |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetSelections.test_get_selections_derivatives |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetSelections.test_get_selections_partial |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_main_anat |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_main_session |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_derivatives |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_derivatives_with_session |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_empty |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestGetRelativePath.test_relative_path_session_pattern_matching |
|
13 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_disabled_initially |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_enabled_all_selected |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_disabled_no_main |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_disabled_no_subject |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_disabled_no_role |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_disabled_derivatives_no_type |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_enabled_derivatives_complete |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestUpdateOkButton.test_ok_button_updates_on_change |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestDialogButtons.test_accept_button_exists |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestDialogButtons.test_cancel_button_exists |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestEdgeCases.test_empty_workspace |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestEdgeCases.test_workspace_with_single_subject |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestEdgeCases.test_workspace_with_many_subjects |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestEdgeCases.test_subject_with_special_characters |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestIntegration.test_full_workflow_main_anat |
|
12 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestIntegration.test_full_workflow_derivatives |
|
15 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestIntegration.test_change_selections_multiple_times |
|
13 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.test_only_role_missing |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.test_only_role_missing.test_only_subject_missing |
|
6 |
6 |
0 |
|
0% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.test_only_role_missing.test_only_main_missing |
|
6 |
6 |
0 |
|
0% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.TestFilterSubjects.test_filter_subjects_with_list_widget |
|
16 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.TestFilterSubjects.test_filter_subjects_no_subj_list |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.TestRegressionAndEdgeCases.test_get_relative_path_returns_none_when_no_selection |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.TestRegressionAndEdgeCases.test_get_relative_path_handles_unset_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
TestPartialInitialization.TestRegressionAndEdgeCases.test_find_patient_dirs_ignores_non_sub_dirs |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_file_role_dialog.py |
(no function) |
|
80 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
mock_context_selector |
|
2 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
mock_has_existing_function |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
test_nifti_files |
|
14 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_initialization_basic |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_initialization_single_file_mode |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_initialization_with_processing_signal |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_initialization_with_forced_filters |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_ui_elements_created |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_clear_button_initially_disabled |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileSelectorWidgetInitialization.test_file_list_widget_config |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetSelectedFiles.test_set_selected_files_multiple_valid |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetSelectedFiles.test_many_files |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetSelectedFiles.test_unicode_in_filenames |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetSelectedFiles.test_mixed_nii_and_nii_gz |
|
14 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetSelectedFiles.test_duplicate_files |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestIntegration.test_full_workflow_select_clear |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestIntegration.test_full_workflow_multiple_selections |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestIntegration.test_full_workflow_with_processing |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestContextHandling.test_context_without_update_main_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestContextHandling.test_context_without_language_changed |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestButtonClicks.test_file_button_click |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestButtonClicks.test_clear_button_click |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileExtensions.test_accepts_nii |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileExtensions.test_accepts_nii_gz |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileExtensions.test_rejects_other_extensions |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestFileExtensions.test_case_sensitive_extensions |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestMemoryAndPerformance.test_no_memory_leak_repeated_selections |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestMemoryAndPerformance.test_performance_many_items |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestStateConsistency.test_state_after_set_and_get |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestStateConsistency.test_ui_state_consistency |
|
13 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_buttons_have_text |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_list_items_have_tooltips |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_single_mode |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_filters_non_nifti |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_filters_directories |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_filters_nonexistent |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_updates_list_widget |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_enables_clear_button |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_emits_has_file_signal |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_calls_update_main_buttons |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestAccessibility.test_set_selected_files_with_tooltips |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestClearSelectedFiles.test_clear_selected_files_basic |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestClearSelectedFiles.test_clear_selected_files_emits_signal |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestClearSelectedFiles.test_clear_selected_files_calls_update_main_buttons |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestClearSelectedFiles.test_clear_when_already_empty |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestGetSelectedFiles.test_get_selected_files_with_files |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestGetSelectedFiles.test_get_selected_files_empty |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestOpenTreeDialog.test_open_tree_dialog_called |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestOpenTreeDialog.test_open_tree_dialog_with_results_multiple |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestOpenTreeDialog.test_open_tree_dialog_with_results_single |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestOpenTreeDialog.test_open_tree_dialog_parameters |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetProcessingMode.test_set_processing_mode_true |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetProcessingMode.test_set_processing_mode_false_with_files |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetProcessingMode.test_set_processing_mode_false_without_files |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSetProcessingMode.test_set_processing_mode_toggle |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSignals.test_has_file_signal_exists |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestSignals.test_selected_files_signal_connection |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestTranslations.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestTranslations.test_translate_ui_updates_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestTranslations.test_language_changed_signal |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestEdgeCases.test_empty_file_list |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
TestEdgeCases.test_very_long_file_paths |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_file_selector_widget.py |
(no function) |
|
87 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
test_folder_with_files |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
empty_folder |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
mock_context_card |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_initialization_existing_folder |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_initialization_empty_folder |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_initialization_nonexistent_folder |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_ui_elements_created |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_fixed_height_set |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_folder_name_display |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_initial_status |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestFolderCardInitialization.test_initial_icon |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_basic |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_updates_status |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_enables_button |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_changes_icon |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_multiple_times |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_empty_list |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAddFiles.test_add_files_starts_animation |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestStartPulseAnimation.test_start_pulse_animation_creates_animation |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestStartPulseAnimation.test_start_pulse_animation_stops_existing |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestStartPulseAnimation.test_start_pulse_animation_multiple_calls |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestResetState.test_reset_state_basic |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestResetState.test_reset_state_stops_animation |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestResetState.test_reset_state_restores_status_text |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestResetState.test_reset_state_without_prior_changes |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_detects_new |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_no_changes |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_updates_existing |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_nonexistent_folder |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_multiple_new |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestCheckNewFiles.test_check_new_files_calls_add_files |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestShowFilesDialog.test_show_files_dialog_with_files |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestShowFilesDialog.test_show_files_dialog_empty |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestShowFilesDialog.test_show_files_dialog_clears_files |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestShowFilesDialog.test_show_files_dialog_resets_state |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestOpenFolderSignal.test_open_folder_signal_exists |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestOpenFolderSignal.test_open_folder_signal_emitted |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_very_long_folder_name |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_unicode_folder_name |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_many_files |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_special_characters_in_filename |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_rapid_file_additions |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestEdgeCases.test_folder_deleted_after_init |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestIntegration.test_full_workflow |
|
14 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestIntegration.test_multiple_check_cycles |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestStateConsistency.test_state_after_add_files |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestStateConsistency.test_state_after_reset |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestMemoryAndPerformance.test_no_memory_leak_repeated_operations |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestMemoryAndPerformance.test_performance_many_checks |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAccessibility.test_button_has_text |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
TestAccessibility.test_status_label_has_text |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_folder_card.py |
(no function) |
|
72 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
nifti_workspace |
|
20 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
mock_context_nifti |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
mock_has_existing |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestNiftiFileDialogInitialization.test_initialization_basic |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestNiftiFileDialogInitialization.test_initialization_single_selection |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestNiftiFileDialogInitialization.test_initialization_without_has_existing_func |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestNiftiFileDialogInitialization.test_initialization_with_forced_filters |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestNiftiFileDialogInitialization.test_ui_elements_created |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_finds_nifti |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_extracts_subjects |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_extracts_sessions |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_extracts_modalities |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_extracts_datatypes |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_calls_has_existing |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestPopulateFiles.test_populate_files_list_widget |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_search |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_subject |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_session |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_modality |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_datatype |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_no_flag |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_no_flag.mock_has_existing_selective |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_with_flag |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_with_flag.mock_has_existing_selective |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestApplyFilters.test_apply_filters_combined |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestCheckboxBehavior.test_no_flag_unchecks_with_flag |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestCheckboxBehavior.test_with_flag_unchecks_no_flag |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestResetFilters.test_reset_filters_basic |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestSelectAllVisible.test_select_all_visible_basic |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestSelectAllVisible.test_select_all_visible_with_filters |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_with_selection |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_without_selection |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_with_existing_flag_warning |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_with_existing_flag_warning.mock_has_existing_selective |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_warning_cancelled |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccept.test_accept_warning_cancelled.mock_has_existing_selective |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestGetFilesStaticMethod.test_get_files_accepted |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestGetFilesStaticMethod.test_get_files_rejected |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestForcedFilters.test_forced_filters_search |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestForcedFilters.test_forced_filters_subject |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestForcedFilters.test_forced_filters_modality |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestForcedFilters.test_forced_filters_no_flag |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestForcedFilters.test_forced_filters_multiple |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFileListBehavior.test_file_list_selection_mode_multiple |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFileListBehavior.test_file_list_selection_mode_single |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFileListBehavior.test_file_list_tooltips |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestEdgeCases.test_empty_workspace |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestEdgeCases.test_workspace_with_non_nifti |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestEdgeCases.test_unicode_in_filenames |
|
11 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestEdgeCases.test_very_deep_directory_structure |
|
8 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestEdgeCases.test_label_none_hides_checkboxes |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestInfoLabel.test_info_label_shows_count |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestInfoLabel.test_info_label_updates_with_filters |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestRelativeToAbsolute.test_relative_to_absolute_mapping |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFilesWithFlag.test_files_with_flag_populated |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFilesWithFlag.test_files_with_flag_populated.mock_has_existing_some |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFilesWithFlag.test_files_with_flag_color |
|
9 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestFilesWithFlag.test_files_with_flag_color.mock_has_existing_some |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestButtonConnections.test_reset_button_connected |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestButtonConnections.test_select_all_button_connected |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestButtonConnections.test_deselect_all_button_connected |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestIntegration.test_full_workflow_filter_select_accept |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestIntegration.test_full_workflow_with_warning |
|
12 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestIntegration.test_full_workflow_with_warning.mock_has_existing_some |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestStateConsistency.test_state_after_filter_changes |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestStateConsistency.test_state_after_reset |
|
7 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestMemoryAndPerformance.test_many_files_performance |
|
10 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestMemoryAndPerformance.test_rapid_filter_changes |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccessibility.test_buttons_have_text |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccessibility.test_labels_have_text |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestAccessibility.test_search_bar_placeholder |
|
3 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestTranslations.test_window_title_includes_label |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestErrorHandling.test_has_existing_func_exception |
|
6 |
1 |
0 |
|
83% |
| tests/components/test_nifti_file_dialog.py |
TestErrorHandling.test_has_existing_func_exception.mock_has_existing_error |
|
1 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestErrorHandling.test_invalid_workspace_path |
|
4 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestComboBoxBehavior.test_combo_boxes_have_all_option |
|
6 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
TestComboBoxBehavior.test_combo_boxes_sorted |
|
5 |
0 |
0 |
|
100% |
| tests/components/test_nifti_file_dialog.py |
(no function) |
|
102 |
0 |
0 |
|
100% |
| tests/conftest.py |
signal_emitter |
|
1 |
0 |
0 |
|
100% |
| tests/conftest.py |
temp_workspace |
|
27 |
0 |
0 |
|
100% |
| tests/conftest.py |
mock_context |
|
3 |
0 |
0 |
|
100% |
| tests/conftest.py |
mock_context.create_buttons |
|
1 |
1 |
0 |
|
0% |
| tests/conftest.py |
clean_settings |
|
4 |
0 |
0 |
|
100% |
| tests/conftest.py |
mock_logger |
|
7 |
0 |
0 |
|
100% |
| tests/conftest.py |
DummySignal.connect |
|
1 |
0 |
0 |
|
100% |
| tests/conftest.py |
DummyFileSelectorWidget.__init__ |
|
4 |
0 |
0 |
|
100% |
| tests/conftest.py |
DummyFileSelectorWidget.get_selected_files |
|
1 |
0 |
0 |
|
100% |
| tests/conftest.py |
DummyFileSelectorWidget.reset |
|
1 |
1 |
0 |
|
0% |
| tests/conftest.py |
DummyFileSelectorWidget.setEnabled |
|
1 |
1 |
0 |
|
0% |
| tests/conftest.py |
mock_file_selector |
|
2 |
0 |
0 |
|
100% |
| tests/conftest.py |
mock_file_selector_mask |
|
2 |
0 |
0 |
|
100% |
| tests/conftest.py |
mock_file_selector_dl |
|
2 |
0 |
0 |
|
100% |
| tests/conftest.py |
pytest_configure |
|
3 |
0 |
0 |
|
100% |
| tests/conftest.py |
(no function) |
|
36 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.mock_components |
|
9 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_controller_initialization |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_context_contains_required_keys |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_components_created |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_workspace_directory_created |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_start_page_set |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerInitialization.test_history_initialized |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.controller |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.test_go_to_next_page |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.test_go_to_next_page_none |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.test_go_to_previous_page |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.test_go_to_previous_page_none |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNavigation.test_return_to_import |
|
9 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.controller |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_create_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_buttons_connected |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_update_buttons_state_ready |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_update_buttons_state_not_ready |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_button_click_next |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerButtons.test_button_click_back |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerLanguage.controller |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerLanguage.test_set_language |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerLanguage.test_save_language |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerLanguage.test_language_changed_signal |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerLanguage.test_translator_load_called |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNiftiViewer.controller |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerNiftiViewer.test_open_nifti_viewer |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerStart.controller |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerStart.test_start_shows_main_window |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerSettings.clean_settings |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerSettings.test_loads_saved_language |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerSettings.test_default_language_en |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerSettings.test_debug_log_setting |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerIntegration.controller |
|
10 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerIntegration.test_full_navigation_flow |
|
9 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerIntegration.test_navigation_with_button_updates |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
TestControllerIntegration.test_return_to_import_resets_all |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
MockPath.__init__ |
|
1 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
MockPath.__str__ |
|
1 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
MockPath.__truediv__ |
|
1 |
0 |
0 |
|
100% |
| tests/core/test_controller.py |
MockPath.__repr__ |
|
1 |
1 |
0 |
|
0% |
| tests/core/test_controller.py |
(no function) |
|
69 |
1 |
0 |
|
99% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.temp_log_dir |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.log_file |
|
1 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_handler_initialization |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_log_dir_created |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_should_rollover_small_file |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_should_rollover_large_file |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_do_rollover_creates_compressed_file |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_do_rollover_maintains_backup_count |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestCompressedRotatingFileHandler.test_compressed_file_readable |
|
10 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.temp_log_dir |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.clean_logger |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_creates_logger |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_creates_log_file |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_with_console |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_without_console |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_custom_logfile |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_clears_existing_handlers |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_max_bytes |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetupLogger.test_setup_logger_backup_count |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestGetLogger.test_get_logger_returns_logger |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestGetLogger.test_get_logger_default_name |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestGetLogger.test_get_logger_custom_name |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestGetLogger.test_get_logger_same_instance |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetLogLevel.test_logger |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetLogLevel.test_set_log_level_debug |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetLogLevel.test_set_log_level_info |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetLogLevel.test_set_log_level_error |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestSetLogLevel.test_set_log_level_default_logger |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerFormatting.temp_log_dir |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerFormatting.test_file_formatter |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerFormatting.test_console_formatter |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerIntegration.temp_log_dir |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerIntegration.test_full_logging_workflow |
|
10 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestLoggerIntegration.test_logger_persistence |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.temp_log_dir |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.test_empty_log_message |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.test_very_long_message |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.test_special_characters_in_message |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.test_zero_backup_count |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
TestEdgeCases.test_permission_error_handling |
|
10 |
0 |
0 |
|
100% |
| tests/core/test_logger.py |
(no function) |
|
67 |
1 |
0 |
|
99% |
| tests/core/test_page_contract.py |
get_method_signatures |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_page_contract.py |
test_page_subclass_contract |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_page_contract.py |
(no function) |
|
17 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetBinPath.temp_bin_dir |
|
11 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetBinPath.test_get_bin_path_pyinstaller |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetBinPath.test_get_bin_path_local |
|
6 |
1 |
0 |
|
83% |
| tests/core/test_utils.py |
TestGetBinPath.test_get_bin_path_system_path |
|
6 |
1 |
0 |
|
83% |
| tests/core/test_utils.py |
TestGetBinPath.test_get_bin_path_not_found |
|
6 |
1 |
0 |
|
83% |
| tests/core/test_utils.py |
TestGetBinPath.test_get_bin_path_windows |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetAppDir.test_get_app_dir_creates_directory |
|
9 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetAppDir.test_get_app_dir_returns_path_object |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetAppDir.test_get_app_dir_idempotent |
|
8 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestResourcePath.test_resource_path_pyinstaller |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestResourcePath.test_resource_path_development |
|
7 |
1 |
0 |
|
86% |
| tests/core/test_utils.py |
TestResourcePath.test_resource_path_absolute |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_macos |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_linux |
|
6 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_linux_default_shell |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_windows |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_error_fallback |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestGetShellPath.test_get_shell_path_unknown_system |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestSetupFSLEnv.test_setup_fsl_env_success |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestSetupFSLEnv.test_setup_fsl_env_uses_zsh |
|
5 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestSetupFSLEnv.test_setup_fsl_env_insufficient_output |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestSetupFSLEnv.test_setup_fsl_env_empty_output |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestSetupFSLEnv.test_setup_fsl_env_command_fails |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestPlatformSpecificBehavior.test_windows_executable_extension |
|
7 |
2 |
0 |
|
71% |
| tests/core/test_utils.py |
TestPlatformSpecificBehavior.test_linux_no_extension |
|
7 |
2 |
0 |
|
71% |
| tests/core/test_utils.py |
TestEdgeCases.test_get_bin_path_empty_name |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestEdgeCases.test_resource_path_empty_relative |
|
2 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestEdgeCases.test_resource_path_absolute_input |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestEdgeCases.test_setup_fsl_env_whitespace_output |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestEdgeCases.test_get_shell_path_empty_environ |
|
4 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestIntegrationScenarios.test_macos_full_setup |
|
7 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestIntegrationScenarios.test_development_mode_paths |
|
13 |
1 |
0 |
|
92% |
| tests/core/test_utils.py |
TestErrorHandling.test_shell_not_found_fallback |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestErrorHandling.test_app_dir_permission_error |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
TestErrorHandling.test_setup_fsl_malformed_output |
|
3 |
0 |
0 |
|
100% |
| tests/core/test_utils.py |
(no function) |
|
80 |
1 |
0 |
|
99% |
| tests/threads/test_dl_worker.py |
test_input_files |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
mock_external_dependencies |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestDlWorkerInitialization.test_initialization_basic |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestDlWorkerInitialization.test_initialization_signals_exist |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestDlWorkerInitialization.test_initialization_process_instances_none |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestUpdateProgress.test_update_progress_basic |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestUpdateProgress.test_update_progress_zero_files |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestUpdateProgress.test_update_progress_calculation |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestUpdateProgress.test_update_progress_max_100 |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestStart.test_start_initializes_counters |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestStart.test_start_calls_process_single_file |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestStart.test_start_emits_initial_progress |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestProcessSingleFile.test_process_single_file_creates_temp_dir |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestProcessSingleFile.test_process_single_file_sets_current_file |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestProcessSingleFile.test_process_single_file_calls_run_synthstrip |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestProcessSingleFile.test_process_single_file_emits_log |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestRunSynthstrip.test_run_synthstrip_creates_process |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestRunSynthstrip.test_run_synthstrip_connects_signals |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestRunSynthstrip.test_run_synthstrip_starts_process |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestRunSynthstrip.test_run_synthstrip_emits_signals |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnSynthstripFinished.test_on_synthstrip_finished_success |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnSynthstripFinished.test_on_synthstrip_finished_failure |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnSynthstripFinished.test_on_synthstrip_finished_cancelled |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestCancel.test_cancel_sets_flag |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestCancel.test_cancel_terminates_running_processes |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestCancel.test_cancel_kills_if_not_terminated |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestCancel.test_cancel_emits_finished_signal |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnStdout.test_on_stdout_basic |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnStdout.test_on_stdout_multiline |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnStderr.test_on_stderr_basic |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnError.test_on_error_failed_to_start |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestOnError.test_on_error_crashed |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestPhaseTransitions.test_synthstrip_to_coregistration |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestPhaseTransitions.test_coregistration_to_reorientation |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestMultipleFiles.test_process_multiple_files_sequentially |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestMultipleFiles.test_finish_when_all_files_processed |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestEdgeCases.test_empty_file_list |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestEdgeCases.test_unicode_in_filename |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestIntegration.test_full_workflow_single_file |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestMemoryAndPerformance.test_many_files_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
TestAccessibility.test_signals_have_docstrings |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_dl_worker.py |
(no function) |
|
66 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestImportThreadInitialization.test_init_single_path |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestImportThreadInitialization.test_init_multiple_paths |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestImportThreadInitialization.test_signals_exist |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestFileDetection.test_is_nifti_file |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestFileDetection.test_is_dicom_file_valid |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestFileDetection.test_is_dicom_file_invalid |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestFileDetection.test_is_dicom_file_exception |
|
2 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSDetection.test_is_bids_folder_valid |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSDetection.test_is_bids_folder_invalid |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSDetection.test_is_bids_folder_no_sub_prefix |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSubjectIDGeneration.test_get_next_sub_id_empty_workspace |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSubjectIDGeneration.test_get_next_sub_id_existing_subjects |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSubjectIDGeneration.test_get_next_sub_id_non_sequential |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSubjectIDGeneration.test_get_next_sub_id_invalid_names |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestPatientDetectionHeuristics.test_subfolders_look_like_different_patients |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestPatientDetectionHeuristics.test_subfolders_single_patient |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestPatientDetectionHeuristics.test_are_dicom_series_of_same_patient_true |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestPatientDetectionHeuristics.test_are_dicom_series_of_same_patient_false |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestPatientDetectionHeuristics.test_are_dicom_series_no_dicom_files |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestCancellation.test_cancel_flag_set |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestCancellation.test_cancel_terminates_process |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestCancellation.test_cancel_no_process |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSImport.test_import_bids_folder_directly |
|
18 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSImport.test_import_bids_folder_directly.on_finished |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestDICOMConversion.test_convert_dicom_folder_success |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestDICOMConversion.test_convert_dicom_folder_missing_tool |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestDICOMConversion.test_convert_dicom_folder_process_error |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSStructureConversion.test_convert_to_bids_structure |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestBIDSStructureConversion.test_convert_to_bids_structure_nested |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSinglePatientProcessing.test_process_single_patient_folder_with_nifti |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSinglePatientProcessing.test_process_single_patient_folder_with_dicom |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestSinglePatientProcessing.test_process_single_patient_folder_cancelled |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_invalid_folder_path |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_invalid_folder_path.on_error |
|
2 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_empty_folders_list |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_empty_folders_list.on_error |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_cancelled_no_error_emit |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestErrorHandling.test_run_cancelled_no_error_emit.on_error |
|
1 |
1 |
0 |
|
0% |
| tests/threads/test_import_thread.py |
TestProgressEmission.test_progress_increases_monotonically |
|
22 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestMultipleFoldersImport.test_run_multiple_folders |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestMultipleFoldersImport.test_run_multiple_folders_progress |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_bids_folder |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_direct_medical_files |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_dicom_series_same_patient |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_multiple_patients |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_empty_folder |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestHandleImport.test_handle_import_not_directory |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestComplexScenarios.test_nested_bids_structure |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestComplexScenarios.test_mixed_content_folder |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestComplexScenarios.test_large_dataset_simulation |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestComplexScenarios.test_special_characters_in_filenames |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestComplexScenarios.test_dicom_missing_patient_info |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestConcurrencyAndThreadSafety.test_cancel_during_file_copy |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestConcurrencyAndThreadSafety.test_cancel_during_file_copy.cancel_after_delay |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestConcurrencyAndThreadSafety.test_multiple_progress_emissions |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestConcurrencyAndThreadSafety.test_multiple_progress_emissions.count_progress |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestEdgeCases.test_symlink_handling |
|
10 |
1 |
0 |
|
90% |
| tests/threads/test_import_thread.py |
TestEdgeCases.test_readonly_source_files |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestEdgeCases.test_very_long_path |
|
11 |
2 |
0 |
|
82% |
| tests/threads/test_import_thread.py |
TestEdgeCases.test_unicode_filenames |
|
13 |
2 |
0 |
|
85% |
| tests/threads/test_import_thread.py |
TestIntegrationScenarios.test_full_dicom_to_bids_workflow |
|
34 |
3 |
0 |
|
91% |
| tests/threads/test_import_thread.py |
TestIntegrationScenarios.test_full_dicom_to_bids_workflow.mock_popen_side_effect |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
TestIntegrationScenarios.test_mixed_patient_dataset_import |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
test_nifti_extensions |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
test_non_nifti_extensions |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_import_thread.py |
(no function) |
|
114 |
1 |
0 |
|
99% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadInitialization.test_init_with_all_parameters |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadInitialization.test_signals_exist |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_successful_save |
|
23 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_successful_save.on_success |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_json_metadata_structure |
|
25 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_json_indentation |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_data_type_conversion_to_uint8 |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_error_handling_invalid_path |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_error_during_nifti_save |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveNiftiThreadExecution.test_different_affine_matrices |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadInitialization.test_init_regular_image |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadInitialization.test_init_overlay_image |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadInitialization.test_signals_exist |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread3D.test_load_3d_nifti_success |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread3D.test_load_3d_nifti_success.on_finished |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread3D.test_load_3d_progress_emissions |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread4D.test_load_4d_nifti_success |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread4D.test_anisotropic_voxels |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread4D.test_different_data_types |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThread4D.test_negative_values_handling |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveLoadThreadsIntegration.test_save_and_reload_cycle |
|
26 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveLoadThreadsIntegration.test_save_load_multiple_files |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSaveLoadThreadsIntegration.test_save_4d_reload_as_4d |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestConcurrencyAndThreadSafety.test_multiple_save_threads_concurrent |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestConcurrencyAndThreadSafety.test_multiple_save_threads_concurrent.on_success |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestConcurrencyAndThreadSafety.test_multiple_load_threads_concurrent |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestConcurrencyAndThreadSafety.test_multiple_load_threads_concurrent.on_finished |
|
1 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSpecialCases.test_save_zero_volume |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSpecialCases.test_load_zero_volume |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSpecialCases.test_save_binary_mask |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSpecialCases.test_load_compressed_vs_uncompressed |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestSpecialCases.test_save_with_special_characters_in_path |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestParameterValidation.test_save_with_extreme_radius_values |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestParameterValidation.test_save_with_extreme_difference_values |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestPerformanceAndScalability.test_large_4d_dataset |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestPerformanceAndScalability.test_progress_tracking_accuracy |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestNiftiThreadParameterized.test_save_various_shapes |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestNiftiThreadParameterized.test_load_overlay_flag |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestNiftiThreadParameterized.test_load_4d_normalization_per_volume |
|
20 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNormalization.test_normalize_data_matplotlib_style |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNormalization.test_normalize_uniform_data |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNormalization.test_normalize_with_nan_values |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNormalization.test_normalize_empty_volume |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNormalization.test_normalize_volume_all_invalid |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadCanonicalOrientation.test_canonical_orientation_applied |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadErrorHandling.test_error_file_not_found |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadErrorHandling.test_error_invalid_nifti_file |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadErrorHandling.test_error_corrupted_nifti |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadErrorHandling.test_error_during_load |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadNifti2Support.test_nifti2_image_loads |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestImageLoadThreadMemoryMapping.test_memory_mapping_used |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestEdgeCasesAndIntegration.test_very_small_image |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestEdgeCasesAndIntegration.test_large_dimensions |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestEdgeCasesAndIntegration.test_invalid_file_emits_error |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestEdgeCasesAndIntegration.test_save_nifti_thread_success |
|
22 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
TestEdgeCasesAndIntegration.test_save_nifti_thread_error |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_nifti_utils_threads.py |
(no function) |
|
85 |
1 |
0 |
|
99% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadInitialization.test_init_with_bet |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadInitialization.test_init_with_hdbet |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadInitialization.test_init_with_synthstrip |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadInitialization.test_signals_exist |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadCancellation.test_cancel_flag_set |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadCancellation.test_cancel_terminates_process |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadCancellation.test_cancel_no_process |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSkullStripThreadCancellation.test_cancel_process_error_handling |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBETCommandBuilding.test_bet_basic_command |
|
21 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBETCommandBuilding.test_bet_with_options |
|
21 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBETCommandBuilding.test_bet_with_center_coordinates |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBETCommandBuilding.test_bet_brain_extracted_option |
|
18 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestHDBETCommandBuilding.test_hdbet_basic_command |
|
18 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestHDBETCommandBuilding.test_hdbet_cpu_mode |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestHDBETCommandBuilding.test_hdbet_cuda_mode |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestHDBETCommandBuilding.test_sinthstrip_basic_command |
|
18 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_output_directory_creation |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_output_directory_creation.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_bet |
|
23 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_bet.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_hdbet |
|
20 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_hdbet.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_output_filename_format_bet |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_output_filename_format_bet.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_synthstrip |
|
20 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestOutputGeneration.test_json_metadata_creation_synthstrip.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_multiple_files_processing |
|
25 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_multiple_files_processing.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_progress_tracking_multiple_files |
|
23 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_progress_tracking_multiple_files.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_all_completed_signal |
|
24 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestBatchProcessing.test_all_completed_signal.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_process_failure_nonzero_exit |
|
21 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_missing_subject_id |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_exception_during_processing |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_partial_failure_multiple_files |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_partial_failure_multiple_files.get_mock_process |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestErrorHandling.test_partial_failure_multiple_files.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestCancellationDuringProcessing.test_cancel_during_single_file |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestCancellationDuringProcessing.test_cancel_during_single_file.wait_with_cancel |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestCancellationDuringProcessing.test_cancel_stops_batch_processing |
|
23 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestCancellationDuringProcessing.test_cancel_stops_batch_processing.on_file_started |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestCancellationDuringProcessing.test_cancel_stops_batch_processing.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSubjectIDExtraction.test_extract_subject_id_standard_bids |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSubjectIDExtraction.test_extract_subject_id_standard_bids.mock_move |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSubjectIDExtraction.test_extract_subject_id_nested_path |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSubjectIDExtraction.test_extract_subject_id_nested_path.mock_move |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestTempDirectoryHandling.test_temp_directory_created |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestTempDirectoryHandling.test_temp_directory_cleanup_on_error |
|
15 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestTempDirectoryHandling.test_temp_directory_cleanup_on_cancel |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestTempDirectoryHandling.test_temp_directory_cleanup_on_cancel.wait_and_cancel |
|
2 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_empty_file_list |
|
6 |
2 |
0 |
|
67% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_file_with_spaces_in_name |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_file_with_spaces_in_name.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_nifti_without_gz_extension |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_nifti_without_gz_extension.mock_move |
|
4 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_extreme_f_values |
|
18 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestEdgeCases.test_extreme_f_values.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSignalEmissions.test_progress_updated_signal |
|
19 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSignalEmissions.test_progress_updated_signal.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSignalEmissions.test_file_started_signal_order |
|
23 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
TestSignalEmissions.test_file_started_signal_order.mock_move |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_skull_strip_thread.py |
(no function) |
|
128 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCopyDeleteThreadInitialization.test_init_copy_file |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCopyDeleteThreadInitialization.test_init_delete_folder |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCopyDeleteThreadInitialization.test_init_copy_and_delete |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCopyDeleteThreadInitialization.test_signals_exist |
|
3 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileCopy.test_copy_file_success |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileCopy.test_copy_file_overwrites_existing |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileCopy.test_copy_file_to_subfolder |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileCopy.test_copy_binary_file |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileCopy.test_copy_large_file |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderCopy.test_copy_folder_success |
|
17 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderCopy.test_copy_nested_folder |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderCopy.test_copy_folder_with_dirs_exist_ok |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderCopy.test_copy_empty_folder |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileDelete.test_delete_file_success |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFileDelete.test_delete_readonly_file |
|
12 |
3 |
0 |
|
75% |
| tests/threads/test_utils_threads.py |
TestFolderDelete.test_delete_folder_success |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderDelete.test_delete_nested_folder |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestFolderDelete.test_delete_empty_folder |
|
5 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCombinedOperations.test_copy_then_delete_file |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestCombinedOperations.test_copy_then_delete_folder |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_copy_missing_source |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_copy_missing_src_parameter |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_copy_missing_dst_parameter |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_delete_missing_source |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_delete_missing_src_parameter |
|
6 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_copy_to_invalid_destination |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorHandling.test_copy_permission_error |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_copy_file_to_itself |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_copy_symlink |
|
13 |
1 |
0 |
|
92% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_delete_symlink |
|
11 |
1 |
0 |
|
91% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_copy_file_with_special_characters |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_copy_unicode_filename |
|
12 |
2 |
0 |
|
83% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_copy_hidden_file |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestEdgeCases.test_no_operation_specified |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestSignalEmissions.test_finished_signal_contains_paths |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestSignalEmissions.test_error_signal_contains_details |
|
9 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestSignalEmissions.test_multiple_finished_signals_on_combined_operation |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestConcurrency.test_multiple_copy_threads_concurrent |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestConcurrency.test_multiple_delete_threads_concurrent |
|
14 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPerformance.test_copy_many_files_in_folder |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPerformance.test_delete_folder_with_many_files |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPerformance.test_copy_deep_nested_structure |
|
16 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestRealWorldScenarios.test_backup_workspace_folder |
|
12 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestRealWorldScenarios.test_cleanup_temp_derivatives |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestRealWorldScenarios.test_move_processed_results |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPathNormalization.test_copy_with_trailing_slash |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPathNormalization.test_copy_with_relative_path |
|
11 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestPathNormalization.test_copy_with_absolute_path |
|
7 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorMessages.test_error_message_format |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
TestErrorMessages.test_translatable_messages |
|
10 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
test_copy_parametrized_folder_flag |
|
13 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
test_operation_flags_parametrized |
|
8 |
0 |
0 |
|
100% |
| tests/threads/test_utils_threads.py |
(no function) |
|
77 |
1 |
0 |
|
99% |
| tests/ui/test_dl_execution_page.py |
mock_dl_worker |
|
15 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
mock_context_dl |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDlExecutionPageInitialization.test_initialization_basic |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDlExecutionPageInitialization.test_initialization_with_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDlExecutionPageInitialization.test_ui_elements_created |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDlExecutionPageInitialization.test_initial_button_visibility |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestOnEnter.test_on_enter_resets_state |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestOnEnter.test_on_enter_populates_file_list |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestOnEnter.test_on_enter_clears_previous_list |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestOnEnter.test_on_enter_without_files_in_context |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestOnEnter.test_on_enter_with_empty_file_list |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_basic |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_no_context |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_no_files_in_context |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_empty_file_list |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_connects_signals |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_worker_parameters |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStartProcessing.test_start_processing_clears_log |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateProgress.test_update_progress_basic |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateProgress.test_update_progress_multiple_values |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateProgress.test_update_progress_zero |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateProgress.test_update_progress_hundred |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_info |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_error |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_warning |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_debug |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_includes_timestamp |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_autoscroll |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAddLogMessage.test_add_log_message_multiple |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateFileStatus.test_update_file_status_basic |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateFileStatus.test_update_file_status_completed |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateFileStatus.test_update_file_status_error |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateFileStatus.test_update_file_status_nonexistent_file |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUpdateFileStatus.test_update_file_status_multiple_updates |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestCancelProcessing.test_cancel_processing_with_worker |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestCancelProcessing.test_cancel_processing_without_worker |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestCancelProcessing.test_cancel_processing_adds_log |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestProcessingFinished.test_processing_finished_success |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestProcessingFinished.test_processing_finished_failure |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestProcessingFinished.test_processing_finished_updates_context |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestProcessingFinished.test_processing_finished_current_operation_text |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestProcessingFinished.test_processing_finished_reprocess_button |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestResetProcessingState.test_reset_processing_state_basic |
|
12 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestResetProcessingState.test_reset_processing_state_button_text |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBackNavigation.test_back_not_processing |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBackNavigation.test_back_while_processing_cancelled |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBackNavigation.test_back_while_processing_not_cancelled |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBackNavigation.test_back_no_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestNextNavigation.test_next_returns_none |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestReadyToAdvance.test_is_ready_to_advance_always_false |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestReadyToGoBack.test_is_ready_to_go_back_always_true |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestTranslation.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestTranslation.test_translate_ui_updates_labels |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestTranslation.test_translate_ui_repopulates_file_list |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_rapid_start_cancel |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_multiple_processing_finished_calls |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_update_file_status_empty_list |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_very_long_log_messages |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_unicode_in_filenames |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_progress_value_out_of_range |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestEdgeCases.test_concurrent_file_updates |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_button_styling |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_log_text_readonly |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_files_list_max_height |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_log_text_max_height |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_header_alignment |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestUIInteraction.test_current_operation_alignment |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestWorkerIntegration.test_worker_signals_connected |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestWorkerIntegration.test_worker_created_with_correct_parameters |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestWorkerIntegration.test_worker_start_called |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestContextHandling.test_context_none_handling |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestContextHandling.test_context_without_workspace_path |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestContextHandling.test_context_without_update_main_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestContextHandling.test_processing_output_dir_set |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStateTransitions.test_state_idle_to_processing |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStateTransitions.test_state_processing_to_completed |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStateTransitions.test_state_processing_to_cancelled |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestStateTransitions.test_state_completed_to_reset |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestIntegration.test_full_processing_flow_success |
|
19 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestIntegration.test_full_processing_flow_with_cancel |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestIntegration.test_full_processing_flow_with_error |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestIntegration.test_reprocess_flow |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestErrorHandling.test_start_processing_handles_worker_creation_error |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestErrorHandling.test_processing_finished_without_workspace_path |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBoundaryConditions.test_many_files_in_list |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBoundaryConditions.test_empty_filename |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBoundaryConditions.test_very_long_filename |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestBoundaryConditions.test_rapid_log_messages |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestMemoryAndCleanup.test_worker_cleanup_after_finish |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestMemoryAndCleanup.test_multiple_processing_cycles |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDocumentation.test_class_docstring |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestDocumentation.test_on_enter_docstring |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAccessibility.test_buttons_have_text |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
TestAccessibility.test_labels_have_text |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_execution_page.py |
(no function) |
|
127 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
segmentation_workspace |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDlNiftiSelectionPageInitialization.test_initialization_basic |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDlNiftiSelectionPageInitialization.test_initialization_with_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDlNiftiSelectionPageInitialization.test_ui_elements_created |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDlNiftiSelectionPageInitialization.test_file_selector_widget_configured |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_exists_nii_gz |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_exists_nii |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_not_exists |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_no_subject_id |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_directory_not_exists |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_multiple_files |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_ignores_non_seg_files |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestHasExistingSegmentation.test_has_existing_segmentation_nested_subject_path |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestBackNavigation.test_back_with_previous_page |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestBackNavigation.test_back_no_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_creates_dl_execution_page |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_saves_selected_files_to_context |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_adds_to_history |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_reuses_existing_next_page |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_calls_on_enter |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestNextNavigation.test_next_with_empty_selection |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestOnEnter.test_on_enter_clears_status |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestReadyToAdvance.test_is_ready_to_advance_with_files |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestReadyToAdvance.test_is_ready_to_advance_without_files |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestReadyToAdvance.test_is_ready_to_advance_single_file |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestReadyToGoBack.test_is_ready_to_go_back_always_true |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestResetPage.test_reset_page_clears_status |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestResetPage.test_reset_page_clears_context |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestResetPage.test_reset_page_without_context |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestTranslation.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestTranslation.test_translate_ui_updates_title |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestTranslation.test_language_changed_signal |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_subject_id_extraction_complex_path |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_multiple_sub_in_path |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_workspace_path_with_trailing_slash |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_special_characters_in_paths |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_empty_segmentation_directory |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestEdgeCases.test_unicode_in_paths |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestIntegration.test_full_selection_flow |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestIntegration.test_reset_and_reselect_flow |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestIntegration.test_back_and_forth_navigation |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestIntegration.test_status_label_lifecycle |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestContextHandling.test_context_none_handling |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestContextHandling.test_context_without_history |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestContextHandling.test_selected_files_persisted_in_context |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestContextHandling.test_multiple_next_calls_update_context |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestFileSelectorIntegration.test_file_selector_get_selected_files_called |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestFileSelectorIntegration.test_is_ready_to_advance_uses_file_selector |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestFileSelectorIntegration.test_file_selector_receives_correct_parameters |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestPathHandling.test_path_normalization |
|
11 |
1 |
0 |
|
91% |
| tests/ui/test_dl_selection_page.py |
TestPathHandling.test_relative_vs_absolute_paths |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestPathHandling.test_symlinks_in_path |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestUIInteraction.test_title_styling |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestUIInteraction.test_status_label_alignment |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestUIInteraction.test_layout_structure |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestErrorHandling.test_has_existing_segmentation_permission_error |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestErrorHandling.test_has_existing_segmentation_with_corrupted_directory |
|
13 |
2 |
0 |
|
85% |
| tests/ui/test_dl_selection_page.py |
TestBoundaryConditions.test_very_long_path |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestBoundaryConditions.test_many_files_in_directory |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestBoundaryConditions.test_subject_id_at_end_of_path |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestBoundaryConditions.test_workspace_path_equals_nifti_path |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestConcurrency.test_multiple_pages_same_context |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestConcurrency.test_rapid_next_back_navigation |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDocumentation.test_has_existing_segmentation_docstring |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestDocumentation.test_reset_page_docstring |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestStateConsistency.test_state_after_multiple_operations |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
TestStateConsistency.test_state_independence_from_previous_page |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_dl_selection_page.py |
(no function) |
|
95 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
import_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageSetup.test_page_initialization |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageSetup.test_drop_label_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageSetup.test_stylesheet_applied |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageReadiness.temp_workspace |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageReadiness.test_not_ready_when_workspace_empty |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageReadiness.test_ready_when_workspace_has_folder |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageReadiness.test_ignores_hidden_files |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageReadiness.test_cannot_go_back |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageNavigation.test_next_creates_patient_selection_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageNavigation.test_next_returns_cached_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageNavigation.test_back_returns_false |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageDragDrop.temp_source_folder |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageDragDrop.test_drag_enter_accepts_urls |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageDragDrop.test_drop_event_handles_folder |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageDialogs.temp_source_folder |
|
3 |
3 |
0 |
|
0% |
| tests/ui/test_import_page.py |
TestImportPageDialogs.test_mouse_press_opens_dialog |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageDialogs.test_open_folder_dialog_configuration |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.temp_source_folder |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_handle_import_creates_thread |
|
12 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_handle_import_creates_progress_dialog |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_finished_removes_thread |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_finished_updates_buttons |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_error_shows_message |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_error_shows_message.mock_critical |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_error_handles_removed_thread |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageThreads.test_on_import_canceled_terminates_thread |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageCleanup.test_close_event_cleans_dialogs |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageCleanup.test_close_event_cancels_threads |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageTranslation.test_translate_ui_called_on_init |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageTranslation.test_translate_ui_updates_label |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageTranslation.test_language_changed_signal_connected |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageIntegration.temp_workspace |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageIntegration.temp_source_folder |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
TestImportPageIntegration.test_full_import_workflow |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_import_page.py |
(no function) |
|
62 |
1 |
0 |
|
98% |
| tests/ui/test_main_window.py |
mock_context |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
mock_context.cleanup |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
main_window |
|
8 |
2 |
0 |
|
75% |
| tests/ui/test_main_window.py |
TestMainWindowSetup.test_window_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestMainWindowSetup.test_menu_bar_created |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestMainWindowSetup.test_splitter_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestMainWindowSetup.test_footer_with_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestMainWindowSetup.test_language_actions_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestLanguageManagement.test_set_language_emits_signal |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestLanguageManagement.test_set_language_checks_correct_action |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestLanguageManagement.test_language_action_group_exclusive |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWorkspaceOperations.test_clear_folder_confirms_deletion |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWorkspaceOperations.test_clear_folder_deletes_on_confirmation |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWorkspaceOperations.test_clear_folder_returns_to_import |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestThreadManagement.test_new_thread_adds_to_list |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestThreadManagement.test_copydelete_thread_error_removes_thread |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestThreadManagement.test_copydelete_thread_success_removes_thread |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestThreadManagement.test_close_event_stops_threads |
|
23 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestDebugLog.test_toggle_debug_log_enables |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestDebugLog.test_toggle_debug_log_disables |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWidgetManagement.test_set_widgets_first_time |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWidgetManagement.test_export_file_info_shows_message |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestWidgetManagement.test_export_file_info_shows_message.mock_information |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
TestIntegration.test_full_workflow |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_main_window.py |
(no function) |
|
45 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
mask_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageSetup.test_page_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageSetup.test_title_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageSetup.test_file_selector_created |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageSetup.test_viewer_button_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageExistingMask.test_has_existing_manual_mask |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageExistingMask.test_has_no_existing_mask |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageExistingMask.test_has_existing_mask_no_subject_id |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageExistingMask.test_has_existing_mask_empty_directory |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageViewer.test_open_nifti_viewer_calls_context |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageViewer.test_open_nifti_viewer_uses_last_file |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageViewer.test_open_nifti_viewer_handles_error |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageReadiness.test_not_ready_to_advance |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageReadiness.test_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageNavigation.test_back_returns_previous_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageNavigation.test_back_returns_none_without_previous |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageReset.test_reset_clears_selected_file |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageReset.test_reset_calls_clear_selected_files |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageReset.test_reset_disables_viewer_button |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageTranslation.test_translate_ui_updates_title |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageTranslation.test_translate_ui_updates_button |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageOnEnter.test_on_enter_does_nothing |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
TestNiftiMaskSelectionPageIntegration.test_full_workflow |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_mask_selection_page.py |
(no function) |
|
42 |
1 |
0 |
|
98% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.setUpClass |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.tearDownClass |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.setUp |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.tearDown |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_compute_mask_numba_mm |
|
22 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_apply_overlay_numba |
|
27 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_pad_volume_to_shape |
|
16 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_screen_to_image_coords |
|
20 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_format_info_text |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_init_ui |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_open_file_button |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_automaticROI_drawing |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_load_file |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_load_4d_file |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_load_overlay |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_automaticROI_clicked |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_automaticROI_save |
|
19 |
1 |
0 |
|
95% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_resize_event |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_colormap_changed |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_slice_changed |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_time_changed |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_update_coordinates |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_update_cross_view_lines |
|
14 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_translate_ui |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
TestNiftiViewer.test_close_event |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_nifti_viewer.py |
(no function) |
|
50 |
1 |
0 |
|
98% |
| tests/ui/test_patient_selection_page.py |
patient_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSetup.test_page_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSetup.test_title_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSetup.test_select_buttons_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSetup.test_scroll_area_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSetup.test_column_count_default |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPagePatientLoading.temp_workspace |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPagePatientLoading.test_find_patient_dirs |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPagePatientLoading.test_find_patient_dirs_ignores_derivatives |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPagePatientLoading.test_load_patients_creates_buttons |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPagePatientLoading.test_load_patients_adds_to_grid |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_toggle_patient_select |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_toggle_patient_deselect |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_toggle_updates_main_buttons |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_select_all_patients |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_deselect_all_patients |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageSelection.test_get_selected_patients |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReadiness.test_not_ready_without_selection |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReadiness.test_ready_with_selection |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReadiness.test_can_go_back |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageNavigation.test_back_returns_previous_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageNavigation.test_next_without_cleanup |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageNavigation.test_next_with_cleanup_confirmed |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageNavigation.test_next_with_cleanup_cancelled |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageNavigation.test_next_creates_tool_selection_page |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageCleanup.temp_workspace |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageCleanup.patient_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageCleanup.test_cleanup_removes_unselected_patients |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageCleanup.test_cleanup_removes_from_derivatives |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageCleanup.test_cleanup_handles_errors |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageLayout.temp_workspace |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageLayout.test_update_column_count_wide |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageLayout.test_update_column_count_narrow |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageLayout.test_resize_event_updates_columns |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageLayout.test_reload_patient_grid_maintains_selection |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReset.test_reset_page_clears_selections |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReset.test_reset_page_clears_buttons |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageReset.test_on_enter_maintains_selections |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageTranslation.test_translate_ui_updates_title |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageTranslation.test_translate_ui_updates_buttons |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageIntegration.temp_workspace |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageIntegration.test_full_workflow_select_and_advance |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
TestPatientSelectionPageIntegration.test_full_workflow_with_cleanup |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_patient_selection_page.py |
(no function) |
|
71 |
1 |
0 |
|
99% |
| tests/ui/test_pipeline_execution_page.py |
mock_get_bin_path |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
pipeline_config_exec |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
mock_tree_view |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
mock_context_exec |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_initialization_basic |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_initialization_with_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_pipeline_output_dir_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_ui_elements_created |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_folder_cards_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_get_bin_path_called |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecutionPageInitialization.test_get_bin_path_error |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestConfigFileDetection.test_find_latest_config_single |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestConfigFileDetection.test_find_latest_config_multiple |
|
12 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestConfigFileDetection.test_find_latest_config_no_files |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestGetSubList.test_get_sub_list_basic |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestGetSubList.test_get_sub_list_filters_non_sub |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecution.test_start_pipeline_basic |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecution.test_start_pipeline_already_running |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecution.test_start_pipeline_arguments |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestPipelineExecution.test_start_pipeline_failed_to_start |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_process_pipeline_output_log |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_process_pipeline_output_error |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_process_pipeline_output_progress |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_process_pipeline_output_finished |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_process_pipeline_output_generic |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_on_stdout_ready |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessOutput.test_on_stderr_ready |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_progress_valid |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_progress_invalid |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_current_operation_starting |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_current_operation_patient |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_current_operation_analysis |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_update_current_operation_saving |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProgressUpdates.test_extract_patient_id_from_log |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessCompletion.test_on_process_finished_success |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessCompletion.test_on_process_finished_error |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessCompletion.test_on_pipeline_finished |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessCompletion.test_on_pipeline_error |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestProcessCompletion.test_on_process_error |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestStopButton.test_stop_button_running |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestStopButton.test_stop_button_forced_kill |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestStopButton.test_stop_button_not_running |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestLogMessages.test_log_message_basic |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestLogMessages.test_log_message_multiple |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestLogMessages.test_log_message_autoscroll |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_on_enter_starts_pipeline |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_on_enter_not_started_twice |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_back_calls_reset |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_back_no_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_next_with_confirmation |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_next_cancelled |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_is_ready_to_go_back_completed |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_is_ready_to_go_back_error |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_is_ready_to_go_back_running |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestNavigation.test_is_ready_to_advance |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestResetPage.test_reset_page_basic |
|
14 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestResetPage.test_reset_page_color |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestResetPage.test_reset_page_current_operation |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestCheckNewFiles.test_check_new_files |
|
7 |
2 |
0 |
|
71% |
| tests/ui/test_pipeline_execution_page.py |
TestDestructor.test_destructor_kills_process |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestDestructor.test_destructor_no_process |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestTranslation.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestTranslation.test_translate_ui_updates_labels |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestTranslation.test_language_changed_signal |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestFolderCards.test_folder_cards_connected_to_tree_view |
|
4 |
1 |
0 |
|
75% |
| tests/ui/test_pipeline_execution_page.py |
TestFolderCards.test_folder_cards_paths |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_empty_config |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_invalid_config_id |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_process_output_empty_lines |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_multiple_progress_updates |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_unicode_in_logs |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_very_long_log_messages |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_rapid_process_output |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestEdgeCases.test_concurrent_stop_and_finish |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestReturnToImport.test_return_to_import_not_running |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestReturnToImport.test_return_to_import_while_running |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestIntegration.test_full_pipeline_success_flow |
|
14 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestIntegration.test_full_pipeline_error_flow |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
TestIntegration.test_full_pipeline_stop_flow |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_execution_page.py |
(no function) |
|
109 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.temp_workspace |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.test_page_initialization |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.test_title_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.test_buttons_created |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelectionPageSetup.test_summary_widget_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.temp_workspace |
|
15 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.test_check_patient_eligible |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.test_check_patient_missing_flair |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.test_check_patient_missing_skull_stripping |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRequirements.test_check_patient_missing_segmentation |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.temp_workspace |
|
17 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.test_select_all_eligible |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.test_deselect_all |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.test_toggle_patient_select |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSelection.test_toggle_patient_deselect |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientLoading.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientLoading.test_find_patient_dirs |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientLoading.test_load_patients_creates_buttons |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientLoading.test_load_patients_updates_status |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.temp_workspace |
|
18 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.pipeline_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.test_build_pipeline_config_creates_file |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.test_build_pipeline_config_content |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.test_get_next_config_id_first |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelineConfigGeneration.test_get_next_config_id_existing |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRefresh.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientRefresh.test_refresh_maintains_valid_selections |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.pipeline_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.test_is_ready_to_advance_with_selection |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.test_is_ready_to_advance_without_selection |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.test_is_ready_to_go_back |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.test_back_returns_previous_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientNavigation.test_next_creates_review_page |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSummary.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSummary.test_get_selected_patients |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSummary.test_get_eligible_patients |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientSummary.test_get_patient_status_summary |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientReset.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientReset.test_reset_clears_selections |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientReset.test_reset_clears_status |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientIntegration.temp_workspace |
|
16 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientIntegration.pipeline_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
TestPipelinePatientIntegration.test_full_workflow |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_patient_selection.py |
(no function) |
|
81 |
1 |
0 |
|
99% |
| tests/ui/test_pipeline_review_page.py |
pipeline_config_basic |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
pipeline_config_multiple |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
pipeline_config_need_revision |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestPipelineReviewPageInitialization.test_initialization_basic |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestPipelineReviewPageInitialization.test_initialization_with_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestPipelineReviewPageInitialization.test_ui_elements_created |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestPipelineReviewPageInitialization.test_patient_widgets_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigFileDetection.test_find_latest_config_single |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigFileDetection.test_find_latest_config_multiple |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigFileDetection.test_find_latest_config_no_pipeline_dir |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigFileDetection.test_find_latest_config_no_files |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigFileDetection.test_find_latest_config_invalid_names |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigLoading.test_load_config_valid |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigLoading.test_load_config_invalid_json |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestConfigLoading.test_load_config_file_not_found |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestSaveConfiguration.test_save_single_patient |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestSaveConfiguration.test_save_multiple_patients |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestOnEnter.test_on_enter_no_changes |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestOnEnter.test_on_enter_new_config_file |
|
12 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestOnEnter.test_on_enter_config_content_changed |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestNextNavigation.test_next_all_saved |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestNextNavigation.test_next_need_revision |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestNextNavigation.test_next_existing_next_page |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestNextNavigation.test_next_updates_history |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestBackNavigation.test_back_with_output_folder |
|
13 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestBackNavigation.test_back_without_output_folder |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestBackNavigation.test_back_no_previous_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestBackNavigation.test_back_calls_on_enter |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestBackNavigation.test_back_error_handling |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestTranslation.test_translate_ui_called_on_init |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestTranslation.test_translate_ui_updates_labels |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestTranslation.test_language_changed_signal |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestUISetup.test_setup_ui_clears_existing_layout |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestUISetup.test_setup_ui_creates_scroll_area |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestUISetup.test_patient_widgets_created_for_all_patients |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestEdgeCases.test_empty_config |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestEdgeCases.test_very_large_config |
|
10 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestEdgeCases.test_special_characters_in_patient_id |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
TestEdgeCases.test_unicode_in_paths |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_pipeline_review_page.py |
(no function) |
|
62 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
skull_page |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_page_initialization |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_title_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_file_selector_created |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_run_button_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_cancel_button_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_progress_bar_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_bet_detected_when_available |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageSetup.test_bet_not_detected_when_unavailable |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_f_parameter_default |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_f_parameter_range |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_g_parameter_default |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_coordinate_parameters_default |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_brain_extracted_checkbox_default |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageBETParameters.test_other_checkboxes_default |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageAdvancedOptions.test_advanced_options_hidden_initially |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageAdvancedOptions.test_toggle_advanced_shows_options |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageAdvancedOptions.test_toggle_advanced_hides_options |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageAdvancedOptions.test_toggle_updates_button_text |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_run_without_files_shows_warning |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_run_without_files_shows_warning.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_run_creates_worker_thread |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_run_shows_progress_bar |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_set_processing_mode_true |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProcessing.test_cancel_processing |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_progress_updated |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_progress_value_updated |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_all_completed_success |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_all_completed_with_failures |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_all_completed_all_failed |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageProgressCallbacks.test_on_worker_finished |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageExistingCheck.temp_workspace |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageExistingCheck.test_has_existing_skull_strip_true |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageExistingCheck.test_has_existing_skull_strip_false |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageExistingCheck.test_has_existing_skull_strip_no_subject_id |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_back_returns_previous_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_back_blocked_during_processing |
|
9 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_back_blocked_during_processing.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_is_ready_to_advance_false |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_is_ready_to_go_back_true_when_idle |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageNavigation.test_is_ready_to_go_back_false_during_processing |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageReset.test_reset_clears_files |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageReset.test_reset_parameters |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageReset.test_reset_checkboxes |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageReset.test_reset_hides_progress_bar |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageReset.test_reset_cancels_running_worker |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageTranslation.test_translate_ui_updates_title |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageTranslation.test_translate_ui_updates_buttons |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
TestSkullStrippingPageIntegration.test_full_processing_workflow |
|
11 |
0 |
0 |
|
100% |
| tests/ui/test_skull_stripping_page.py |
(no function) |
|
74 |
1 |
0 |
|
99% |
| tests/ui/test_tool_selection_page.py |
tool_page |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSetup.test_page_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSetup.test_title_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSetup.test_radio_buttons_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSetup.test_radio_group_created |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSetup.test_all_buttons_unchecked_initially |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_select_skull_stripping |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_select_automatic_drawing |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_select_deep_learning |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_select_full_pipeline |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_on_selection_updates_buttons |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageSelection.test_change_selection |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageReadiness.test_not_ready_without_selection |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageReadiness.test_ready_with_selection |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageReadiness.test_can_go_back |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageNavigation.test_back_returns_previous_page |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageNavigation.test_next_skull_stripping |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageNavigation.test_next_automatic_drawing |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageNavigation.test_next_full_pipeline |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageNavigation.test_next_caches_page |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_available_on_linux_with_gpu |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_on_windows |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_on_windows.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_without_gpu |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_without_gpu.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_on_macos |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageDeepLearning.test_dl_not_available_on_macos.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageReset.test_reset_clears_selection |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageReset.test_reset_unchecks_all_buttons |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageResize.test_resize_event_updates_fonts |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageResize.test_resize_maintains_minimum_font_size |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageTranslation.test_translate_ui_updates_title |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageTranslation.test_translate_ui_updates_buttons |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageTranslation.test_translate_ui_updates_group_box |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageInfoLabel.test_dl_has_info_label |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageInfoLabel.test_info_label_has_tooltip |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageIntegration.test_full_selection_workflow |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
TestToolSelectionPageIntegration.test_navigation_and_cache |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_tool_selection_page.py |
(no function) |
|
67 |
1 |
0 |
|
99% |
| tests/ui/test_workspace_tree_view.py |
tree_view |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewSetup.test_full_workflow_selection_and_export |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewSetup.test_full_workflow_double_click_nifti |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
test_initialization |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
test_model_root_path |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
test_selection_mode |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
test_context_menu_policy |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
test_signals_connected |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewSelection.test_handle_workspace_click_updates_selection |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewSelection.test_selected_files_emits_signal |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_on_nifti_opens_viewer |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_on_nifti_gz_opens_viewer |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_on_regular_file_opens_in_explorer |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_on_folder_does_nothing |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_nifti_error_shows_message |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewDoubleClick.test_double_click_nifti_error_shows_message.mock_critical |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewColumns.test_adjust_tree_columns_wide |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewColumns.test_adjust_tree_columns_narrow |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewContextMenu.test_workspace_actions_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewContextMenu.test_folder_actions_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewContextMenu.test_file_actions_created |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewContextMenu.test_nifti_file_actions_include_viewer |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewContextMenu.test_multi_file_actions_created |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.temp_source_file |
|
6 |
6 |
0 |
|
0% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_add_file_to_workspace_opens_dialog |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_remove_from_workspace_confirms |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_remove_from_workspace_emits_thread |
|
4 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_export_single_file_dialog |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_export_folder_dialog |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewFileOperations.test_export_multiple_files_dialog |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_open_nifti_calls_viewer |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_open_nifti_error_shows_message |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_open_nifti_error_shows_message.mock_critical |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_including_json_asks_user |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_including_json_asks_user.mock_information |
|
2 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_including_json_returns_empty_on_cancel |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewNIfTIOperations.test_including_json_returns_empty_if_not_exists |
|
3 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewExplorer.test_open_in_explorer_success |
|
5 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewExplorer.test_open_in_explorer_no_app_shows_warning |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewExplorer.test_open_in_explorer_no_app_shows_warning.mock_warning |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewExplorer.test_open_in_explorer_exception_shows_error |
|
8 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewExplorer.test_open_in_explorer_exception_shows_error.mock_critical |
|
1 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewRoleDialog.test_open_role_dialog_creates_dialog |
|
6 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
TestWorkspaceTreeViewRoleDialog.test_open_role_dialog_on_accept_emits_thread |
|
7 |
0 |
0 |
|
100% |
| tests/ui/test_workspace_tree_view.py |
(no function) |
|
62 |
1 |
0 |
|
98% |