def test_2004(): from eventio.simtel.objects import PixelSettings with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, PixelSettings, n=3)): assert o.telescope_id == i + 1 pixelset = parse_and_assert_consumption(o, limit=1) assert pixelset['n_pixels'] == 1855 with EventIOFile('tests/resources/prod4_pixelsettings_v3.gz') as f: for o in yield_n_and_assert(f, PixelSettings, n=1): assert o.header.version == 3 pixel_settings = o.parse() assert 'sum_offset' in pixel_settings
def test_72_3_objects(): from eventio.simtel.objects import HistoryConfig with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, HistoryConfig, n=3)): t, s = parse_and_assert_consumption(o, limit=3) assert isinstance(s, bytes)
def test_2006_3_objects(): from eventio.simtel.objects import CameraSoftwareSettings with EventIOFile(prod2_file) as f: for i, o in enumerate( yield_n_and_assert(f, CameraSoftwareSettings, n=3)): d = parse_and_assert_consumption(o, limit=0) assert d['telescope_id'] == i + 1 assert d['dyn_trig_mode'] == 0 assert d['dyn_trig_threshold'] == 0 assert d['dyn_HV_mode'] == 0 assert d['dyn_HV_threshold'] == 0 assert d['data_red_mode'] == 0 assert d['zero_sup_mode'] == 0 assert d['zero_sup_n_thr'] == 0 assert len(d['zero_sup_thresholds']) == 0 assert d['unbiased_scale'] == 0 assert d['dyn_ped_mode'] == 0 assert d['dyn_ped_events'] == 0 assert d['dyn_ped_period'] == 0 assert d['monitor_cur_period'] == 0 assert d['report_cur_period'] == 0 assert d['monitor_HV_period'] == 0 assert d['report_HV_period'] == 0
def test_reprs_prod4_corsika(): importorskip('zstandard') from eventio import EventIOFile with EventIOFile(prod4b_corsika) as f: for i, obj in enumerate(yield_all_objects_depth_first(f)): repr(obj)
def test_2026_3_objects(): from eventio.simtel.objects import MCPhotoelectronSum with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, MCPhotoelectronSum, n=3)): d = parse_and_assert_consumption(o, limit=0) assert d['event'] // 100 == d['shower_num']
def test_2004_3_objects(): from eventio.simtel.objects import PixelSettings with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, PixelSettings, n=3)): assert o.telescope_id == i + 1 pixelset = parse_and_assert_consumption(o, limit=1) assert pixelset['n_pixels'] == 1855
def test_2100_3_objects(): from eventio.simtel.objects import TrackingPosition with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, TrackingPosition, n=3)): pointing = parse_and_assert_consumption(o, limit=0) assert 'azimuth_raw' in pointing assert 'altitude_raw' in pointing
def test_2009_3_objects(): from eventio.simtel.objects import TriggerInformation with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, TriggerInformation, n=3)): data = parse_and_assert_consumption(o, limit=2) assert 'cpu_time' in data assert 'gps_time' in data assert 'teltrg_time_by_type' in data
def test_2028(): from eventio.simtel.objects import CalibrationEvent, ArrayEvent with EventIOFile(calib_path) as f: n_events = 0 for event in yield_toplevel_of_type(f, CalibrationEvent): assert isinstance(next(event), ArrayEvent) n_events += 1 assert n_events > 0
def test_2000_1_object(): from eventio.simtel.objects import RunHeader with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, RunHeader, n=1)): d = parse_and_assert_consumption(o, limit=2) assert d['observer'] == b'*****@*****.**' assert d['target'] == b'Monte Carlo beach'
def test_reprs_prod2(): # for scripts/print_structure.py the reprs must work # therefore this test is here # gamma_test is truncated, so this should raise with pytest.raises(EOFError): with EventIOFile(prod2_path) as file_: for obj in yield_all_objects_depth_first(file_): assert repr(obj)
def test_multiple(): with EventIOFile(prod4b_sst1m_file) as f: o = next(f) check_type(o, (History, ArrayEvent)) with pytest.raises(WrongType): check_type(o, (TelescopeEvent, ArrayEvent))
def test_2021_3_objects(): from eventio.simtel.objects import MCEvent with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, MCEvent, n=3)): d = parse_and_assert_consumption(o, limit=0) assert d['shower_num'] == o.header.id // 100 '''
def test_2002_v5_3_objects(): from eventio.simtel.objects import CameraSettings with EventIOFile(prod4b_astri_file) as f: for i, o in enumerate(yield_n_and_assert(f, CameraSettings, n=3)): cam_data = parse_and_assert_consumption(o, limit=0) assert o.header.version == 5 assert cam_data['n_pixels'] == 2368 # astri assert 'effective_focal_length' in cam_data
def test_find_all_subobjects(): from eventio import EventIOFile from eventio.search_utils import find_all_subobjects from eventio.simtel import ArrayEvent, TelescopeEvent, ADCSamples with EventIOFile(test_file) as f: adcsamps = find_all_subobjects( f, [ArrayEvent, TelescopeEvent, ADCSamples]) assert len(adcsamps) == 50
def test_single(): with EventIOFile(prod4b_sst1m_file) as f: o = next(f) check_type(o, History) with pytest.raises(WrongType): check_type(o, ArrayEvent)
def test_photo_electrons(): from eventio import EventIOFile from eventio.iact import PhotoElectrons from eventio.search_utils import yield_n_subobjects with EventIOFile(prod4_simtel) as f: for o in yield_n_subobjects(f, PhotoElectrons): o.parse() not_read = o.read() assert len(not_read) == 0 or all(b == 0 for b in not_read)
def test_2032(): from eventio.simtel.objects import PixelTriggerTimes with EventIOFile(prod4b_astri_file) as f: for i, o in enumerate(yield_n_and_assert(f, PixelTriggerTimes, n=3)): d = parse_and_assert_consumption(o, limit=2) print(d) assert 'n_times' in d assert 'pixel_ids' in d assert 'trigger_times' in d
def test_2027_3_objects(): from eventio.simtel.objects import PixelList with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, PixelList, n=3)): d = parse_and_assert_consumption(o, limit=2) assert d # does this look reasonable? '''
def test_2023_3_objects(): from eventio.simtel.objects import LaserCalibration with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, LaserCalibration, n=3)): d = parse_and_assert_consumption(o, limit=0) assert d['telescope_id'] == i + 1 assert d['lascal_id'] == 2 '''
def test_70_3_objects(): from eventio.simtel.objects import History with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, History, n=3)): # make sure a History can be iterated and is never empty body_reached = False for x in o: body_reached = True assert body_reached
def test_2015_3_objects(): from eventio.simtel.objects import StereoReconstruction with EventIOFile(prod4b_sst1m_file) as f: for obj in yield_n_and_assert(f, StereoReconstruction, n=3): parse_and_assert_consumption(obj, limit=2) # print(d) # Does this look reasonable?? '''
def test_2010(): from eventio.simtel.objects import TriggerInformation # class under test from eventio.simtel.objects import ArrayEvent with EventIOFile(prod2_file) as f: n_events = 0 for event in yield_toplevel_of_type(f, ArrayEvent): assert isinstance(next(event), TriggerInformation) n_events += 1 assert n_events > 0
def test_2007_3_objects(): from eventio.simtel.objects import PointingCorrection with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, PointingCorrection, n=3)): d = parse_and_assert_consumption(o, limit=0) assert d['telescope_id'] == i + 1 assert d['function_type'] == 0 assert d['n_param'] == 0 assert len(d['pointing_param']) == 0
def test_2009(): from eventio.simtel.objects import TriggerInformation with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, TriggerInformation, n=3)): data = parse_and_assert_consumption(o, limit=2) assert 'cpu_time' in data assert 'gps_time' in data assert 'teltrg_time_by_type' in data with EventIOFile('tests/resources/prod4_pixelsettings_v3.gz') as f: for o in yield_n_and_assert(f, TriggerInformation, n=10): assert o.header.version == 3 data = parse_and_assert_consumption(o, limit=3) assert 'plane_wavefront_compensation' in data comp = data['plane_wavefront_compensation'] assert comp['az'] == 0 assert comp['alt'] == np.float32(np.pi / 2) assert comp['speed_of_light'] == approx(29.97, abs=0.01)
def test_2011_3_objects(): from eventio.simtel.objects import TelescopeEventHeader with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, TelescopeEventHeader, n=3)): parse_and_assert_consumption(o, limit=2) # print(d) # a few printed examples: only version 1!! '''
def test_2013_3_objects(): from eventio.simtel.objects import ADCSamples with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, ADCSamples, n=3)): d = parse_and_assert_consumption(o, limit=3) if i == 0: assert o.telescope_id == 38 assert d.shape == expected_adc_samples_event1_tel_id_38.shape assert (d == expected_adc_samples_event1_tel_id_38).all()
def test_2005_3_objects(): from eventio.simtel.objects import DisabledPixels with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, DisabledPixels, n=3)): pixel_disable = parse_and_assert_consumption(o, limit=0) assert pixel_disable['telescope_id'] == i + 1 assert pixel_disable['n_trig_disabled'] == 0 assert pixel_disable['n_HV_disabled'] == 0 assert len(pixel_disable['trigger_disabled']) == 0 assert len(pixel_disable['HV_disabled']) == 0
def test_2008_3_objects(): from eventio.simtel.objects import DriveSettings with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, DriveSettings, n=3)): assert o.telescope_id == i + 1 tracking_info = parse_and_assert_consumption(o, limit=0) assert tracking_info['range_low_az'] == 0.0 assert tracking_info['range_low_alt'] == 0.0 assert tracking_info['range_high_az'] == approx(2 * np.pi) assert tracking_info['range_high_alt'] == approx(2 * np.pi)
def test_2022_3_objects(): from eventio.simtel.objects import CameraMonitoring with EventIOFile(prod2_file) as f: for i, o in enumerate(yield_n_and_assert(f, CameraMonitoring, n=3)): d = parse_and_assert_consumption(o, limit=1) assert d['telescope_id'] == i + 1 # print(d) # Looks reasonable '''