Coverage report: 75%

Files Functions Classes

coverage.py v7.5.0, created at 2025-06-13 14:15 +0000

File class statements missing excluded coverage
src/susi/__init__.py (no class) 9 0 0 100%
src/susi/analyse/__init__.py (no class) 5 0 0 100%
src/susi/analyse/contrast.py ContrastAnalyser 24 24 0 0%
src/susi/analyse/contrast.py (no class) 16 0 0 100%
src/susi/analyse/grid_rot_and_shear.py RotAndShearAnalysis 296 173 0 42%
src/susi/analyse/grid_rot_and_shear.py (no class) 28 0 0 100%
src/susi/analyse/img_rotation.py RotationAnalysis 11 1 0 91%
src/susi/analyse/img_rotation.py RotationCorrection 12 2 0 83%
src/susi/analyse/img_rotation.py GetRotationFromSlitMask 44 44 0 0%
src/susi/analyse/img_rotation.py (no class) 30 0 0 100%
src/susi/analyse/movie_jitter.py (no class) 21 0 0 100%
src/susi/analyse/shifts.py ShiftAnalyser 53 20 0 62%
src/susi/analyse/shifts.py GlobalShift 20 1 0 95%
src/susi/analyse/shifts.py (no class) 33 0 0 100%
src/susi/analyse/slit_mask_border.py GetSlitMaskBorder_v2 120 52 0 57%
src/susi/analyse/slit_mask_border.py GetSlitMaskBorder 49 49 0 0%
src/susi/analyse/slit_mask_border.py (no class) 40 0 0 100%
src/susi/atlantes/__init__.py (no class) 4 0 0 100%
src/susi/atlantes/atlas.py Atlas 11 2 0 82%
src/susi/atlantes/atlas.py (no class) 8 0 0 100%
src/susi/atlantes/compare.py (no class) 17 0 0 100%
src/susi/atlantes/hamburg.py FTSAtlas 29 0 0 100%
src/susi/atlantes/hamburg.py (no class) 12 0 0 100%
src/susi/atlantes/sss.py SSSAtlas 35 1 0 97%
src/susi/atlantes/sss.py (no class) 12 0 0 100%
src/susi/base/__init__.py (no class) 9 0 0 100%
src/susi/base/api.py Api 45 19 0 58%
src/susi/base/api.py (no class) 28 0 0 100%
src/susi/base/config/__init__.py (no class) 7 0 0 100%
src/susi/base/config/base.py Base 10 1 0 90%
src/susi/base/config/base.py (no class) 35 0 0 100%
src/susi/base/config/calibdata.py CalibData 7 4 0 43%
src/susi/base/config/calibdata.py (no class) 14 0 0 100%
src/susi/base/config/cam.py Cam 34 2 0 94%
src/susi/base/config/cam.py (no class) 24 0 0 100%
src/susi/base/config/config.py Config 40 7 0 82%
src/susi/base/config/config.py (no class) 26 0 0 100%
src/susi/base/config/data.py Data 7 1 0 86%
src/susi/base/config/data.py (no class) 21 0 0 100%
src/susi/base/config/reduc.py Reduc 0 0 0 100%
src/susi/base/config/reduc.py (no class) 5 0 0 100%
src/susi/base/config/spectropol.py SpectroPol 7 1 0 86%
src/susi/base/config/spectropol.py (no class) 20 0 0 100%
src/susi/base/exceptions.py IllegalStateException 0 0 0 100%
src/susi/base/exceptions.py DataMissMatchException 0 0 0 100%
src/susi/base/exceptions.py InsufficientDataException 0 0 0 100%
src/susi/base/exceptions.py IllegalArgumentException 0 0 0 100%
src/susi/base/exceptions.py MissConfigurationException 0 0 0 100%
src/susi/base/exceptions.py (no class) 11 0 0 100%
src/susi/base/globals.py Cam 7 4 0 43%
src/susi/base/globals.py Jobs 0 0 0 100%
src/susi/base/globals.py IOSpeed 0 0 0 100%
src/susi/base/globals.py Globals 1 0 0 100%
src/susi/base/globals.py (no class) 46 0 0 100%
src/susi/base/header_keys.py (no class) 146 0 0 100%
src/susi/base/loader.py Loader 92 19 0 79%
src/susi/base/loader.py (no class) 17 0 0 100%
src/susi/base/logging.py Logging 33 18 0 45%
src/susi/base/logging.py (no class) 15 0 0 100%
src/susi/db/__init__.py (no class) 4 0 0 100%
src/susi/db/filedb.py FileDB 203 145 0 29%
src/susi/db/filedb.py (no class) 48 0 0 100%
src/susi/db/hk_script.py HK 427 427 0 0%
src/susi/db/hk_script.py (no class) 51 0 0 100%
src/susi/db/metadata.py Metadata 53 2 0 96%
src/susi/db/metadata.py (no class) 26 0 0 100%
src/susi/db/remote_connection.py RemoteConnection 1 0 0 100%
src/susi/db/remote_connection.py (no class) 7 0 0 100%
src/susi/io/__init__.py (no class) 5 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvBB1 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvEM1 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvFM1 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvFM2 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvFM3 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvFM4 0 0 0 100%
src/susi/io/camera_calibration_constants.py t_ConvFM5 0 0 0 100%
src/susi/io/camera_calibration_constants.py (no class) 493 0 0 100%
src/susi/io/camera_decode_hk.py ValueType 0 0 0 100%
src/susi/io/camera_decode_hk.py DataType 0 0 0 100%
src/susi/io/camera_decode_hk.py ImageHKStructure 0 0 0 100%
src/susi/io/camera_decode_hk.py DataTypeID 0 0 0 100%
src/susi/io/camera_decode_hk.py ImageHousekeeping 113 14 0 88%
src/susi/io/camera_decode_hk.py (no class) 125 0 0 100%
src/susi/io/camera_definitions.py (no class) 145 0 0 100%
src/susi/io/camera_param_convertion.py (no class) 4 0 0 100%
src/susi/io/fits.py Fits 122 25 0 80%
src/susi/io/fits.py (no class) 45 0 0 100%
src/susi/io/fits_batch.py FitsBatch 133 49 0 63%
src/susi/io/fits_batch.py (no class) 57 0 0 100%
src/susi/io/fits_cube.py SusiCube 48 48 0 0%
src/susi/io/fits_cube.py (no class) 15 0 0 100%
src/susi/io/fits_header.py Card 19 8 0 58%
src/susi/io/fits_header.py HeaderCards 3 0 0 100%
src/susi/io/fits_header.py SUSIStandardHeader 7 7 0 0%
src/susi/io/fits_header.py (no class) 19 0 0 100%
src/susi/io/multi_hdu_writer.py MultiHDUWriter 34 0 0 100%
src/susi/io/multi_hdu_writer.py (no class) 11 0 0 100%
src/susi/io/state_link.py StateLink 0 0 0 100%
src/susi/io/state_link.py (no class) 7 0 0 100%
src/susi/io/wcs_coordinates.py WcsCoordinates 18 18 0 0%
src/susi/io/wcs_coordinates.py (no class) 15 15 0 0%
src/susi/model/__init__.py (no class) 5 0 0 100%
src/susi/model/grating.py (no class) 16 0 0 100%
src/susi/model/input_flux.py (no class) 8 0 0 100%
src/susi/model/pol_eff.py (no class) 10 0 0 100%
src/susi/model/susi_mm.py (no class) 14 0 0 100%
src/susi/model/susi_mm_sunrise_telescope.py (no class) 21 8 0 62%
src/susi/raw2fits/__init__.py (no class) 1 0 0 100%
src/susi/raw2fits/fits_handling.py (no class) 5 0 0 100%
src/susi/raw2fits/read_raw_save_to_fits.py (no class) 20 0 0 100%
src/susi/reduc/__init__.py (no class) 7 0 0 100%
src/susi/reduc/average/__init__.py (no class) 2 0 0 100%
src/susi/reduc/average/average.py Average 4 0 0 100%
src/susi/reduc/average/average.py (no class) 5 0 0 100%
src/susi/reduc/average/framesum.py FrameSum 21 5 0 76%
src/susi/reduc/average/framesum.py (no class) 10 0 0 100%
src/susi/reduc/demodulation/__init__.py (no class) 3 0 0 100%
src/susi/reduc/demodulation/demod_assembler.py DemodAssembler 26 0 0 100%
src/susi/reduc/demodulation/demod_assembler.py (no class) 10 0 0 100%
src/susi/reduc/demodulation/demodulator.py Demodulator 17 0 0 100%
src/susi/reduc/demodulation/demodulator.py (no class) 12 0 0 100%
src/susi/reduc/demodulation/mod_states.py ModStateDetector 120 47 0 61%
src/susi/reduc/demodulation/mod_states.py (no class) 25 0 0 100%
src/susi/reduc/fields/__init__.py (no class) 3 0 0 100%
src/susi/reduc/fields/dark_field_correction.py DFCorrector 31 6 0 81%
src/susi/reduc/fields/dark_field_correction.py (no class) 12 0 0 100%
src/susi/reduc/fields/flat_field_correction.py LineRemover 25 0 0 100%
src/susi/reduc/fields/flat_field_correction.py FFCorrector 20 20 0 0%
src/susi/reduc/fields/flat_field_correction.py (no class) 16 0 0 100%
src/susi/reduc/fields/shielded_px_correction.py SHIPXCorrector 14 4 0 71%
src/susi/reduc/fields/shielded_px_correction.py ShiPixLinearRow 20 0 0 100%
src/susi/reduc/fields/shielded_px_correction.py ShiPixGlobalMean 9 0 0 100%
src/susi/reduc/fields/shielded_px_correction.py ShiPixMedianCol 17 5 0 71%
src/susi/reduc/fields/shielded_px_correction.py ShiPixColAndRow 16 16 0 0%
src/susi/reduc/fields/shielded_px_correction.py (no class) 33 0 0 100%
src/susi/reduc/fitting/__init__.py (no class) 3 0 0 100%
src/susi/reduc/fitting/line.py Line 19 0 0 100%
src/susi/reduc/fitting/line.py (no class) 10 0 0 100%
src/susi/reduc/fitting/line_detector.py LineDetector 26 0 0 100%
src/susi/reduc/fitting/line_detector.py (no class) 17 0 0 100%
src/susi/reduc/fitting/line_fit.py LineFit 49 4 0 92%
src/susi/reduc/fitting/line_fit.py (no class) 22 0 0 100%
src/susi/reduc/fringes/__init__.py (no class) 0 0 0 100%
src/susi/reduc/fringes/spc_registration.py SPCRegistration 30 30 0 0%
src/susi/reduc/fringes/spc_registration.py (no class) 12 12 0 0%
src/susi/reduc/hot_pixels/__init__.py (no class) 1 0 0 100%
src/susi/reduc/hot_pixels/hot_pixels_correction.py HOTPXCorrector 71 16 0 77%
src/susi/reduc/hot_pixels/hot_pixels_correction.py (no class) 12 0 0 100%
src/susi/reduc/pipeline/__init__.py (no class) 6 0 0 100%
src/susi/reduc/pipeline/blocks/__init__.py (no class) 10 0 0 100%
src/susi/reduc/pipeline/blocks/block.py Block 55 16 0 71%
src/susi/reduc/pipeline/blocks/block.py BlockRegistry 5 0 0 100%
src/susi/reduc/pipeline/blocks/block.py (no class) 39 0 0 100%
src/susi/reduc/pipeline/blocks/block_b.py BlockB 77 56 0 27%
src/susi/reduc/pipeline/blocks/block_b.py (no class) 33 0 0 100%
src/susi/reduc/pipeline/blocks/block_c.py BlockC 53 8 0 85%
src/susi/reduc/pipeline/blocks/block_c.py (no class) 28 0 0 100%
src/susi/reduc/pipeline/blocks/block_d.py BlockD 71 7 0 90%
src/susi/reduc/pipeline/blocks/block_d.py (no class) 33 0 0 100%
src/susi/reduc/pipeline/blocks/block_f.py BlockF 58 11 0 81%
src/susi/reduc/pipeline/blocks/block_f.py (no class) 33 0 0 100%
src/susi/reduc/pipeline/blocks/block_m.py BlockM 47 12 0 74%
src/susi/reduc/pipeline/blocks/block_m.py (no class) 29 0 0 100%
src/susi/reduc/pipeline/blocks/block_p.py BlockP 8 5 0 38%
src/susi/reduc/pipeline/blocks/block_p.py (no class) 15 0 0 100%
src/susi/reduc/pipeline/blocks/block_r.py BlockR 8 5 0 38%
src/susi/reduc/pipeline/blocks/block_r.py (no class) 15 0 0 100%
src/susi/reduc/pipeline/blocks/block_s.py BlockS 87 17 0 80%
src/susi/reduc/pipeline/blocks/block_s.py (no class) 35 0 0 100%
src/susi/reduc/pipeline/blocks/block_x.py BlockX 50 2 0 96%
src/susi/reduc/pipeline/blocks/block_x.py (no class) 27 0 0 100%
src/susi/reduc/pipeline/chunker.py Chunker 108 15 0 86%
src/susi/reduc/pipeline/chunker.py (no class) 32 0 0 100%
src/susi/reduc/pipeline/orchestrator.py Orchestrator 88 11 0 88%
src/susi/reduc/pipeline/orchestrator.py (no class) 33 0 0 100%
src/susi/reduc/pipeline/post_processor.py PostProcessor 20 0 0 100%
src/susi/reduc/pipeline/post_processor.py (no class) 15 0 0 100%
src/susi/reduc/pipeline/pre_processor.py PreProcessor 27 10 0 63%
src/susi/reduc/pipeline/pre_processor.py (no class) 19 0 0 100%
src/susi/reduc/pipeline/processing_data.py ProcessingData 9 1 0 89%
src/susi/reduc/pipeline/processing_data.py ProcessorArgs 0 0 0 100%
src/susi/reduc/pipeline/processing_data.py (no class) 29 0 0 100%
src/susi/reduc/pipeline/processor.py Processor 6 2 0 67%
src/susi/reduc/pipeline/processor.py (no class) 8 0 0 100%
src/susi/reduc/poincare_rotation/__init__.py (no class) 1 0 0 100%
src/susi/reduc/poincare_rotation/poincare.py Poincare 75 46 0 39%
src/susi/reduc/poincare_rotation/poincare.py (no class) 11 0 0 100%
src/susi/reduc/shear_distortion/__init__.py (no class) 2 0 0 100%
src/susi/reduc/shear_distortion/shear.py ShearDistortion 30 2 0 93%
src/susi/reduc/shear_distortion/shear.py (no class) 12 0 0 100%
src/susi/reduc/shear_distortion/shear_and_rot_correction.py ShearAndRotCorrector 23 1 0 96%
src/susi/reduc/shear_distortion/shear_and_rot_correction.py ShearAndRotLoader 12 0 0 100%
src/susi/reduc/shear_distortion/shear_and_rot_correction.py (no class) 16 0 0 100%
src/susi/reduc/shift/__init__.py (no class) 1 0 0 100%
src/susi/reduc/shift/slit_shift.py SlitShiftRef 22 0 0 100%
src/susi/reduc/shift/slit_shift.py SlitShiftProcessor 36 4 0 89%
src/susi/reduc/shift/slit_shift.py (no class) 24 0 0 100%
src/susi/reduc/spc_registration/__init__.py (no class) 0 0 0 100%
src/susi/reduc/spc_registration/spc_registration.py SPCRegistration 41 41 0 0%
src/susi/reduc/spc_registration/spc_registration.py (no class) 12 12 0 0%
src/susi/reduc/validation/__init__.py (no class) 2 0 0 100%
src/susi/reduc/validation/batch_check.py BatchCheck 57 0 0 100%
src/susi/reduc/validation/batch_check.py (no class) 15 0 0 100%
src/susi/reduc/validation/shape_check.py ShapeCheck 21 0 0 100%
src/susi/reduc/validation/shape_check.py (no class) 9 0 0 100%
src/susi/utils/__init__.py (no class) 10 0 0 100%
src/susi/utils/annotators/__init__.py (no class) 1 0 0 100%
src/susi/utils/annotators/singleton.py singleton.ClassW 8 4 0 50%
src/susi/utils/annotators/singleton.py (no class) 1 0 0 100%
src/susi/utils/collections.py Collections 37 0 0 100%
src/susi/utils/collections.py (no class) 20 0 0 100%
src/susi/utils/cropping.py (no class) 14 0 0 100%
src/susi/utils/encoding.py Unicode 2 0 0 100%
src/susi/utils/encoding.py (no class) 5 0 0 100%
src/susi/utils/exception_handler.py ExceptionHandler 4 4 0 0%
src/susi/utils/exception_handler.py (no class) 11 0 0 100%
src/susi/utils/git.py Git 4 2 0 50%
src/susi/utils/git.py (no class) 12 0 0 100%
src/susi/utils/header_checks.py (no class) 5 0 0 100%
src/susi/utils/pickle.py (no class) 5 0 0 100%
src/susi/utils/polynomials.py (no class) 5 0 0 100%
src/susi/utils/processing.py Thread 18 4 0 78%
src/susi/utils/processing.py MP 30 2 0 93%
src/susi/utils/processing.py (no class) 23 0 0 100%
src/susi/utils/progress.py (no class) 5 0 0 100%
src/susi/utils/rebin.py (no class) 2 0 0 100%
src/susi/utils/reports.py (no class) 6 0 0 100%
src/susi/utils/slurm.py Slurm 33 33 0 0%
src/susi/utils/slurm.py (no class) 8 0 0 100%
src/susi/utils/sub_shift.py Shifter 10 1 0 90%
src/susi/utils/sub_shift.py (no class) 9 0 0 100%
src/susi/utils/timestamps.py Timestamps 11 0 0 100%
src/susi/utils/timestamps.py (no class) 11 0 0 100%
src/susi/utils/yaml.py (no class) 6 0 0 100%
Total   6708 1710 0 75%

No items found using the specified filter.