OpenHCS Coverage Report: 14.5%

Files Functions Classes

coverage.py v7.10.2, created at 2025-08-10 09:34 +0000

File statements missing excluded branches partial coverage
openhcs/__init__.py 12 0 0 2 1 92.9%
openhcs/constants/__init__.py 3 0 0 0 0 100.0%
openhcs/constants/constants.py 87 0 0 0 0 100.0%
openhcs/constants/input_source.py 6 0 0 0 0 100.0%
openhcs/core/__init__.py 3 0 0 0 0 100.0%
openhcs/core/config.py 168 5 0 10 4 93.8%
openhcs/core/config_cache.py 101 101 8 14 0 0.0%
openhcs/core/context/__init__.py 2 0 0 0 0 100.0%
openhcs/core/context/processing_context.py 45 12 0 18 6 65.1%
openhcs/core/log_utils.py 96 96 0 52 0 0.0%
openhcs/core/memory/__init__.py 9 0 0 0 0 100.0%
openhcs/core/memory/conversion_functions.py 518 478 0 236 0 5.3%
openhcs/core/memory/converters.py 82 74 0 80 1 5.6%
openhcs/core/memory/decorators.py 759 471 0 314 30 30.2%
openhcs/core/memory/exceptions.py 8 6 0 0 0 25.0%
openhcs/core/memory/gpu_cleanup.py 208 139 0 80 14 27.4%
openhcs/core/memory/gpu_utils.py 70 41 0 18 7 36.4%
openhcs/core/memory/oom_recovery.py 63 57 0 38 0 5.9%
openhcs/core/memory/stack_utils.py 160 98 0 96 20 34.4%
openhcs/core/memory/utils.py 152 140 0 62 0 5.6%
openhcs/core/memory/wrapper.py 90 66 8 34 0 19.4%
openhcs/core/orchestrator/__init__.py 3 0 0 0 0 100.0%
openhcs/core/orchestrator/gpu_scheduler.py 71 24 0 20 6 60.4%
openhcs/core/orchestrator/orchestrator.py 475 172 0 152 49 61.9%
openhcs/core/path_cache.py 101 101 0 18 0 0.0%
openhcs/core/pipeline/__init__.py 33 9 3 2 0 68.6%
openhcs/core/pipeline/compiler.py 164 38 2 86 24 70.4%
openhcs/core/pipeline/funcstep_contract_validator.py 148 69 3 62 10 48.1%
openhcs/core/pipeline/function_contracts.py 28 3 0 10 3 84.2%
openhcs/core/pipeline/gpu_memory_validator.py 62 44 0 34 3 24.0%
openhcs/core/pipeline/materialization_flag_planner.py 49 8 0 22 3 78.9%
openhcs/core/pipeline/path_planner.py 366 138 0 188 42 57.4%
openhcs/core/pipeline/pipeline_utils.py 14 6 0 12 1 50.0%
openhcs/core/pipeline/step_attribute_stripper.py 30 10 0 12 2 61.9%
openhcs/core/steps/__init__.py 3 0 0 0 0 100.0%
openhcs/core/steps/abstract.py 27 1 20 2 1 93.1%
openhcs/core/steps/function_step.py 496 111 0 150 34 76.0%
openhcs/core/utils.py 141 96 2 46 0 26.2%
openhcs/core/xdg_paths.py 103 75 0 34 1 22.6%
openhcs/debug/__init__.py 1 1 0 0 0 0.0%
openhcs/debug/example_export.py 53 53 3 2 0 0.0%
openhcs/debug/example_export_clean.py 52 52 3 2 0 0.0%
openhcs/debug/export.py 72 72 3 6 0 0.0%
openhcs/debug/pickle_to_python.py 369 369 3 164 0 0.0%
openhcs/formats/func_arg_prep.py 79 42 0 32 3 41.4%
openhcs/formats/pattern/__init__.py 0 0 0 0 0 100.0%
openhcs/formats/pattern/pattern_discovery.py 155 32 0 90 26 75.5%
openhcs/io/__init__.py 6 0 0 0 0 100.0%
openhcs/io/base.py 34 2 239 0 0 94.1%
openhcs/io/disk.py 270 85 0 88 24 65.1%
openhcs/io/exceptions.py 14 0 0 0 0 100.0%
openhcs/io/filemanager.py 220 82 0 36 8 60.9%
openhcs/io/memory.py 319 189 2 158 17 35.4%
openhcs/io/zarr.py 509 261 2 218 40 45.7%
openhcs/microscopes/__init__.py 8 0 0 0 0 100.0%
openhcs/microscopes/imagexpress.py 294 87 0 114 33 66.2%
openhcs/microscopes/microscope_base.py 229 84 76 86 31 59.7%
openhcs/microscopes/microscope_interfaces.py 16 0 164 4 0 100.0%
openhcs/microscopes/openhcs.py 223 151 0 58 3 26.7%
openhcs/microscopes/opera_phenix.py 319 100 0 112 40 63.8%
openhcs/microscopes/opera_phenix_xml_parser.py 258 132 0 96 12 45.8%
openhcs/processing/__init__.py 4 0 0 0 0 100.0%
openhcs/processing/backends/__init__.py 0 0 0 0 0 100.0%
openhcs/processing/backends/analysis/__init__.py 9 4 0 0 0 55.6%
openhcs/processing/backends/analysis/cache_utils.py 126 111 0 28 0 9.7%
openhcs/processing/backends/analysis/cell_counting_cpu.py 446 363 0 128 0 14.5%
openhcs/processing/backends/analysis/cell_counting_cupy.py 461 375 0 144 1 14.4%
openhcs/processing/backends/analysis/cell_counting_pyclesperanto.py 605 595 0 176 0 1.3%
openhcs/processing/backends/analysis/consolidate_analysis_results.py 216 192 0 92 1 8.1%
openhcs/processing/backends/analysis/consolidate_special_outputs.py 160 132 0 58 0 12.8%
openhcs/processing/backends/analysis/cx5_format.py 465 462 0 214 0 0.4%
openhcs/processing/backends/analysis/dxf_mask_pipeline.py 124 99 0 38 5 18.5%
openhcs/processing/backends/analysis/focus_analyzer.py 91 65 0 26 0 22.2%
openhcs/processing/backends/analysis/hmm_axon.py 240 228 1 70 0 3.9%
openhcs/processing/backends/analysis/hmm_axon_torbi.py 255 238 1 72 0 5.2%
openhcs/processing/backends/analysis/multi_template_matching.py 264 227 0 100 0 10.2%
openhcs/processing/backends/analysis/self_supervised_segmentation_3d.py 183 161 0 50 0 9.4%
openhcs/processing/backends/analysis/skan_axon_analysis.py 257 220 0 78 0 11.0%
openhcs/processing/backends/analysis/straighten_object_3d.py 170 159 1 48 0 5.0%
openhcs/processing/backends/assemblers/__init__.py 3 0 0 0 0 100.0%
openhcs/processing/backends/assemblers/assemble_stack_cpu.py 183 57 0 90 17 61.9%
openhcs/processing/backends/assemblers/assemble_stack_cupy.py 262 240 0 112 3 6.7%
openhcs/processing/backends/assemblers/self_supervised_stitcher.py 267 243 78 74 0 7.0%
openhcs/processing/backends/enhance/__init__.py 33 16 0 0 0 51.5%
openhcs/processing/backends/enhance/basic_processor_cupy.py 274 254 0 76 2 6.3%
openhcs/processing/backends/enhance/basic_processor_jax.py 60 43 0 20 2 23.8%
openhcs/processing/backends/enhance/basic_processor_numpy.py 73 60 0 34 0 12.1%
openhcs/processing/backends/enhance/cupy_clahe.py 296 271 0 88 2 7.0%
openhcs/processing/backends/enhance/dl_edof_unsupervised.py 139 120 0 32 1 11.7%
openhcs/processing/backends/enhance/focus_torch.py 54 45 0 22 0 11.8%
openhcs/processing/backends/enhance/jax_nlm_processor.py 103 84 1 22 0 15.2%
openhcs/processing/backends/enhance/n2v2_processor_torch.py 194 170 0 34 0 10.5%
openhcs/processing/backends/enhance/self_supervised_2d_deconvolution.py 134 110 0 44 1 14.0%
openhcs/processing/backends/enhance/self_supervised_3d_deconvolution.py 148 123 0 44 1 13.5%
openhcs/processing/backends/enhance/torch_nlm_processor.py 46 31 0 18 1 25.0%
openhcs/processing/backends/lib_registry/cupy_registry.py 45 13 0 0 0 71.1%
openhcs/processing/backends/lib_registry/pyclesperanto_registry.py 55 22 0 12 0 49.3%
openhcs/processing/backends/lib_registry/scikit_image_registry.py 38 7 0 0 0 81.6%
openhcs/processing/backends/lib_registry/unified_registry.py 253 78 40 64 11 66.2%
openhcs/processing/backends/pos_gen/__init__.py 0 0 0 0 0 100.0%
openhcs/processing/backends/pos_gen/ashlar_main_cpu.py 402 74 1 114 26 79.1%
openhcs/processing/backends/pos_gen/ashlar_main_gpu.py 508 456 1 184 2 7.8%
openhcs/processing/backends/pos_gen/mist/__init__.py 2 0 0 0 0 100.0%
openhcs/processing/backends/pos_gen/mist/boruvka_mst.py 67 58 0 22 1 11.2%
openhcs/processing/backends/pos_gen/mist/gpu_kernels.py 80 64 0 30 1 15.5%
openhcs/processing/backends/pos_gen/mist/mist_main.py 305 284 0 108 1 5.3%
openhcs/processing/backends/pos_gen/mist/phase_correlation.py 198 186 0 64 1 5.0%
openhcs/processing/backends/pos_gen/mist/position_reconstruction.py 53 45 0 18 1 12.7%
openhcs/processing/backends/pos_gen/mist/quality_metrics.py 153 137 0 40 1 8.8%
openhcs/processing/backends/pos_gen/mist_processor_cupy.py 59 47 0 12 1 18.3%
openhcs/processing/backends/processors/__init__.py 7 0 0 0 0 100.0%
openhcs/processing/backends/processors/cupy_processor.py 313 255 0 108 2 14.3%
openhcs/processing/backends/processors/jax_processor.py 227 189 0 56 0 13.4%
openhcs/processing/backends/processors/numpy_processor.py 222 152 0 78 6 25.3%
openhcs/processing/backends/processors/pyclesperanto_processor.py 226 184 0 74 0 14.0%
openhcs/processing/backends/processors/tensorflow_processor.py 248 207 0 82 1 12.7%
openhcs/processing/backends/processors/torch_processor.py 262 228 0 82 0 9.9%
openhcs/processing/func_registry.py 196 98 0 64 5 43.5%
openhcs/pyqt_gui/__init__.py 5 5 0 0 0 0.0%
openhcs/pyqt_gui/__main__.py 3 3 2 0 0 0.0%
openhcs/pyqt_gui/app.py 82 82 3 14 0 0.0%
openhcs/pyqt_gui/config.py 131 131 0 8 0 0.0%
openhcs/pyqt_gui/launch.py 117 117 2 16 0 0.0%
openhcs/pyqt_gui/main.py 324 324 0 70 0 0.0%
openhcs/pyqt_gui/services/__init__.py 3 3 0 0 0 0.0%
openhcs/pyqt_gui/services/async_service_bridge.py 104 104 0 20 0 0.0%
openhcs/pyqt_gui/services/config_cache_adapter.py 47 47 0 12 0 0.0%
openhcs/pyqt_gui/services/persistent_system_monitor.py 151 151 0 28 0 0.0%
openhcs/pyqt_gui/services/service_adapter.py 184 184 0 18 0 0.0%
openhcs/pyqt_gui/services/simple_code_editor.py 268 268 0 28 0 0.0%
openhcs/pyqt_gui/shared/__init__.py 6 6 0 0 0 0.0%
openhcs/pyqt_gui/shared/color_scheme.py 137 137 0 14 0 0.0%
openhcs/pyqt_gui/shared/config_validator.py 138 138 0 76 0 0.0%
openhcs/pyqt_gui/shared/palette_manager.py 96 96 0 14 0 0.0%
openhcs/pyqt_gui/shared/style_generator.py 46 46 0 0 0 0.0%
openhcs/pyqt_gui/shared/typed_widget_factory.py 201 201 0 80 0 0.0%
openhcs/pyqt_gui/utils/__init__.py 2 2 0 0 0 0.0%
openhcs/pyqt_gui/utils/log_detection_utils.py 8 8 0 0 0 0.0%
openhcs/pyqt_gui/widgets/__init__.py 6 6 0 0 0 0.0%
openhcs/pyqt_gui/widgets/enhanced_path_widget.py 120 120 0 32 0 0.0%
openhcs/pyqt_gui/widgets/function_list_editor.py 422 422 0 140 0 0.0%
openhcs/pyqt_gui/widgets/function_pane.py 276 276 0 72 0 0.0%
openhcs/pyqt_gui/widgets/log_viewer.py 564 564 0 130 0 0.0%
openhcs/pyqt_gui/widgets/mixins/__init__.py 2 2 0 0 0 0.0%
openhcs/pyqt_gui/widgets/mixins/selection_preservation_mixin.py 36 36 0 18 0 0.0%
openhcs/pyqt_gui/widgets/pipeline_editor.py 343 343 0 66 0 0.0%
openhcs/pyqt_gui/widgets/plate_manager.py 515 515 0 142 0 0.0%
openhcs/pyqt_gui/widgets/shared/__init__.py 1 1 0 0 0 0.0%
openhcs/pyqt_gui/widgets/shared/clickable_help_components.py 157 157 0 22 0 0.0%
openhcs/pyqt_gui/widgets/shared/parameter_form_manager.py 201 201 0 64 0 0.0%
openhcs/pyqt_gui/widgets/status_bar.py 142 142 0 18 0 0.0%
openhcs/pyqt_gui/widgets/step_parameter_editor.py 129 129 0 22 0 0.0%
openhcs/pyqt_gui/widgets/system_monitor.py 264 264 0 34 0 0.0%
openhcs/pyqt_gui/windows/__init__.py 6 6 0 0 0 0.0%
openhcs/pyqt_gui/windows/config_window.py 221 221 0 58 0 0.0%
openhcs/pyqt_gui/windows/dual_editor_window.py 292 292 0 60 0 0.0%
openhcs/pyqt_gui/windows/file_browser_window.py 238 238 0 50 0 0.0%
openhcs/pyqt_gui/windows/function_selector_window.py 226 226 0 36 0 0.0%
openhcs/pyqt_gui/windows/help_window.py 97 97 0 2 0 0.0%
openhcs/pyqt_gui/windows/help_windows.py 179 179 0 30 0 0.0%
openhcs/runtime/napari_stream_visualizer.py 164 155 0 56 1 4.5%
openhcs/textual_tui/__init__.py 1 1 0 0 0 0.0%
openhcs/textual_tui/__main__.py 120 120 2 8 0 0.0%
openhcs/textual_tui/adapters/__init__.py 0 0 0 0 0 100.0%
openhcs/textual_tui/adapters/universal_directorytree.py 192 192 0 74 0 0.0%
openhcs/textual_tui/app.py 264 264 2 26 0 0.0%
openhcs/textual_tui/services/__init__.py 6 6 0 0 0 0.0%
openhcs/textual_tui/services/config_cache_adapter.py 23 23 0 2 0 0.0%
openhcs/textual_tui/services/config_reflection_service.py 47 47 0 14 0 0.0%
openhcs/textual_tui/services/external_editor_service.py 61 61 0 8 0 0.0%
openhcs/textual_tui/services/file_browser_service.py 75 75 0 24 0 0.0%
openhcs/textual_tui/services/function_registry_service.py 78 78 0 26 0 0.0%
openhcs/textual_tui/services/pattern_data_manager.py 75 75 0 42 0 0.0%
openhcs/textual_tui/services/pattern_file_service.py 93 93 0 22 0 0.0%
openhcs/textual_tui/services/system_monitor.py 159 159 2 18 0 0.0%
openhcs/textual_tui/services/terminal.py 1988 1988 3 762 0 0.0%
openhcs/textual_tui/services/terminal_enhancements.py 169 169 0 128 0 0.0%
openhcs/textual_tui/services/terminal_launcher.py 116 116 0 18 0 0.0%
openhcs/textual_tui/services/validation_service.py 76 76 0 26 0 0.0%
openhcs/textual_tui/services/visual_programming_dialog_service.py 62 62 0 10 0 0.0%
openhcs/textual_tui/services/window_cache.py 68 68 0 10 0 0.0%
openhcs/textual_tui/services/window_service.py 26 26 0 0 0 0.0%
openhcs/textual_tui/subprocess_runner.py 474 474 2 74 0 0.0%
openhcs/textual_tui/utils/__init__.py 2 2 0 0 0 0.0%
openhcs/textual_tui/widgets/__init__.py 8 8 0 0 0 0.0%
openhcs/textual_tui/widgets/button_list_widget.py 275 275 0 72 0 0.0%
openhcs/textual_tui/widgets/config_form.py 142 142 0 60 0 0.0%
openhcs/textual_tui/widgets/custom_window_bar.py 84 84 0 2 0 0.0%
openhcs/textual_tui/widgets/different_values_checkbox.py 37 37 0 6 0 0.0%
openhcs/textual_tui/widgets/different_values_input.py 34 34 0 6 0 0.0%
openhcs/textual_tui/widgets/different_values_radio_set.py 66 66 0 26 0 0.0%
openhcs/textual_tui/widgets/different_values_wrapper.py 105 105 0 46 0 0.0%
openhcs/textual_tui/widgets/file_list.py 98 98 0 26 0 0.0%
openhcs/textual_tui/widgets/function_list_editor.py 658 658 0 220 0 0.0%
openhcs/textual_tui/widgets/function_pane.py 187 187 0 66 0 0.0%
openhcs/textual_tui/widgets/log_monitor.py 110 110 0 38 0 0.0%
openhcs/textual_tui/widgets/main_content.py 39 39 0 0 0 0.0%
openhcs/textual_tui/widgets/openhcs_toolong_widget.py 615 615 0 186 0 0.0%
openhcs/textual_tui/widgets/pipeline_editor.py 415 415 0 124 0 0.0%
openhcs/textual_tui/widgets/plate_manager.py 924 924 0 302 0 0.0%
openhcs/textual_tui/widgets/reactive_log_monitor.py 228 228 0 56 0 0.0%
openhcs/textual_tui/widgets/shared/__init__.py 5 5 0 0 0 0.0%
openhcs/textual_tui/widgets/shared/clickable_help_label.py 47 47 0 10 0 0.0%
openhcs/textual_tui/widgets/shared/enum_radio_set.py 18 18 0 2 0 0.0%
openhcs/textual_tui/widgets/shared/parameter_form_manager.py 254 254 0 110 0 0.0%
openhcs/textual_tui/widgets/shared/signature_analyzer.py 328 328 0 150 0 0.0%
openhcs/textual_tui/widgets/shared/typed_widget_factory.py 61 61 0 22 0 0.0%
openhcs/textual_tui/widgets/shared/unified_parameter_analyzer.py 83 83 0 28 0 0.0%
openhcs/textual_tui/widgets/start_menu_button.py 167 167 0 28 0 0.0%
openhcs/textual_tui/widgets/status_bar.py 223 223 0 52 0 0.0%
openhcs/textual_tui/widgets/step_parameter_editor.py 155 155 0 50 0 0.0%
openhcs/textual_tui/widgets/system_monitor.py 152 152 0 18 0 0.0%
openhcs/textual_tui/windows/__init__.py 15 15 0 0 0 0.0%
openhcs/textual_tui/windows/advanced_terminal_window.py 190 190 0 44 0 0.0%
openhcs/textual_tui/windows/base_window.py 24 24 0 2 0 0.0%
openhcs/textual_tui/windows/config_window.py 49 49 0 12 0 0.0%
openhcs/textual_tui/windows/debug_class_explorer.py 382 382 0 118 0 0.0%
openhcs/textual_tui/windows/dual_editor_window.py 245 245 0 62 0 0.0%
openhcs/textual_tui/windows/file_browser_window.py 589 589 0 182 0 0.0%
openhcs/textual_tui/windows/function_selector_window.py 86 86 0 30 0 0.0%
openhcs/textual_tui/windows/gateone-terminal-widget.py 244 244 7 90 0 0.0%
openhcs/textual_tui/windows/group_by_selector_window.py 131 131 0 44 0 0.0%
openhcs/textual_tui/windows/help_window.py 35 35 0 4 0 0.0%
openhcs/textual_tui/windows/help_windows.py 179 179 0 60 0 0.0%
openhcs/textual_tui/windows/multi_orchestrator_config_window.py 91 91 0 30 0 0.0%
openhcs/textual_tui/windows/pipeline_plate_window.py 36 36 0 0 0 0.0%
openhcs/textual_tui/windows/terminal_window.py 271 271 0 124 0 0.0%
openhcs/textual_tui/windows/toolong_window.py 89 89 0 24 0 0.0%
openhcs/utils/import_utils.py 19 3 0 2 1 81.0%
openhcs/validation/__init__.py 2 0 0 0 0 100.0%
openhcs/validation/ast_validator.py 147 110 0 62 0 17.7%
openhcs/validation/validate.py 69 69 2 34 0 0.0%
Total 37960 31941 692 11786 598 14.5%

No items found using the specified filter.