Coverage report: 81%

Files Functions Classes

coverage.py v7.5.1, created at 2024-05-08 03:15 +0000

File function statements missing excluded coverage
src/km3modules/__init__.py (no function) 15 0 0 100%
src/km3modules/ahrs.py AHRSCalibrator.configure 7 7 0 0%
src/km3modules/ahrs.py AHRSCalibrator.process 13 13 0 0%
src/km3modules/ahrs.py AHRSCalibrator.calibrate 19 19 0 0%
src/km3modules/ahrs.py fit_ahrs 14 14 0 0%
src/km3modules/ahrs.py get_latest_ahrs_calibration 21 21 0 0%
src/km3modules/ahrs.py _get_latest_dataset 1 1 0 0%
src/km3modules/ahrs.py _extract_calibration 26 26 0 0%
src/km3modules/ahrs.py (no function) 24 0 0 100%
src/km3modules/common.py Dump.configure 5 0 0 100%
src/km3modules/common.py Dump.process 8 0 0 100%
src/km3modules/common.py Delete.configure 4 0 0 100%
src/km3modules/common.py Delete.process 3 0 0 100%
src/km3modules/common.py Keep.configure 5 1 0 80%
src/km3modules/common.py Keep.process 7 0 0 100%
src/km3modules/common.py HitCounter.process 5 5 0 0%
src/km3modules/common.py HitCalibrator.configure 2 2 0 0%
src/km3modules/common.py HitCalibrator.process 7 7 0 0%
src/km3modules/common.py BlobIndexer.configure 1 0 0 100%
src/km3modules/common.py BlobIndexer.process 3 0 0 100%
src/km3modules/common.py StatusBar.configure 1 0 0 100%
src/km3modules/common.py StatusBar.process 3 0 0 100%
src/km3modules/common.py StatusBar.finish 1 0 0 100%
src/km3modules/common.py TickTock.configure 1 0 0 100%
src/km3modules/common.py TickTock.process 3 0 0 100%
src/km3modules/common.py MemoryObserver.process 3 0 0 100%
src/km3modules/common.py Siphon.configure 3 0 0 100%
src/km3modules/common.py Siphon.process 7 0 0 100%
src/km3modules/common.py MultiFilePump.configure 7 0 0 100%
src/km3modules/common.py MultiFilePump.blob_generator 9 0 0 100%
src/km3modules/common.py MultiFilePump._set_group_id 5 1 0 80%
src/km3modules/common.py MultiFilePump.process 1 0 0 100%
src/km3modules/common.py MultiFilePump.finish 1 0 0 100%
src/km3modules/common.py LocalDBService.configure 8 0 0 100%
src/km3modules/common.py LocalDBService._create_connection 5 2 0 60%
src/km3modules/common.py LocalDBService.query 3 3 0 0%
src/km3modules/common.py LocalDBService.insert_row 4 0 0 100%
src/km3modules/common.py LocalDBService.create_table 5 0 0 100%
src/km3modules/common.py LocalDBService.table_exists 3 0 0 100%
src/km3modules/common.py LocalDBService.finish 2 2 0 0%
src/km3modules/common.py Observer.configure 3 0 0 100%
src/km3modules/common.py Observer.process 4 0 0 100%
src/km3modules/common.py Observer.finish 3 0 0 100%
src/km3modules/common.py FilePump.configure 2 0 0 100%
src/km3modules/common.py FilePump.blob_generator 2 0 0 100%
src/km3modules/common.py FilePump.process 2 0 0 100%
src/km3modules/common.py (no function) 60 0 0 100%
src/km3modules/communication.py ELOGService.configure 4 4 0 0%
src/km3modules/communication.py ELOGService.post_elog 15 15 0 0%
src/km3modules/communication.py create_elog_password_hash 2 2 0 0%
src/km3modules/communication.py (no function) 11 0 0 100%
src/km3modules/fit.py fit_delta_ts 15 15 0 0%
src/km3modules/fit.py fit_delta_ts.gaussian 1 1 0 0%
src/km3modules/fit.py (no function) 4 0 0 100%
src/km3modules/hardware.py PhidgetsController.configure 7 7 0 0%
src/km3modules/hardware.py PhidgetsController.setup 12 12 0 0%
src/km3modules/hardware.py PhidgetsController.drive_to_angle 19 19 0 0%
src/km3modules/hardware.py PhidgetsController.wait_for_stepper 3 3 0 0%
src/km3modules/hardware.py PhidgetsController.log_offset 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.offset 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.stepper_target_pos 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.stepper_target_pos 2 2 0 0%
src/km3modules/hardware.py PhidgetsController.stepper_pos 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.stepper_pos 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.encoder_pos 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.raw_stepper_position 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.raw_encoder_position 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.wake_up 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.stand_by 1 1 0 0%
src/km3modules/hardware.py PhidgetsController.reset_positions 2 2 0 0%
src/km3modules/hardware.py PhidgetsController.log_positions 1 1 0 0%
src/km3modules/hardware.py USBTMC.__init__ 1 1 0 0%
src/km3modules/hardware.py USBTMC.write 1 1 0 0%
src/km3modules/hardware.py USBTMC.read 1 1 0 0%
src/km3modules/hardware.py USBTMC.name 2 2 0 0%
src/km3modules/hardware.py USBTMC.reset 1 1 0 0%
src/km3modules/hardware.py Agilent33220A.__init__ 5 5 0 0%
src/km3modules/hardware.py Agilent33220A.output 1 1 0 0%
src/km3modules/hardware.py Agilent33220A.output 2 2 0 0%
src/km3modules/hardware.py Agilent33220A.amplitude 1 1 0 0%
src/km3modules/hardware.py Agilent33220A.amplitude 7 7 0 0%
src/km3modules/hardware.py Agilent33220A.frequency 1 1 0 0%
src/km3modules/hardware.py Agilent33220A.frequency 2 2 0 0%
src/km3modules/hardware.py Agilent33220A.mode 1 1 0 0%
src/km3modules/hardware.py Agilent33220A.mode 6 6 0 0%
src/km3modules/hardware.py (no function) 57 0 0 100%
src/km3modules/hits.py count_multiplicities 22 22 0 0%
src/km3modules/hits.py (no function) 8 0 0 100%
src/km3modules/io.py HitsTabulator.configure 3 0 0 100%
src/km3modules/io.py HitsTabulator.process 23 9 1 61%
src/km3modules/io.py MCTracksTabulator.configure 4 1 0 75%
src/km3modules/io.py MCTracksTabulator.process 6 1 0 83%
src/km3modules/io.py MCTracksTabulator._parse_usr_to_dct 10 10 0 0%
src/km3modules/io.py MCTracksTabulator._parse_mc_tracks 4 1 0 75%
src/km3modules/io.py RecoTracksTabulator.configure 4 0 0 100%
src/km3modules/io.py RecoTracksTabulator.process 13 2 0 85%
src/km3modules/io.py RecoTracksTabulator._put_tracks_into_blob 17 0 0 100%
src/km3modules/io.py EventInfoTabulator.process 7 2 0 71%
src/km3modules/io.py EventInfoTabulator._parse_eventinfo 7 0 0 100%
src/km3modules/io.py EventInfoTabulator._unfold_w2list 9 2 0 78%
src/km3modules/io.py EventInfoTabulator._parse_wgts 7 3 0 57%
src/km3modules/io.py OfflineHeaderTabulator.process 3 0 0 100%
src/km3modules/io.py (no function) 26 0 0 100%
src/km3modules/k40.py K40BackgroundSubtractor.configure 4 4 0 0%
src/km3modules/k40.py K40BackgroundSubtractor.process 6 6 0 0%
src/km3modules/k40.py K40BackgroundSubtractor.get_corrected_counts 1 1 0 0%
src/km3modules/k40.py K40BackgroundSubtractor.subtract_background 19 19 0 0%
src/km3modules/k40.py K40BackgroundSubtractor.finish 3 3 0 0%
src/km3modules/k40.py K40BackgroundSubtractor.dump 2 2 0 0%
src/km3modules/k40.py IntraDOMCalibrator.configure 5 5 0 0%
src/km3modules/k40.py IntraDOMCalibrator.process 11 11 0 0%
src/km3modules/k40.py IntraDOMCalibrator.calibrate 13 13 0 0%
src/km3modules/k40.py IntraDOMCalibrator.finish 13 13 0 0%
src/km3modules/k40.py TwofoldCounter.configure 14 14 0 0%
src/km3modules/k40.py TwofoldCounter.reset 2 2 0 0%
src/km3modules/k40.py TwofoldCounter.get_livetime 1 1 0 0%
src/km3modules/k40.py TwofoldCounter.process 15 15 0 0%
src/km3modules/k40.py TwofoldCounter.dump 2 2 0 0%
src/km3modules/k40.py HRVFIFOTimesliceFilter.configure 12 12 0 0%
src/km3modules/k40.py HRVFIFOTimesliceFilter.get_skipped_frames 1 1 0 0%
src/km3modules/k40.py SummaryMedianPMTRateService.configure 2 2 0 0%
src/km3modules/k40.py SummaryMedianPMTRateService.get_median_rates 17 17 0 0%
src/km3modules/k40.py MedianPMTRatesService.configure 2 2 0 0%
src/km3modules/k40.py MedianPMTRatesService.process 9 9 0 0%
src/km3modules/k40.py MedianPMTRatesService.get_median_rates 6 6 0 0%
src/km3modules/k40.py ResetTwofoldCounts.process 6 6 0 0%
src/km3modules/k40.py calibrate_dom 46 46 0 0%
src/km3modules/k40.py calculate_weights 3 3 0 0%
src/km3modules/k40.py load_k40_coincidences_from_hdf5 6 6 0 0%
src/km3modules/k40.py load_k40_coincidences_from_rootfile 22 22 0 0%
src/km3modules/k40.py gaussian 1 1 0 0%
src/km3modules/k40.py gaussian_wo_offset 1 1 0 0%
src/km3modules/k40.py fit_delta_ts 25 25 0 0%
src/km3modules/k40.py calculate_angles 5 5 0 0%
src/km3modules/k40.py exponential_polinomial 1 1 0 0%
src/km3modules/k40.py exponential 1 1 0 0%
src/km3modules/k40.py fit_angular_distribution 8 8 0 0%
src/km3modules/k40.py minimize_t0s 6 6 0 0%
src/km3modules/k40.py minimize_t0s.make_quality_function 2 2 0 0%
src/km3modules/k40.py minimize_t0s.make_quality_function.quality_function 4 4 0 0%
src/km3modules/k40.py minimize_sigmas 6 6 0 0%
src/km3modules/k40.py minimize_sigmas.make_quality_function 2 2 0 0%
src/km3modules/k40.py minimize_sigmas.make_quality_function.quality_function 5 5 0 0%
src/km3modules/k40.py minimize_qes 6 6 0 0%
src/km3modules/k40.py minimize_qes.make_quality_function 2 2 0 0%
src/km3modules/k40.py minimize_qes.make_quality_function.quality_function 4 4 0 0%
src/km3modules/k40.py correct_means 2 2 0 0%
src/km3modules/k40.py correct_rates 2 2 0 0%
src/km3modules/k40.py calculate_rms_means 3 3 0 0%
src/km3modules/k40.py calculate_rms_rates 3 3 0 0%
src/km3modules/k40.py get_comb_index 1 1 0 0%
src/km3modules/k40.py add_to_twofold_matrix 26 26 0 0%
src/km3modules/k40.py (no function) 76 3 0 96%
src/km3modules/mc.py GlobalRandomState.configure 4 0 0 100%
src/km3modules/mc.py GlobalRandomState.random_state 1 1 0 0%
src/km3modules/mc.py McTruth.configure 1 1 0 0%
src/km3modules/mc.py McTruth.t2f 1 1 0 0%
src/km3modules/mc.py McTruth.is_nu 1 1 0 0%
src/km3modules/mc.py McTruth.process 10 10 0 0%
src/km3modules/mc.py MCTimeCorrector.configure 4 0 0 100%
src/km3modules/mc.py MCTimeCorrector.process 9 0 0 100%
src/km3modules/mc.py (no function) 21 0 0 100%
src/km3modules/parser.py CHParser.configure 1 1 0 0%
src/km3modules/parser.py CHParser.process 11 11 0 0%
src/km3modules/parser.py (no function) 8 0 0 100%
src/km3modules/plot.py plot_dom_parameters 31 31 0 0%
src/km3modules/plot.py make_dom_map 10 10 0 0%
src/km3modules/plot.py IntraDOMCalibrationPlotter.configure 4 4 0 0%
src/km3modules/plot.py IntraDOMCalibrationPlotter.process 7 7 0 0%
src/km3modules/plot.py IntraDOMCalibrationPlotter.create_plot 27 27 0 0%
src/km3modules/plot.py IntraDOMCalibrationPlotter.save_hdf5 12 12 0 0%
src/km3modules/plot.py ztplot 53 53 0 0%
src/km3modules/plot.py trim_axes 4 4 0 0%
src/km3modules/plot.py cumulative_run_livetime 10 10 0 0%
src/km3modules/plot.py (no function) 25 0 0 100%
src/km3modules/tests/__init__.py (no function) 0 0 0 100%
src/km3modules/tests/test_common.py InfinitePump.configure 1 0 0 100%
src/km3modules/tests/test_common.py InfinitePump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_a_single_key 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_a_single_key.APump.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_a_single_key.Observer.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_multiple_keys 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_multiple_keys.APump.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_keep_multiple_keys.Observer.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_wo_subgroup 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_wo_subgroup.APump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_wo_subgroup.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_w_subgroup 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_w_subgroup.APump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_hdf5_keep_group_w_subgroup.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_individual 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_individual.APump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_individual.Observer.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_parallel 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_parallel.APump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_key_hdf5_group_parallel.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group.APump.process 3 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group.Observer.process 5 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group_nested 9 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group_nested.APump.process 4 0 0 100%
src/km3modules/tests/test_common.py TestKeep.test_major_hdf5_group_nested.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_a_single_key 9 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_a_single_key.APump.process 4 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_a_single_key.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_multiple_keys 9 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_multiple_keys.APump.process 4 0 0 100%
src/km3modules/tests/test_common.py TestDelete.test_delete_multiple_keys.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon 9 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon.Observer.configure 1 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon.Observer.process 2 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon.Observer.finish 1 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush 9 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush.Observer.configure 1 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush.Observer.process 2 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush.Observer.finish 1 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush_2 9 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush_2.Observer.configure 1 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush_2.Observer.process 2 0 0 100%
src/km3modules/tests/test_common.py TestSiphon.test_siphon_with_flush_2.Observer.finish 1 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump 6 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump.add_something 2 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_a_key 6 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_a_key.add_something 2 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_multiple_keys 6 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_multiple_keys.add_something 3 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_full 6 0 0 100%
src/km3modules/tests/test_common.py TestDump.test_dump_full.add_something 3 0 0 100%
src/km3modules/tests/test_common.py TestStatusbar.test_statusbar 4 0 0 100%
src/km3modules/tests/test_common.py TestTickTock.test_ticktock 4 0 0 100%
src/km3modules/tests/test_common.py TestMemoryObserver.test_memory_observer 4 0 0 100%
src/km3modules/tests/test_common.py TestBlobIndexer.test_blob_indexer 8 0 0 100%
src/km3modules/tests/test_common.py TestBlobIndexer.test_blob_indexer.Observer.configure 1 0 0 100%
src/km3modules/tests/test_common.py TestBlobIndexer.test_blob_indexer.Observer.process 3 0 0 100%
src/km3modules/tests/test_common.py TestLocalDBService.test_create_table 4 0 0 100%
src/km3modules/tests/test_common.py TestLocalDBService.test_create_table_does_not_overwrite_by_default 5 0 0 100%
src/km3modules/tests/test_common.py TestLocalDBService.test_create_table_allows_overwrite 4 0 0 100%
src/km3modules/tests/test_common.py TestLocalDBService.test_insert_row 13 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer 6 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer.Dummy.process 2 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer_raises_when_count_wrong 7 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer_raises_when_count_wrong.Dummy.process 1 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer_raises_when_key_is_missing 7 0 0 100%
src/km3modules/tests/test_common.py TestObserver.test_observer_raises_when_key_is_missing.Dummy.process 2 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration 19 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.configure 5 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.process 1 1 0 0%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.blob_generator 2 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.finish 1 1 0 0%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.__iter__ 1 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.DummyPump.__next__ 1 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.Observer.configure 3 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.Observer.process 4 0 0 100%
src/km3modules/tests/test_common.py TestMultiFilePump.test_iteration.Observer.finish 3 0 0 100%
src/km3modules/tests/test_common.py TestFilePump.test_iteration 10 0 0 100%
src/km3modules/tests/test_common.py TestFilePump.test_iteration.Observer.configure 2 0 0 100%
src/km3modules/tests/test_common.py TestFilePump.test_iteration.Observer.process 3 0 0 100%
src/km3modules/tests/test_common.py TestFilePump.test_iteration.Observer.finish 2 0 0 100%
src/km3modules/tests/test_common.py (no function) 59 0 0 100%
src/km3modules/tests/test_foo.py TestPipeline.setUp 1 0 0 100%
src/km3modules/tests/test_foo.py TestPipeline.test_pass 1 0 0 100%
src/km3modules/tests/test_foo.py (no function) 12 0 0 100%
src/km3modules/tests/test_hits.py TestMultiplicityCounter.test_count_multiplicities 4 0 0 100%
src/km3modules/tests/test_hits.py TestMultiplicityCounter.test_count_other_multiplicities 4 0 0 100%
src/km3modules/tests/test_hits.py (no function) 9 0 0 100%
src/km3modules/tests/test_io.py TestOfflineHeaderTabulator.test_module 10 0 0 100%
src/km3modules/tests/test_io.py TestEventInfoTabulator.test_module 11 0 0 100%
src/km3modules/tests/test_io.py TestHitsTabulator.test_offline_hits 10 0 0 100%
src/km3modules/tests/test_io.py TestHitsTabulator.test_mc_hits 10 0 0 100%
src/km3modules/tests/test_io.py TestMCTracksTabulator.test_module 10 0 0 100%
src/km3modules/tests/test_io.py TestRecoTracksTabulator.test_module 13 0 0 100%
src/km3modules/tests/test_io.py CheckRecoContents.configure 3 0 0 100%
src/km3modules/tests/test_io.py CheckRecoContents.process 19 0 0 100%
src/km3modules/tests/test_io.py CheckRecoContents._preprocess_fitinf 3 0 0 100%
src/km3modules/tests/test_io.py CheckW2listContents.configure 3 0 0 100%
src/km3modules/tests/test_io.py CheckW2listContents.process 8 0 0 100%
src/km3modules/tests/test_io.py (no function) 26 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_default_random_state 8 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_default_random_state.Observer.configure 2 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_default_random_state.Observer.process 3 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_custom_random_state 8 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_custom_random_state.Observer.configure 2 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_custom_random_state.Observer.process 3 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_without_pipeline_and_default_state 5 0 0 100%
src/km3modules/tests/test_mc.py TestGlobalRandomState.test_without_pipeline_with_custom_seed 5 0 0 100%
src/km3modules/tests/test_mc.py TestMCConvert.setUp 4 0 0 100%
src/km3modules/tests/test_mc.py TestMCConvert.test_process 6 0 0 100%
src/km3modules/tests/test_mc.py (no function) 21 0 0 100%
src/km3modules/topology.py TriggeredDUs.process 9 9 0 0%
src/km3modules/topology.py (no function) 5 0 0 100%
src/km3pipe/__init__.py (no function) 38 3 0 92%
src/km3pipe/calib.py Calibration.configure 35 7 0 80%
src/km3pipe/calib.py Calibration.process 5 0 0 100%
src/km3pipe/calib.py Calibration.get_detector 1 1 0 0%
src/km3pipe/calib.py Calibration.dus 2 0 0 100%
src/km3pipe/calib.py Calibration.floors 2 0 0 100%
src/km3pipe/calib.py Calibration.apply_t0 2 2 0 0%
src/km3pipe/calib.py Calibration.apply 45 2 0 96%
src/km3pipe/calib.py Calibration._create_dom_channel_lookup 7 0 0 100%
src/km3pipe/calib.py Calibration._create_pmt_id_lookup 4 0 0 100%
src/km3pipe/calib.py Calibration.__repr__ 1 1 0 0%
src/km3pipe/calib.py Calibration.__str__ 1 1 0 0%
src/km3pipe/calib.py apply_t0_nb 11 11 0 0%
src/km3pipe/calib.py _get_calibration_for_hits 16 16 0 0%
src/km3pipe/calib.py _get_calibration_for_mchits 16 16 0 0%
src/km3pipe/calib.py _dus 4 4 0 0%
src/km3pipe/calib.py _floors 4 4 0 0%
src/km3pipe/calib.py CalibrationService.configure 13 1 0 92%
src/km3pipe/calib.py CalibrationService.load_calibration 6 6 0 0%
src/km3pipe/calib.py CalibrationService.calibrate 1 0 0 100%
src/km3pipe/calib.py CalibrationService.detector 3 0 0 100%
src/km3pipe/calib.py CalibrationService.get_detector 1 0 0 100%
src/km3pipe/calib.py CalibrationService.calibration 3 0 0 100%
src/km3pipe/calib.py CalibrationService.get_calibration 1 1 0 0%
src/km3pipe/calib.py CalibrationService.correct_slewing 1 0 0 100%
src/km3pipe/calib.py slew 9 3 0 67%
src/km3pipe/calib.py _slew_parametrised 1 1 0 0%
src/km3pipe/calib.py _slew_tabulated 5 5 0 0%
src/km3pipe/calib.py (no function) 62 0 0 100%
src/km3pipe/cmd.py run_tests 4 4 0 0%
src/km3pipe/cmd.py update_km3pipe 3 0 0 100%
src/km3pipe/cmd.py retrieve 49 49 0 0%
src/km3pipe/cmd.py main 8 8 0 0%
src/km3pipe/cmd.py (no function) 26 0 0 100%
src/km3pipe/constants.py (no function) 20 0 1 100%
src/km3pipe/controlhost.py Client.__init__ 5 5 0 0%
src/km3pipe/controlhost.py Client.subscribe 10 10 0 0%
src/km3pipe/controlhost.py Client.unsubscribe 6 6 0 0%
src/km3pipe/controlhost.py Client._full_tag 3 3 0 0%
src/km3pipe/controlhost.py Client._update_subscriptions 8 8 0 0%
src/km3pipe/controlhost.py Client.put_message 4 4 0 0%
src/km3pipe/controlhost.py Client.get_message 31 31 0 0%
src/km3pipe/controlhost.py Client._connect 5 5 0 0%
src/km3pipe/controlhost.py Client._disconnect 3 3 0 0%
src/km3pipe/controlhost.py Client._reconnect 4 4 0 0%
src/km3pipe/controlhost.py Client._recv 9 9 0 0%
src/km3pipe/controlhost.py Client.__enter__ 2 2 0 0%
src/km3pipe/controlhost.py Client.__exit__ 1 1 0 0%
src/km3pipe/controlhost.py Message.__init__ 10 2 0 80%
src/km3pipe/controlhost.py Message.data 1 1 0 0%
src/km3pipe/controlhost.py Tag.__init__ 2 0 0 100%
src/km3pipe/controlhost.py Tag.data 1 0 0 100%
src/km3pipe/controlhost.py Tag.data 7 0 0 100%
src/km3pipe/controlhost.py Tag.__str__ 1 0 0 100%
src/km3pipe/controlhost.py Tag.__len__ 1 0 0 100%
src/km3pipe/controlhost.py Prefix.__init__ 7 2 0 71%
src/km3pipe/controlhost.py Prefix.data 1 1 0 0%
src/km3pipe/controlhost.py Prefix.data 2 2 0 0%
src/km3pipe/controlhost.py Prefix.__str__ 1 1 0 0%
src/km3pipe/controlhost.py (no function) 50 0 0 100%
src/km3pipe/dataclass_templates.py (no function) 11 0 0 100%
src/km3pipe/dataclasses.py has_structured_dt 2 0 0 100%
src/km3pipe/dataclasses.py is_structured 3 0 0 100%
src/km3pipe/dataclasses.py inflate_dtype 7 0 0 100%
src/km3pipe/dataclasses.py Table.__new__ 30 0 0 100%
src/km3pipe/dataclasses.py Table.__array_finalize__ 8 0 0 100%
src/km3pipe/dataclasses.py Table.__array_wrap__ 1 0 0 100%
src/km3pipe/dataclasses.py Table._expand_scalars 14 0 0 100%
src/km3pipe/dataclasses.py Table.from_dict 17 0 0 100%
src/km3pipe/dataclasses.py Table.from_columns 9 0 0 100%
src/km3pipe/dataclasses.py Table.from_rows 8 0 0 100%
src/km3pipe/dataclasses.py Table.templates_avail 1 0 0 100%
src/km3pipe/dataclasses.py Table.from_template 12 0 0 100%
src/km3pipe/dataclasses.py Table._check_column_length 5 0 0 100%
src/km3pipe/dataclasses.py Table.append_columns 16 0 0 100%
src/km3pipe/dataclasses.py Table.drop_columns 2 0 0 100%
src/km3pipe/dataclasses.py Table.sorted 2 0 0 100%
src/km3pipe/dataclasses.py Table.to_dataframe 2 0 0 100%
src/km3pipe/dataclasses.py Table.from_dataframe 2 0 0 100%
src/km3pipe/dataclasses.py Table.merge 23 0 0 100%
src/km3pipe/dataclasses.py Table.__add__ 15 0 1 100%
src/km3pipe/dataclasses.py Table.__str__ 6 0 0 100%
src/km3pipe/dataclasses.py Table.__repr__ 2 0 0 100%
src/km3pipe/dataclasses.py Table.__contains__ 1 0 0 100%
src/km3pipe/dataclasses.py Table.pos 1 0 0 100%
src/km3pipe/dataclasses.py Table.pos 6 0 0 100%
src/km3pipe/dataclasses.py Table.dir 1 0 0 100%
src/km3pipe/dataclasses.py Table.dir 6 0 0 100%
src/km3pipe/dataclasses.py Table.phi 2 0 0 100%
src/km3pipe/dataclasses.py Table.theta 2 0 0 100%
src/km3pipe/dataclasses.py Table.zenith 3 0 0 100%
src/km3pipe/dataclasses.py Table.azimuth 3 0 0 100%
src/km3pipe/dataclasses.py Table.triggered_rows 3 0 0 100%
src/km3pipe/dataclasses.py NDArray.__new__ 8 0 0 100%
src/km3pipe/dataclasses.py NDArray.__array_finalize__ 5 1 0 80%
src/km3pipe/dataclasses.py Vec3.__init__ 3 0 0 100%
src/km3pipe/dataclasses.py Vec3.__add__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__radd__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__sub__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__rsub__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__mul__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__rmul__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__div__ 1 1 0 0%
src/km3pipe/dataclasses.py Vec3.__truediv__ 1 0 0 100%
src/km3pipe/dataclasses.py Vec3.__array__ 3 1 0 67%
src/km3pipe/dataclasses.py Vec3.__getitem__ 1 0 0 100%
src/km3pipe/dataclasses.py (no function) 86 0 0 100%
src/km3pipe/extras.py pandas 5 2 0 60%
src/km3pipe/extras.py scipy 5 5 0 0%
src/km3pipe/extras.py pypandoc 5 5 0 0%
src/km3pipe/extras.py urwid 5 5 0 0%
src/km3pipe/extras.py (no function) 4 0 0 100%
src/km3pipe/hardware.py Detector.__init__ 34 6 0 82%
src/km3pipe/hardware.py Detector._init_from_string 4 0 0 100%
src/km3pipe/hardware.py Detector._init_from_file 5 0 1 100%
src/km3pipe/hardware.py Detector._open_file 1 0 0 100%
src/km3pipe/hardware.py Detector._readline 10 1 0 90%
src/km3pipe/hardware.py Detector._extract_comments 5 0 0 100%
src/km3pipe/hardware.py Detector._parse_header 20 2 1 90%
src/km3pipe/hardware.py Detector._parse 73 6 0 92%
src/km3pipe/hardware.py Detector.reset_caches 6 0 0 100%
src/km3pipe/hardware.py Detector.add_comment 1 0 0 100%
src/km3pipe/hardware.py Detector.comments 1 0 0 100%
src/km3pipe/hardware.py Detector.dom_ids 3 0 0 100%
src/km3pipe/hardware.py Detector.dom_positions 8 0 0 100%
src/km3pipe/hardware.py Detector.dom_table 12 0 0 100%
src/km3pipe/hardware.py Detector.com 3 0 0 100%
src/km3pipe/hardware.py Detector.xy_positions 7 0 0 100%
src/km3pipe/hardware.py Detector.translate_detector 5 0 0 100%
src/km3pipe/hardware.py Detector.rotate_dom_by_yaw 18 0 0 100%
src/km3pipe/hardware.py Detector.rotate_du_by_yaw 5 0 0 100%
src/km3pipe/hardware.py Detector.rescale 10 0 0 100%
src/km3pipe/hardware.py Detector.pmt_angles 4 0 0 100%
src/km3pipe/hardware.py Detector.ascii 23 0 0 100%
src/km3pipe/hardware.py Detector.write 3 3 0 0%
src/km3pipe/hardware.py Detector.pmt_with_id 4 0 0 100%
src/km3pipe/hardware.py Detector.get_pmt 5 0 0 100%
src/km3pipe/hardware.py Detector.pmtid2omkey 1 1 0 0%
src/km3pipe/hardware.py Detector.domid2floor 1 0 0 100%
src/km3pipe/hardware.py Detector.n_dus 1 0 0 100%
src/km3pipe/hardware.py Detector.__str__ 1 0 0 100%
src/km3pipe/hardware.py Detector.__repr__ 1 0 0 100%
src/km3pipe/hardware.py UTMInfo.__init__ 5 0 0 100%
src/km3pipe/hardware.py UTMInfo.__str__ 1 0 0 100%
src/km3pipe/hardware.py UTMInfo.__repr__ 1 1 0 0%
src/km3pipe/hardware.py PMT.__init__ 6 6 0 0%
src/km3pipe/hardware.py PMT.__str__ 1 1 0 0%
src/km3pipe/hardware.py (no function) 66 0 0 100%
src/km3pipe/io/__init__.py (no function) 19 0 0 100%
src/km3pipe/io/ch.py CHPump.configure 24 1 0 96%
src/km3pipe/io/ch.py CHPump._start_thread 4 4 0 0%
src/km3pipe/io/ch.py CHPump._init_controlhost 7 7 0 0%
src/km3pipe/io/ch.py CHPump._run 34 34 0 0%
src/km3pipe/io/ch.py CHPump.process 10 10 0 0%
src/km3pipe/io/ch.py CHPump.show_performance_statistics 9 9 0 0%
src/km3pipe/io/ch.py CHPump._set_idle_timer 1 1 0 0%
src/km3pipe/io/ch.py CHPump._add_idle_dt 2 2 0 0%
src/km3pipe/io/ch.py CHPump.finish 3 3 0 0%
src/km3pipe/io/ch.py CHPump.__iter__ 1 1 0 0%
src/km3pipe/io/ch.py CHPump.__next__ 1 1 0 0%
src/km3pipe/io/ch.py CHPump.next 1 1 0 0%
src/km3pipe/io/ch.py CHTagger 3 3 0 0%
src/km3pipe/io/ch.py (no function) 33 0 0 100%
src/km3pipe/io/clb.py CLBPump.configure 6 0 0 100%
src/km3pipe/io/clb.py CLBPump._determine_packet_positions 8 0 0 100%
src/km3pipe/io/clb.py CLBPump.__len__ 1 0 0 100%
src/km3pipe/io/clb.py CLBPump.seek_to_packet 2 0 0 100%
src/km3pipe/io/clb.py CLBPump.blob_generator 2 0 0 100%
src/km3pipe/io/clb.py CLBPump.extract_blob 12 2 0 83%
src/km3pipe/io/clb.py CLBPump.__getitem__ 2 0 0 100%
src/km3pipe/io/clb.py CLBPump.process 1 1 0 0%
src/km3pipe/io/clb.py CLBPump.__iter__ 3 0 0 100%
src/km3pipe/io/clb.py CLBPump.__next__ 1 0 0 100%
src/km3pipe/io/clb.py CLBPump.finish 1 1 0 0%
src/km3pipe/io/clb.py (no function) 27 0 0 100%
src/km3pipe/io/daq.py TimesliceParser.configure 1 0 0 100%
src/km3pipe/io/daq.py TimesliceParser._get_raw_data 9 9 0 0%
src/km3pipe/io/daq.py TimesliceParser.process 12 12 0 0%
src/km3pipe/io/daq.py TimesliceParser._parse_timeslice 29 1 0 97%
src/km3pipe/io/daq.py RePump.configure 2 0 0 100%
src/km3pipe/io/daq.py RePump.process 8 2 0 75%
src/km3pipe/io/daq.py RePump.finish 1 1 0 0%
src/km3pipe/io/daq.py DAQPump.configure 6 0 0 100%
src/km3pipe/io/daq.py DAQPump.next_blob 24 7 0 71%
src/km3pipe/io/daq.py DAQPump.seek_to_frame 2 0 0 100%
src/km3pipe/io/daq.py DAQPump.get_blob 2 0 0 100%
src/km3pipe/io/daq.py DAQPump.determine_frame_positions 8 0 0 100%
src/km3pipe/io/daq.py DAQPump.process 1 1 0 0%
src/km3pipe/io/daq.py DAQPump.finish 1 1 0 0%
src/km3pipe/io/daq.py DAQPump.__len__ 3 3 0 0%
src/km3pipe/io/daq.py DAQPump.__iter__ 1 0 0 100%
src/km3pipe/io/daq.py DAQPump.__next__ 7 0 0 100%
src/km3pipe/io/daq.py DAQPump.__getitem__ 5 3 0 40%
src/km3pipe/io/daq.py DAQPump._slice_generator 3 3 0 0%
src/km3pipe/io/daq.py DAQProcessor.configure 3 0 0 100%
src/km3pipe/io/daq.py DAQProcessor.process 18 7 0 61%
src/km3pipe/io/daq.py DAQProcessor.process_event 21 2 0 90%
src/km3pipe/io/daq.py DAQProcessor.process_summaryslice 4 4 0 0%
src/km3pipe/io/daq.py DAQProcessor.process_online_reco 15 15 0 0%
src/km3pipe/io/daq.py DAQPreamble.__init__ 6 1 0 83%
src/km3pipe/io/daq.py DAQPreamble._parse_byte_data 1 0 0 100%
src/km3pipe/io/daq.py DAQPreamble._parse_file 2 0 0 100%
src/km3pipe/io/daq.py DAQPreamble.__repr__ 2 2 0 0%
src/km3pipe/io/daq.py DAQHeader.__init__ 8 1 0 88%
src/km3pipe/io/daq.py DAQHeader._parse_byte_data 8 0 0 100%
src/km3pipe/io/daq.py DAQHeader._parse_file 2 0 0 100%
src/km3pipe/io/daq.py DAQHeader.__repr__ 2 2 0 0%
src/km3pipe/io/daq.py DAQSummaryslice.__init__ 11 1 0 91%
src/km3pipe/io/daq.py DAQSummaryslice._parse_summary_frames 10 0 0 100%
src/km3pipe/io/daq.py DAQSummaryslice._get_rate 3 0 0 100%
src/km3pipe/io/daq.py DAQSummaryslice._get_factor 1 0 0 100%
src/km3pipe/io/daq.py DAQEvent.__init__ 12 1 0 92%
src/km3pipe/io/daq.py DAQEvent._parse_triggered_hits 3 0 0 100%
src/km3pipe/io/daq.py DAQEvent._parse_snapshot_hits 3 0 0 100%
src/km3pipe/io/daq.py DAQEvent.__repr__ 6 6 0 0%
src/km3pipe/io/daq.py TMCHData.__init__ 33 4 0 88%
src/km3pipe/io/daq.py TMCHData.__str__ 1 1 0 0%
src/km3pipe/io/daq.py TMCHData.__repr__ 1 1 0 0%
src/km3pipe/io/daq.py TMCHRepump.configure 4 0 0 100%
src/km3pipe/io/daq.py TMCHRepump.process 1 1 0 0%
src/km3pipe/io/daq.py TMCHRepump.blob_generator 8 0 0 100%
src/km3pipe/io/daq.py TMCHRepump.finish 1 1 0 0%
src/km3pipe/io/daq.py TMCHRepump.__iter__ 1 0 0 100%
src/km3pipe/io/daq.py TMCHRepump.__next__ 1 0 0 100%
src/km3pipe/io/daq.py DMMonitor.__init__ 7 0 0 100%
src/km3pipe/io/daq.py DMMonitor.available_parameters 3 1 0 67%
src/km3pipe/io/daq.py DMMonitor._get_available_parameters 1 1 0 0%
src/km3pipe/io/daq.py DMMonitor.get 1 1 0 0%
src/km3pipe/io/daq.py DMMonitor.start_session 6 6 0 0%
src/km3pipe/io/daq.py DMMonitor._session 6 6 0 0%
src/km3pipe/io/daq.py (no function) 101 0 0 100%
src/km3pipe/io/evt.py try_decode_string 4 0 0 100%
src/km3pipe/io/evt.py EvtPump.configure 42 5 0 88%
src/km3pipe/io/evt.py EvtPump._register_parsers 8 0 0 100%
src/km3pipe/io/evt.py EvtPump._reset 4 4 0 0%
src/km3pipe/io/evt.py EvtPump._get_file_index_str 4 4 0 0%
src/km3pipe/io/evt.py EvtPump.prepare_blobs 3 0 0 100%
src/km3pipe/io/evt.py EvtPump.extract_header 23 1 0 96%
src/km3pipe/io/evt.py EvtPump.get_blob 14 0 0 100%
src/km3pipe/io/evt.py EvtPump.process 29 20 0 31%
src/km3pipe/io/evt.py EvtPump._cache_offsets 22 3 0 86%
src/km3pipe/io/evt.py EvtPump._record_offset 2 0 0 100%
src/km3pipe/io/evt.py EvtPump._create_blob 26 2 0 92%
src/km3pipe/io/evt.py EvtPump.__len__ 3 0 0 100%
src/km3pipe/io/evt.py EvtPump.__iter__ 1 0 0 100%
src/km3pipe/io/evt.py EvtPump.__next__ 7 0 0 100%
src/km3pipe/io/evt.py EvtPump.__getitem__ 5 1 0 80%
src/km3pipe/io/evt.py EvtPump._slice_generator 3 0 0 100%
src/km3pipe/io/evt.py EvtPump.finish 2 0 0 100%
src/km3pipe/io/evt.py Parser.__init__ 1 0 0 100%
src/km3pipe/io/evt.py Parser.__call__ 7 0 0 100%
src/km3pipe/io/evt.py parse_corant 14 0 0 100%
src/km3pipe/io/evt.py parse_propa 14 0 0 100%
src/km3pipe/io/evt.py (no function) 44 0 0 100%
src/km3pipe/io/hdf5.py check_version 7 4 0 43%
src/km3pipe/io/hdf5.py HDF5Header.__init__ 3 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header._set_attributes 13 1 0 92%
src/km3pipe/io/hdf5.py HDF5Header.__getitem__ 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header.keys 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header.values 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header.items 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header.from_table 17 2 0 88%
src/km3pipe/io/hdf5.py HDF5Header.from_km3io 3 1 0 67%
src/km3pipe/io/hdf5.py HDF5Header.from_aanet 17 2 0 88%
src/km3pipe/io/hdf5.py HDF5Header.from_hdf5 7 0 0 100%
src/km3pipe/io/hdf5.py HDF5Header.from_pytable 17 0 0 100%
src/km3pipe/io/hdf5.py HDF5IndexTable.__init__ 6 0 0 100%
src/km3pipe/io/hdf5.py HDF5IndexTable.append 3 0 0 100%
src/km3pipe/io/hdf5.py HDF5IndexTable.data 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5IndexTable.fillup 3 0 0 100%
src/km3pipe/io/hdf5.py HDF5IndexTable.__len__ 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink.configure 24 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink._to_array 12 12 0 0%
src/km3pipe/io/hdf5.py HDF5Sink._cache_ndarray 1 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink._write_ndarrays_cache_to_disk 11 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink.write_table 4 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink._write_table 34 14 0 59%
src/km3pipe/io/hdf5.py HDF5Sink._write_separate_columns 14 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink._process_entry 29 2 0 93%
src/km3pipe/io/hdf5.py HDF5Sink.process 23 2 0 91%
src/km3pipe/io/hdf5.py HDF5Sink._record_index 6 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink.flush 4 0 0 100%
src/km3pipe/io/hdf5.py HDF5Sink.finish 40 11 0 72%
src/km3pipe/io/hdf5.py HDF5Pump.configure 21 0 0 100%
src/km3pipe/io/hdf5.py HDF5Pump._read_group_info 17 4 0 76%
src/km3pipe/io/hdf5.py HDF5Pump.h5singleton 1 1 0 0%
src/km3pipe/io/hdf5.py HDF5Pump.process 7 0 0 100%
src/km3pipe/io/hdf5.py HDF5Pump.get_blob 89 13 0 85%
src/km3pipe/io/hdf5.py HDF5Pump._read_tab_indices 8 2 0 75%
src/km3pipe/io/hdf5.py HDF5Pump.__len__ 8 8 0 0%
src/km3pipe/io/hdf5.py HDF5Pump.__iter__ 1 1 0 0%
src/km3pipe/io/hdf5.py HDF5Pump.__next__ 6 2 0 67%
src/km3pipe/io/hdf5.py HDF5Pump.__getitem__ 5 3 0 40%
src/km3pipe/io/hdf5.py HDF5Pump._slice_generator 4 4 0 0%
src/km3pipe/io/hdf5.py HDF5Pump._close_h5file 2 0 0 100%
src/km3pipe/io/hdf5.py HDF5Pump.finish 1 0 0 100%
src/km3pipe/io/hdf5.py create_index_tuple 17 17 0 0%
src/km3pipe/io/hdf5.py HDF5MetaData.configure 2 2 0 0%
src/km3pipe/io/hdf5.py header2table 1 0 0 100%
src/km3pipe/io/hdf5.py _ 24 0 0 100%
src/km3pipe/io/hdf5.py _ 8 0 0 100%
src/km3pipe/io/hdf5.py _ 1 0 0 100%
src/km3pipe/io/hdf5.py (no function) 95 2 0 98%
src/km3pipe/io/offline.py OfflinePump.configure 7 0 0 100%
src/km3pipe/io/offline.py OfflinePump.process 1 0 0 100%
src/km3pipe/io/offline.py OfflinePump.finish 1 0 0 100%
src/km3pipe/io/offline.py OfflinePump.__iter__ 1 0 0 100%
src/km3pipe/io/offline.py OfflinePump.__next__ 1 0 0 100%
src/km3pipe/io/offline.py OfflinePump.__getitem__ 3 3 0 0%
src/km3pipe/io/offline.py OfflinePump.get_number_of_blobs 1 1 0 0%
src/km3pipe/io/offline.py OfflinePump._blob_generator 3 0 0 100%
src/km3pipe/io/offline.py (no function) 16 0 0 100%
src/km3pipe/io/online.py EventPump.configure 6 0 0 100%
src/km3pipe/io/online.py EventPump.blob_generator 5 5 0 0%
src/km3pipe/io/online.py EventPump.__getitem__ 3 1 0 67%
src/km3pipe/io/online.py EventPump._get_trigger_mask 7 0 0 100%
src/km3pipe/io/online.py EventPump.extract_event 12 0 0 100%
src/km3pipe/io/online.py EventPump.process 2 2 0 0%
src/km3pipe/io/online.py EventPump.__iter__ 1 1 0 0%
src/km3pipe/io/online.py EventPump.__next__ 2 2 0 0%
src/km3pipe/io/online.py TimeslicePump.configure 8 0 0 100%
src/km3pipe/io/online.py TimeslicePump.create_timeslice_info 7 0 0 100%
src/km3pipe/io/online.py TimeslicePump.process 2 2 0 0%
src/km3pipe/io/online.py TimeslicePump.timeslice_generator 5 5 0 0%
src/km3pipe/io/online.py TimeslicePump.get_blob 7 0 0 100%
src/km3pipe/io/online.py TimeslicePump._extract_number_of_frames 2 0 0 100%
src/km3pipe/io/online.py TimeslicePump._extract_hits 10 0 0 100%
src/km3pipe/io/online.py TimeslicePump.get_by_frame_index 6 6 0 0%
src/km3pipe/io/online.py TimeslicePump.__len__ 1 1 0 0%
src/km3pipe/io/online.py TimeslicePump.__iter__ 1 1 0 0%
src/km3pipe/io/online.py TimeslicePump.__next__ 2 2 0 0%
src/km3pipe/io/online.py TimeslicePump.__getitem__ 5 3 0 40%
src/km3pipe/io/online.py TimeslicePump._slice_generator 3 3 0 0%
src/km3pipe/io/online.py (no function) 37 0 0 100%
src/km3pipe/io/tests/__init__.py (no function) 0 0 0 100%
src/km3pipe/io/tests/test_ch.py TestCHPump.test_init 3 0 0 100%
src/km3pipe/io/tests/test_ch.py (no function) 13 0 0 100%
src/km3pipe/io/tests/test_clb.py TestCLBPump.setUp 1 0 0 100%
src/km3pipe/io/tests/test_clb.py TestCLBPump.test_determine_packet_positions_finds_packets 1 0 0 100%
src/km3pipe/io/tests/test_clb.py TestCLBPump.test_length 1 0 0 100%
src/km3pipe/io/tests/test_clb.py TestCLBPump.test_getindex 11 0 0 100%
src/km3pipe/io/tests/test_clb.py TestCLBPump.test_iterator 8 0 0 100%
src/km3pipe/io/tests/test_clb.py (no function) 18 0 0 100%
src/km3pipe/io/tests/test_daq.py TestRePump.test_process 7 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_init_with_filename 1 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_frame_positions_in_io_sum 4 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_frame_positions_in_io_evt 4 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_blob_in_io_sum 6 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_blob_in_io_evt 8 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_blob_iteration 3 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPumpWithLegacyFiles.test_get_item 5 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_init_with_filename 1 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_frame_positions_in_io_sum 3 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_frame_positions_in_io_evt 3 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_blob_in_io_sum 6 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_blob_in_io_evt 8 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_blob_iteration 3 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQPump.test_get_item 12 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQProcessor.test_events 13 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDAQProcessor.test_events_legacy 13 0 0 100%
src/km3pipe/io/tests/test_daq.py TestTMCHRepump.test_reading_version_2 34 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDMMonitor.test_init 2 0 0 100%
src/km3pipe/io/tests/test_daq.py TestDMMonitor.test_available_parameters 3 0 0 100%
src/km3pipe/io/tests/test_daq.py TestTimesliceParserLegacy.test_l0 7 0 0 100%
src/km3pipe/io/tests/test_daq.py TestTimesliceParserLegacy.test_l1 4 0 0 100%
src/km3pipe/io/tests/test_daq.py TestTimesliceParserLegacy.test_l2 4 0 0 100%
src/km3pipe/io/tests/test_daq.py TestTimesliceParser.test_sn 13 0 0 100%
src/km3pipe/io/tests/test_daq.py (no function) 39 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.setUp 6 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.tearDown 1 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_parse_header 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_header_entries_with_same_tag_are_put_in_lists 5 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_record_offset_saves_correct_offset 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_event_offset_is_at_first_event_after_parsing_header 2 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_rebuild_offsets 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_rebuild_offsets_without_header 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_cache_enabled_triggers_rebuild_offsets 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_cache_disabled_doesnt_trigger_cache_offsets 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_get_blob_triggers_cache_offsets_if_cache_disabled 6 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_get_blob_raises_index_error_for_wrong_index 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_get_blob_returns_correct_event_information 11 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_get_blob_returns_correct_events 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_process_returns_correct_blobs 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_process_raises_stop_iteration_if_eof_reached 6 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_pump_acts_as_iterator 5 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_pump_has_len 2 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_pump_get_item_returns_first_for_index_zero 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_pump_get_item_returns_correct_blob_for_index 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_pump_slice_generator 5 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_create_blob_entry_for_line_ignores_corrupt_line 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_parsers_are_ignored_if_not_valid 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_parsers_are_added 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_custom_parser 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_custom_parser.a_parser 1 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtPump.test_auto_parser_finds_all_physics_parsers 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtFilePump.setUp 1 0 0 100%
src/km3pipe/io/tests/test_evt.py TestEvtFilePump.test_pipe 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestCorsika.setUp 1 0 0 100%
src/km3pipe/io/tests/test_evt.py TestCorsika.test_pipe 3 0 0 100%
src/km3pipe/io/tests/test_evt.py TestPropa.setUp 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestPropa.test_pipe 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestPropa.test_filenames 7 0 0 100%
src/km3pipe/io/tests/test_evt.py TestPropa.test_auto_parser 12 12 0 0%
src/km3pipe/io/tests/test_evt.py TestKM3Sim.setUp 1 0 0 100%
src/km3pipe/io/tests/test_evt.py TestKM3Sim.test_pipe 4 0 0 100%
src/km3pipe/io/tests/test_evt.py TestKM3Sim.test_hits 5 0 0 100%
src/km3pipe/io/tests/test_evt.py TestKM3Sim.test_neutrino 5 0 0 100%
src/km3pipe/io/tests/test_evt.py TestParserDetection.test_parsers_are_automatically_detected 1 0 0 100%
src/km3pipe/io/tests/test_evt.py (no function) 58 0 0 100%
src/km3pipe/io/tests/test_hdf5.py Skipper.configure 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py Skipper.process 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.setUp 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_init_sets_filename_if_no_keyword_arg_is_passed 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_standalone 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_pipe 11 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_pipe.Observer.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_pipe.Observer.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_pipe.Observer.finish 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_event_info_is_not_empty 7 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_event_info_is_not_empty.Printer.process 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_event_info_has_correct_group_id 8 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_event_info_has_correct_group_id.Printer.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_event_info_has_correct_group_id.Printer.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Pump.test_get_blob 7 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.setUp 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.tearDown 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_pipe 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_h5info 13 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_h5info.DummyPump.process 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing 26 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing.DummyPump.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing_of_multiple_keys 14 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing_of_multiple_keys.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_filtered_writing_of_multiple_keys.DummyPump.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_write_table_service 10 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5Sink.test_write_table_service.Foo.prepare 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays_with_defaults 18 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays_with_defaults.DummyPump.process 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays 16 16 0 0%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays.DummyPump.configure 1 1 0 0%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays.DummyPump.process 3 3 0 0%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays_in_nested_group 16 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays_in_nested_group.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays_in_nested_group.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays 16 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_writing_of_n_dim_arrays.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_reading_of_n_dim_arrays 18 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_reading_of_n_dim_arrays.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_reading_of_n_dim_arrays.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_reading_of_n_dim_arrays.Observer.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestNDArrayHandling.test_reading_of_n_dim_arrays.Observer.process 9 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables 18 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_ndarray 17 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_ndarray.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_ndarray.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays 24 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays.DummyPump.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays_first_and_last 24 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays_first_and_last.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkSkippedBlobs.test_skipped_blob_with_tables_and_ndarrays_first_and_last.DummyPump.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id 17 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id.DummyPump.process 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id_and_multiple_keys 23 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id_and_multiple_keys.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_without_group_id_and_multiple_keys.DummyPump.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_with_custom_group_id 12 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_consistency_for_tables_with_custom_group_id.DummyPump.process 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_singletons 12 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_singletons.DummyPump.process 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_singletons_reading 15 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_singletons_reading.DummyPump.process 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestH5SinkConsistency.test_h5_singletons_reading.Observer.process 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout 17 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout.DummyPump.process 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout.BlobTester.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout.BlobTester.process 11 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables 17 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables.DummyPump.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables.BlobTester.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables.BlobTester.process 7 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables_in_same_group 17 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables_in_same_group.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables_in_same_group.DummyPump.process 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables_in_same_group.BlobTester.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_hdf5_readout_split_tables_in_same_group.BlobTester.process 8 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_table 16 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_table.Dummy.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_table.Dummy.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_table.Observer.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_table.Observer.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_ndarray 16 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_ndarray.Dummy.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_ndarray.Dummy.process 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_ndarray.Observer.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5PumpConsistency.test_sparse_ndarray.Observer.process 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index 26 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.DummyPump.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.shuffle 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.Observer.configure 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.Observer.process 13 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_without_reset_index.Observer.finish 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index 26 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.DummyPump.configure 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.DummyPump.process 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.shuffle 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.Observer.configure 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.Observer.process 13 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Shuffle.test_shuffle_with_reset_index.Observer.finish 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.setUp 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_init 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_behaves_like_a_dict 4 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_getitem 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_with_vectors 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_with_scrumbled_vectors 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_from_table 8 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_from_hdf5_file 10 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_from_hdf5_file_with_invalid_identifier_names_in_header 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_from_table_with_bytes 5 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_from_km3io 16 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestHDF5Header.test_header_fails_when_no_info_in_file 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.setUp 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_length 1 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_values 14 1 0 93%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_values_are_converted_to_str 3 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_conversion_returns_none_for_empty_dict 2 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_conversion_of_km3io_header 7 0 0 100%
src/km3pipe/io/tests/test_hdf5.py TestConvertHeaderDictToTable.test_conversion_of_hdf5header 6 0 0 100%
src/km3pipe/io/tests/test_hdf5.py (no function) 78 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.setUp 1 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_iteration 4 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_has_header 2 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_in_pipeline 9 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_in_pipeline.Observer.configure 1 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_in_pipeline.Observer.process 4 0 0 100%
src/km3pipe/io/tests/test_offline.py TestOfflinePump.test_offline_pump_in_pipeline.Observer.finish 1 0 0 100%
src/km3pipe/io/tests/test_offline.py (no function) 9 0 0 100%
src/km3pipe/io/tests/test_online.py TestEventPump.setUp 2 0 0 100%
src/km3pipe/io/tests/test_online.py TestEventPump.tearDown 2 0 0 100%
src/km3pipe/io/tests/test_online.py TestEventPump.test_event_info 14 1 0 93%
src/km3pipe/io/tests/test_online.py TestEventPump.test_hit_info 12 12 0 0%
src/km3pipe/io/tests/test_online.py TestTimeslicePump.setUp 2 0 0 100%
src/km3pipe/io/tests/test_online.py TestTimeslicePump.test_timeslice_info 7 0 0 100%
src/km3pipe/io/tests/test_online.py TestTimeslicePump.test_timeslice_hits 8 0 0 100%
src/km3pipe/io/tests/test_online.py (no function) 25 0 0 100%
src/km3pipe/logger.py deprecation 1 1 0 0%
src/km3pipe/logger.py once 10 10 0 0%
src/km3pipe/logger.py LogIO.__init__ 6 6 0 0%
src/km3pipe/logger.py LogIO.send 7 7 0 0%
src/km3pipe/logger.py LogIO.connect 2 2 0 0%
src/km3pipe/logger.py get_logger 20 4 0 80%
src/km3pipe/logger.py available_loggers 1 1 0 0%
src/km3pipe/logger.py set_level 6 6 0 0%
src/km3pipe/logger.py get_printer 9 5 0 44%
src/km3pipe/logger.py get_printer.printer 1 0 0 100%
src/km3pipe/logger.py hash_coloured 2 2 0 0%
src/km3pipe/logger.py hash_coloured_escapes 3 3 0 0%
src/km3pipe/logger.py (no function) 41 7 0 83%
src/km3pipe/math.py neutrino_to_source_direction 13 4 0 69%
src/km3pipe/math.py source_to_neutrino_direction 11 11 0 0%
src/km3pipe/math.py theta 3 0 0 100%
src/km3pipe/math.py theta_separg 1 0 0 100%
src/km3pipe/math.py phi 4 0 0 100%
src/km3pipe/math.py phi_separg 3 0 0 100%
src/km3pipe/math.py zenith 1 0 0 100%
src/km3pipe/math.py azimuth 6 0 0 100%
src/km3pipe/math.py cartesian 4 4 0 0%
src/km3pipe/math.py angle 8 1 0 88%
src/km3pipe/math.py magnitude 5 1 0 80%
src/km3pipe/math.py angle_between 7 1 0 86%
src/km3pipe/math.py unit_vector 5 0 0 100%
src/km3pipe/math.py pld3 10 1 0 90%
src/km3pipe/math.py lpnorm 1 1 0 0%
src/km3pipe/math.py dist 1 0 0 100%
src/km3pipe/math.py com 3 0 0 100%
src/km3pipe/math.py circ_permutation 4 4 0 0%
src/km3pipe/math.py hsin 1 0 0 100%
src/km3pipe/math.py space_angle 8 0 0 100%
src/km3pipe/math.py rotation_matrix 7 0 0 100%
src/km3pipe/math.py spherecutmask 6 0 0 100%
src/km3pipe/math.py spherecut 2 0 0 100%
src/km3pipe/math.py Polygon.__init__ 2 0 0 100%
src/km3pipe/math.py Polygon.contains 4 0 0 100%
src/km3pipe/math.py Polygon.contains_xy 2 0 0 100%
src/km3pipe/math.py IrregularPrism.__init__ 3 0 0 100%
src/km3pipe/math.py IrregularPrism._is_z_contained 1 0 0 100%
src/km3pipe/math.py IrregularPrism.contains 6 0 0 100%
src/km3pipe/math.py IrregularPrism.contains_xyz 2 0 0 100%
src/km3pipe/math.py SparseCone.__init__ 7 0 0 100%
src/km3pipe/math.py SparseCone._equidistant_angles_from_circle 1 0 0 100%
src/km3pipe/math.py SparseCone._random_circle_vector 6 0 0 100%
src/km3pipe/math.py SparseCone.sample_circle 4 0 0 100%
src/km3pipe/math.py SparseCone.sample_axis 1 0 0 100%
src/km3pipe/math.py SparseCone.sample 3 0 0 100%
src/km3pipe/math.py inertia 17 17 0 0%
src/km3pipe/math.py g_parameter 6 6 0 0%
src/km3pipe/math.py gold_parameter 2 2 0 0%
src/km3pipe/math.py log_b 1 0 0 100%
src/km3pipe/math.py qrot 3 0 0 100%
src/km3pipe/math.py qeuler 11 0 0 100%
src/km3pipe/math.py qrot_yaw 1 0 0 100%
src/km3pipe/math.py intersect_3d 16 0 0 100%
src/km3pipe/math.py (no function) 61 0 0 100%
src/km3pipe/mc.py geant2pdg 4 0 0 100%
src/km3pipe/mc.py pdg2name 5 0 0 100%
src/km3pipe/mc.py name2pdg 1 1 0 0%
src/km3pipe/mc.py most_energetic 2 2 0 0%
src/km3pipe/mc.py leading_particle 5 5 0 0%
src/km3pipe/mc.py get_flavor 2 2 0 0%
src/km3pipe/mc.py _p_eq_nu 1 1 0 0%
src/km3pipe/mc.py _p_eq_mu 1 1 0 0%
src/km3pipe/mc.py is_neutrino 2 2 0 0%
src/km3pipe/mc.py is_muon 2 2 0 0%
src/km3pipe/mc.py convert_mc_times_to_jte_times 3 0 0 100%
src/km3pipe/mc.py (no function) 23 0 0 100%
src/km3pipe/physics.py cherenkov 18 0 0 100%
src/km3pipe/physics.py _cherenkov 14 14 0 0%
src/km3pipe/physics.py _get_closest 10 0 0 100%
src/km3pipe/physics.py get_closest 11 2 0 82%
src/km3pipe/physics.py cut4d 10 0 0 100%
src/km3pipe/physics.py (no function) 27 0 0 100%
src/km3pipe/plot.py get_ax 3 3 0 0%
src/km3pipe/plot.py diag 4 4 0 0%
src/km3pipe/plot.py automeshgrid 13 13 0 0%
src/km3pipe/plot.py meshgrid 8 0 0 100%
src/km3pipe/plot.py bincenters 2 2 0 0%
src/km3pipe/plot.py prebinned_hist 4 4 0 0%
src/km3pipe/plot.py plot_convexhull 9 9 0 0%
src/km3pipe/plot.py (no function) 23 3 1 87%
src/km3pipe/shell.py qsub 2 2 0 0%
src/km3pipe/shell.py submit 15 15 0 0%
src/km3pipe/shell.py _gen_job_slurm 24 24 0 0%
src/km3pipe/shell.py _gen_job_torque 22 22 0 0%
src/km3pipe/shell.py gen_job 5 5 0 0%
src/km3pipe/shell.py get_jpp_env 2 2 0 0%
src/km3pipe/shell.py Script.__init__ 1 0 0 100%
src/km3pipe/shell.py Script.add 1 0 0 100%
src/km3pipe/shell.py Script.echo 1 0 0 100%
src/km3pipe/shell.py Script.separator 1 0 0 100%
src/km3pipe/shell.py Script.cp 1 0 0 100%
src/km3pipe/shell.py Script.mv 1 0 0 100%
src/km3pipe/shell.py Script.mkdir 1 0 0 100%
src/km3pipe/shell.py Script.iget 6 4 0 33%
src/km3pipe/shell.py Script._add_two_argument_command 1 0 0 100%
src/km3pipe/shell.py Script.clear 1 0 0 100%
src/km3pipe/shell.py Script.__add__ 3 0 0 100%
src/km3pipe/shell.py Script.__str__ 1 0 0 100%
src/km3pipe/shell.py Script.__repr__ 1 1 0 0%
src/km3pipe/shell.py (no function) 38 0 0 100%
src/km3pipe/style/__init__.py get_style_path 1 0 0 100%
src/km3pipe/style/__init__.py use 6 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.__init__ 3 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.choose 4 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.refresh_styles 9 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.available 1 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.__next__ 1 0 0 100%
src/km3pipe/style/__init__.py ColourCycler.next 1 1 0 0%
src/km3pipe/style/__init__.py (no function) 21 0 0 100%
src/km3pipe/style/alba.py (no function) 2 0 0 100%
src/km3pipe/style/default.py (no function) 2 0 0 100%
src/km3pipe/style/johannes.py (no function) 2 2 0 0%
src/km3pipe/style/jonas_phd.py (no function) 2 0 0 100%
src/km3pipe/style/km3pipe.py (no function) 2 0 0 100%
src/km3pipe/style/km3pipe_notebook.py (no function) 2 0 0 100%
src/km3pipe/style/km3pipe_poster.py (no function) 2 0 0 100%
src/km3pipe/style/km3pipe_talk.py (no function) 2 0 0 100%
src/km3pipe/style/moritz.py (no function) 2 0 0 100%
src/km3pipe/sys.py ignored 4 0 0 100%
src/km3pipe/sys.py peak_memory_usage 8 3 0 62%
src/km3pipe/sys.py (no function) 17 2 0 88%
src/km3pipe/testing.py (no function) 19 0 0 100%
src/km3pipe/tests/__init__.py (no function) 0 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_init_with_wrong_file_extension 2 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_init_with_filename 2 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_init_with_det_id 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_init_with_detector 2 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_with_pmt_id_aka_mc_hits 12 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_with_pmt_id_aka_mc_hits_from_km3io 16 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_dus 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_floors 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_with_dom_id_and_channel_id 14 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_assert_apply_adds_dom_id_and_channel_id_to_mc_hits 5 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_assert_apply_adds_pmt_id_to_hits 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_with_pmt_id_with_wrong_calib_raises 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_with_dom_id_and_channel_id_with_wrong_calib_raises 4 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_from_km3io 8 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_hits_from_km3io_iterator 7 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_daq_triggered_hits 13 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_time_slewing_correction 10 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_to_timeslice_hits 6 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_apply_without_affecting_primary_hit_table 6 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_calibration_in_pipeline 11 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_calibration_in_pipeline.DummyPump.configure 1 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_calibration_in_pipeline.DummyPump.process 6 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibration.test_calibration_in_pipeline.Observer.process 12 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_apply_to_hits_with_dom_id_and_channel_id 8 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_apply_to_hits_with_dom_id_and_channel_id.HitCalibrator.process 13 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_apply_to_hits_with_dom_id_and_channel_id_without_slewing 8 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_apply_to_hits_with_dom_id_and_channel_id_without_slewing.HitCalibrator.process 13 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_correct_slewing 8 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_correct_slewing.HitCalibrator.process 6 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_provided_detector_data 6 0 0 100%
src/km3pipe/tests/test_calib.py TestCalibrationService.test_provided_detector_data.DetectorReader.process 3 0 0 100%
src/km3pipe/tests/test_calib.py TestSlew.test_slew 3 0 0 100%
src/km3pipe/tests/test_calib.py TestSlew.test_slew_vectorised 1 0 0 100%
src/km3pipe/tests/test_calib.py (no function) 56 0 0 100%
src/km3pipe/tests/test_cmd.py TestUpdateKm3pipe.test_update_without_args_updates_master 9 0 0 100%
src/km3pipe/tests/test_cmd.py TestUpdateKm3pipe.test_update_branch 4 0 0 100%
src/km3pipe/tests/test_cmd.py (no function) 14 0 0 100%
src/km3pipe/tests/test_controlhost.py TestTag.test_empty_tag_has_correct_length 2 0 0 100%
src/km3pipe/tests/test_controlhost.py TestTag.test_tag_has_correct_length 3 0 0 100%
src/km3pipe/tests/test_controlhost.py TestTag.test_tag_with_invalid_length_raises_valueerror 1 0 0 100%
src/km3pipe/tests/test_controlhost.py TestTag.test_tag_has_correct_data 4 0 0 100%
src/km3pipe/tests/test_controlhost.py TestTag.test_tag_has_correct_string_representation 2 0 0 100%
src/km3pipe/tests/test_controlhost.py TestPrefix.test_init 1 0 0 100%
src/km3pipe/tests/test_controlhost.py TestMessage.test_init 1 0 0 100%
src/km3pipe/tests/test_controlhost.py (no function) 20 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.setUp 1 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.test_is_structured 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.test_has_structured_dt 7 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.test_inflate_hasstructured 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.test_inflate_nostructured 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestDtypes.test_inflate_mixed_casts_up 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.setUp 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_h5loc 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_split 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_name 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_view 18 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init 20 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_fromdict 12 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_dict_without_dtype 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_dict_with_unordered_columns_wrt_to_dtype_fields 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_dict_with_fillna 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init_implicitly_from_dict_with_fillna 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_dict_doesnt_alter_original_dict 8 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_fromcolumns 23 2 0 91%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_columns_with_colnames 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_columns_with_colnames_upcasts 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_columns_with_mismatching_columns_and_dtypes_raises 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_rows_with_colnames 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_rows_with_colnames_upcasts 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_rows_dim 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_columns_dim 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_fromrows 22 2 0 91%
src/km3pipe/tests/test_dataclasses.py TestTable.test_expand_scalars 15 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_flat_dict 11 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_mixed_dict 11 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_2d 13 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_flat_raises 10 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init_with_unstructured_raises_valueerror 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_fromdict_init 12 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_from_record 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns 26 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append__single_column 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_with_single_value 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_with_multiple_values 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_modifies_dtype 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_column_which_is_too_short_raises 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_duplicate 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_with_mismatching_lengths_raises 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_append_columns_which_is_too_long 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_drop_column 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_drop_columns 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_template 16 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_incomplete_template 13 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_adhoc_template 7 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_adhoc_noname_template 7 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_element_list_with_dtype 12 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_sort 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init_directly_with_df 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_df 8 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_slicing 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_contains 7 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_index_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_index_of_attribute_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_mask_returns_copy 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_mask_on_attribute_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_index_mask_returns_copy 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_index_mask_of_attribute_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_slice_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_slice_of_attribute_returns_reference 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_slice_keeps_metadata 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_mask_keeps_metadata 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_indexing_keeps_metadata 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_crash_repr 8 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_array_finalize_with_obj_none 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_array_wrap 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_templates_avail 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_table_to_itself 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_two_tables 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_two_tables_with_different_lengths 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_two_tables_with_different_lengths_and_columns 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_adding_preserves_metadata 7 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_tables_with_same_colnames_but_different_dtype_order 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_add_table_with_different_cols 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_merge 8 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_merge_different_columns_with_no_nan_compatible_dtype 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_merge_different_columns_with_no_nan_compatible_dtype_even_if_fillna 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_merge_different_columns_fills_nan_when_fillna 17 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_merge_other_different_columns_fills_nan_when_fillna 11 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init_with_different_dicts_but_same_content 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_init_from_template_with_differently_ordered_dicts 8 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_reorder_dtypes 12 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_reorder_dtypes_with_differing_names_raises 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTable.test_reorder_dtypes_w_matching_names_but_different_types_raise 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.setUp 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_pos_getter 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_pos_getter_for_single_entry 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_dir_getter 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_dir_getter_for_single_entry 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_dir_setter 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_pos_setter 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_phi 3 3 0 0%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_phi 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_zen 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_azi 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_triggered_keeps_attrs 12 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestTableFancaAttributes.test_triggered_missing_col_raises 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestNDArray.test_init 2 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestNDArray.test_init_array 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestNDArray.test_attributes 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestNDArray.test_slicing_preserves_attribute 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_init 1 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_indices 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_attributes 4 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_mutability 3 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_vector_addition 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_vector_subtraction 6 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_scalar_addition 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_scalar_subtraction 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_multiplication 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_division 5 0 0 100%
src/km3pipe/tests/test_dataclasses.py TestVec3.test_linalg_norm 9 0 0 100%
src/km3pipe/tests/test_dataclasses.py (no function) 135 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.setUpClass 3 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.tearDownClass 1 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_datasets_names_and_lengths 3 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_reco_datasets_names_and_lengths 3 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_time_of_first_three_hits 2 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_time_of_last_three_hits 2 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_hits_group_ids 3 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_hits_dtype_names 3 0 0 100%
src/km3pipe/tests/test_h5extractf.py TestJsireneH5File.test_h5_file_can_be_opened_with_hdf5pump_and_keys_are_correct 4 0 0 100%
src/km3pipe/tests/test_h5extractf.py (no function) 19 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.setUp 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_parse_header_extracts_correct_det_id 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_parse_header_extracts_correct_n_doms 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_parse_doms_maps_each_dom_correctly 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_dom_ids 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_parse_reset_cache 14 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_parse_doms_maps_each_dom_correctly_for_mixed_pmt_ids 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_dom_positions 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_xy_positions 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_correct_number_of_pmts 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_attributes 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_index_by_omkey 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_index_by_pmt_id 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_with_id_returns_correct_omkeys 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_with_id_returns_correct_omkeys_with_mixed_pmt_ids 6 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_pmt_with_id_raises_exception_for_invalid_id 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_get_pmt 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_xy_pos 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_ascii 6 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_ascii_with_mixed_dom_ids 6 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_init_from_string 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_format_version_1 8 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_v1_is_the_same_ascii 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_format_version_2 15 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_v2_is_the_same_ascii 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_format_version_3 15 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detector_repr 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_format_version_3_with_whitespace 15 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_format_comments 8 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_comments_are_written 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_v3_is_the_same_ascii 3 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_v4 10 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetector.test_detx_v5 10 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.setUp 2 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_translate_detector 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_translate_detector_updates_xy_positions 5 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_translate_detector_updates_dom_positions 6 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_rotate_dom_by_yaw 11 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_rotate_dom_set_by_step_by_360_degrees 13 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_rotate_du_by_yaw_step_by_step_360_degrees 16 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_rescale_detector 6 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_dom_table 9 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_dom_table_with_another_detx 11 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_center_of_mass 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_center_of_mass_with_another_detx 4 0 0 100%
src/km3pipe/tests/test_hardware.py TestDetectorTransformations.test_jdetectordb_output_with_detx_v3 7 0 0 100%
src/km3pipe/tests/test_hardware.py (no function) 66 0 0 100%
src/km3pipe/tests/test_math.py TestMath.setUp 2 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_phi 9 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_zenith 8 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_azimuth 12 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_theta 16 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_unit_vector 6 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_magnitude 4 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_angle 10 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_angle_between 14 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_angle_between_returns_nan_for_zero_length_vectors 4 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_space_angle 6 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_hsin 2 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_pld3 24 0 0 100%
src/km3pipe/tests/test_math.py TestMath.test_com 6 0 0 100%
src/km3pipe/tests/test_math.py TestShapes.setUp 1 0 0 100%
src/km3pipe/tests/test_math.py TestShapes.test_poly_containment 7 0 0 100%
src/km3pipe/tests/test_math.py TestShapes.test_poly_xy 4 0 0 100%
src/km3pipe/tests/test_math.py TestShapes.test_prism_contained 4 0 0 100%
src/km3pipe/tests/test_math.py TestShapes.test_prism_contained_xyz 6 0 0 100%
src/km3pipe/tests/test_math.py TestRotation.test_rotmat 5 0 0 100%
src/km3pipe/tests/test_math.py TestRotation.test_cone 11 0 0 100%
src/km3pipe/tests/test_math.py TestSphereCut.test_spherecut_mask 5 0 0 100%
src/km3pipe/tests/test_math.py TestSphereCut.test_with_table 7 0 0 100%
src/km3pipe/tests/test_math.py TestSphereCut.test_with_array 9 0 0 100%
src/km3pipe/tests/test_math.py TestSphereCut.test_center 7 0 0 100%
src/km3pipe/tests/test_math.py TestSphereCut.test_rmin 8 0 0 100%
src/km3pipe/tests/test_math.py TestLog.test_val 3 0 0 100%
src/km3pipe/tests/test_math.py TestQeuler.test_conversion_of_yaw 5 0 0 100%
src/km3pipe/tests/test_math.py TestQeuler.test_conversion_of_pitch 5 0 0 100%
src/km3pipe/tests/test_math.py TestQeuler.test_conversion_of_roll 5 0 0 100%
src/km3pipe/tests/test_math.py TestQeuler.test_mixed_conversion 3 0 0 100%
src/km3pipe/tests/test_math.py TestQrot.test_rotation_of_x_vector 4 0 0 100%
src/km3pipe/tests/test_math.py TestQrot.test_rotation_of_y_vector 4 0 0 100%
src/km3pipe/tests/test_math.py TestQrot.test_rotation_of_z_vector 4 0 0 100%
src/km3pipe/tests/test_math.py TestQrot.test_mixed_rotation 4 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_call_with_list 1 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_no_rotation 3 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_a_rotation_of_90 3 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_a_rotation_of_180 3 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_a_full_rotation 3 0 0 100%
src/km3pipe/tests/test_math.py TestQrotYaw.test_a_rotation_of_45 3 0 0 100%
src/km3pipe/tests/test_math.py TestIntersect3D.test_intersection_at_zero 4 0 0 100%
src/km3pipe/tests/test_math.py TestIntersect3D.test_intersection_of_multiple_lines_with_same_endpoints 4 0 0 100%
src/km3pipe/tests/test_math.py TestIntersect3D.test_intersection_of_multiple_lines_with_target 5 0 0 100%
src/km3pipe/tests/test_math.py TestIntersect3D.test_another_intersection 4 0 0 100%
src/km3pipe/tests/test_math.py TestDist.test_dist_between_two_2D_points 3 0 0 100%
src/km3pipe/tests/test_math.py TestDist.test_dist_between_two_3D_points 4 0 0 100%
src/km3pipe/tests/test_math.py TestDist.test_dist_to_many_points 1 0 0 100%
src/km3pipe/tests/test_math.py (no function) 71 0 0 100%
src/km3pipe/tests/test_mc.py TestMc.test_geant2pdg 2 0 0 100%
src/km3pipe/tests/test_mc.py TestMc.test_geant2pdg_returns_0_for_unknown_particle_id 1 0 0 100%
src/km3pipe/tests/test_mc.py TestMc.test_pdg2name 2 0 0 100%
src/km3pipe/tests/test_mc.py TestMc.test_pdg2name_returns_NA_for_unknown_particle 1 0 0 100%
src/km3pipe/tests/test_mc.py TestMCConvert.setUp 4 0 0 100%
src/km3pipe/tests/test_mc.py TestMCConvert.test_convert_mc_times_to_jte_times 7 0 0 100%
src/km3pipe/tests/test_mc.py (no function) 19 0 0 100%
src/km3pipe/tests/test_physics.py TestGetCherenkov.setUp 2 0 0 100%
src/km3pipe/tests/test_physics.py TestGetCherenkov.test_cherenkov_from_dict 17 0 0 100%
src/km3pipe/tests/test_physics.py TestGetCherenkov.test_cherenkov_from_Table 9 0 0 100%
src/km3pipe/tests/test_physics.py TestGetCherenkov.test_cherenkov_from_DataFrame 10 0 0 100%
src/km3pipe/tests/test_physics.py TestGetCherenkov.test_cherenkov_from_best_track_which_returns_awkward_Record 11 0 0 100%
src/km3pipe/tests/test_physics.py TestGetClosest.setUp 4 0 0 100%
src/km3pipe/tests/test_physics.py TestGetClosest.test_get_closest 5 0 0 100%
src/km3pipe/tests/test_physics.py TestGetClosest.test_get_closest_from_DataFrame 4 0 0 100%
src/km3pipe/tests/test_physics.py TestGetClosest.test_get_closest_from_Table 6 0 0 100%
src/km3pipe/tests/test_physics.py TestCut4D.test_cut4d 11 0 0 100%
src/km3pipe/tests/test_physics.py (no function) 29 0 0 100%
src/km3pipe/tests/test_plot.py TestMeshStuff.test_meshgrid 3 0 0 100%
src/km3pipe/tests/test_plot.py TestMeshStuff.test_meshgrid_with_y_specs 3 0 0 100%
src/km3pipe/tests/test_plot.py (no function) 13 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_add 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_str 4 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_clear 4 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_add_two_argument_command 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_add_two_argument_command_multiple_times 5 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_cp 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_mv 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_echo 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_separator 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_mkdir 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_iget 3 0 0 100%
src/km3pipe/tests/test_shell.py TestScript.test_combining_scripts 7 0 0 100%
src/km3pipe/tests/test_shell.py (no function) 22 0 0 100%
src/km3pipe/tests/test_style.py TestStyle.test_get_style_path 4 0 0 100%
src/km3pipe/tests/test_style.py TestColourCycler.test_available 3 0 0 100%
src/km3pipe/tests/test_style.py TestColourCycler.test_next 4 0 0 100%
src/km3pipe/tests/test_style.py TestColourCycler.test_next_a_few_times 6 0 0 100%
src/km3pipe/tests/test_style.py TestColourCycler.test_raise_keyerror_if_style_not_available 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_non_existent_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_km3pipe 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_noargs_load_km3pipe_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_poster_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_notebook_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_talk_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_alba_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_jonas_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_jvs_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_moritz_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_serifs_style 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_alba 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_moritz 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_default 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_jonas_phd 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_km3pipe 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_km3pipe_notebook 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_km3pipe_poster 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles.test_import_km3pipe_talk 2 0 0 100%
src/km3pipe/tests/test_style.py TestStyles._assert_plt_imported 2 0 0 100%
src/km3pipe/tests/test_style.py (no function) 56 0 0 100%
src/km3pipe/tests/test_time.py TestTools.test_total_seconds 5 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_reset_timestamp 4 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_set_interval_on_init 2 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_set_callback 3 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_calls_callback 5 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_calls_callback_with_empty_args 4 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_calls_callback_with_multiple_args 4 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_calls_callback_with_multiple_kwargs 4 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_calls_callback_with_mixed_args_and_kwargs 4 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_direct_call_calls_callback 5 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_is_not_called_when_interval_not_reached 6 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_is_only_called_when_interval_reached 9 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_sets_timestamp_on_first_call 3 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_gets_called_on_the_very_first_time 5 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_msg_resets_timestamp_after_interval_reached 13 0 0 100%
src/km3pipe/tests/test_time.py TestCuckoo.test_interval_reached 5 0 0 100%
src/km3pipe/tests/test_time.py TestTimer.test_context_manager 4 0 0 100%
src/km3pipe/tests/test_time.py TestTimer.test_context_manager_calls_with_standard_text 4 0 0 100%
src/km3pipe/tests/test_time.py (no function) 32 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.setUp 4 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_unpack_nfirst 6 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_unpack_nfirst_callback 6 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_split_splits_strings 3 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_split_splits_strings_with_separator 3 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_split_callback_converts_correctly 6 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_namedtuple_with_defaults_initialises_with_none 5 0 0 100%
src/km3pipe/tests/test_tools.py TestTools.test_namedtuple_with_defaults_initialises_with_given_values 5 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_in_function 7 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_in_function.seek_into_file 1 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_and_return_value_in_function 8 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_and_return_value_in_function.seek_into_file 2 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_in_class_method 9 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_in_class_method.FileSeekerClass.__init__ 1 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_in_class_method.FileSeekerClass.seek_into_file 1 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_and_return_value_in_class_method 10 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_and_return_value_in_class_method.FileSeekerClass.__init__ 1 0 0 100%
src/km3pipe/tests/test_tools.py TestRemainFilePointer.test_remains_file_pointer_and_return_value_in_class_method.FileSeekerClass.seek_into_file 2 0 0 100%
src/km3pipe/tests/test_tools.py TestCamelCaseConverter.test_decamelise 8 0 0 100%
src/km3pipe/tests/test_tools.py TestCamelCaseConverter.test_camelise 4 0 0 100%
src/km3pipe/tests/test_tools.py TestMisc.test_issorted 2 0 0 100%
src/km3pipe/tests/test_tools.py TestMisc.test_is_coherent 2 0 0 100%
src/km3pipe/tests/test_tools.py TestLstrip.test_lstrip 2 0 0 100%
src/km3pipe/tests/test_tools.py TestLstrip.test_lstrip_on_single_line 2 0 0 100%
src/km3pipe/tests/test_tools.py TestChunks.test_chunks 3 0 0 100%
src/km3pipe/tests/test_tools.py TestIstype.test_a_type 2 0 0 100%
src/km3pipe/tests/test_tools.py TestIstype.test_another_type 4 1 0 75%
src/km3pipe/tests/test_tools.py TestJppRevision.test_version 2 2 0 0%
src/km3pipe/tests/test_tools.py TestJppRevision.test_version 1 0 0 100%
src/km3pipe/tests/test_tools.py (no function) 43 0 0 100%
src/km3pipe/time.py total_seconds 1 0 0 100%
src/km3pipe/time.py Timer.__init__ 3 0 0 100%
src/km3pipe/time.py Timer.__enter__ 1 0 0 100%
src/km3pipe/time.py Timer.__exit__ 1 0 0 100%
src/km3pipe/time.py Timer.start 2 0 0 100%
src/km3pipe/time.py Timer.stop 5 0 0 100%
src/km3pipe/time.py Timer.seconds 1 0 0 100%
src/km3pipe/time.py Timer.cpu_seconds 1 0 0 100%
src/km3pipe/time.py Timer.log 1 0 0 100%
src/km3pipe/time.py Cuckoo.__init__ 3 0 0 100%
src/km3pipe/time.py Cuckoo.msg 3 0 0 100%
src/km3pipe/time.py Cuckoo.reset 1 0 0 100%
src/km3pipe/time.py Cuckoo._interval_reached 1 0 0 100%
src/km3pipe/time.py Cuckoo.__call__ 1 0 0 100%
src/km3pipe/time.py tai_timestamp 10 10 0 0%
src/km3pipe/time.py np_to_datetime 3 3 0 0%
src/km3pipe/time.py (no function) 32 0 0 100%
src/km3pipe/tools.py ifiles 22 22 0 0%
src/km3pipe/tools.py iexists 5 5 0 0%
src/km3pipe/tools.py isize 5 5 0 0%
src/km3pipe/tools.py xrdsize 6 6 0 0%
src/km3pipe/tools.py xrootd_path 3 3 0 0%
src/km3pipe/tools.py token_urlsafe 2 2 0 0%
src/km3pipe/tools.py prettyln 2 0 0 100%
src/km3pipe/tools.py irods_path 2 2 0 0%
src/km3pipe/tools.py unpack_nfirst 6 0 0 100%
src/km3pipe/tools.py split 3 0 0 100%
src/km3pipe/tools.py namedtuple_with_defaults 7 1 0 86%
src/km3pipe/tools.py remain_file_pointer 2 0 0 100%
src/km3pipe/tools.py remain_file_pointer.wrapper 5 0 0 100%
src/km3pipe/tools.py itervalues 1 1 0 0%
src/km3pipe/tools.py iteritems 1 1 0 0%
src/km3pipe/tools.py decamelise 2 0 0 100%
src/km3pipe/tools.py camelise 5 1 0 80%
src/km3pipe/tools.py camelise.camelcase 3 0 0 100%
src/km3pipe/tools.py colored 16 16 0 0%
src/km3pipe/tools.py cprint 1 1 0 0%
src/km3pipe/tools.py issorted 1 0 0 100%
src/km3pipe/tools.py lstrip 1 0 0 100%
src/km3pipe/tools.py chunks 2 0 0 100%
src/km3pipe/tools.py is_coherent 1 0 0 100%
src/km3pipe/tools.py zero_pad 1 1 0 0%
src/km3pipe/tools.py istype 1 0 0 100%
src/km3pipe/tools.py isnotebook 9 5 0 44%
src/km3pipe/tools.py supports_color 7 2 0 71%
src/km3pipe/tools.py get_jpp_version 12 7 0 42%
src/km3pipe/tools.py timed_cache 2 0 0 100%
src/km3pipe/tools.py timed_cache._wrapper 12 3 0 75%
src/km3pipe/tools.py timed_cache._wrapper._wrapped 8 8 0 0%
src/km3pipe/tools.py sendmail 4 4 0 0%
src/km3pipe/tools.py (no function) 61 0 0 100%
src/km3pipe/version.py (no function) 11 11 0 0%
Total   10315 1965 6 81%

No items found using the specified filter.