64 def test_get_global_tag(self):
66 global_tag = self.connection.global_tag(name=self.global_tag_name)
67 self.assertTrue(global_tag.name !=
None)
68 self.assertTrue(global_tag.tags() !=
None)
69 self.assertTrue(isinstance(global_tag, self.connection.models[
"globaltag"]))
71 def test_get_empty_global_tag(self):
72 empty_gt = self.connection.global_tag()
73 self.assertTrue(isinstance(empty_gt, self.connection.models[
"globaltag"]))
74 self.assertTrue(empty_gt.empty)
76 def test_all_global_tags_empty_gt(self):
77 empty_gt = self.connection.global_tag()
78 all_gts = empty_gt.all(amount=10)
79 self.assertTrue(all_gts !=
None)
80 self.assertTrue(len(all_gts.data()) != 0)
82 def test_all_method_parameters(self):
83 if self.connection.connection_data[
"host"].lower() ==
"frontier":
84 print(
"Cannot query for timestamps on frontier connection.")
86 empty_gt = self.connection.global_tag()
87 sample_time = datetime.datetime(year=2016, month=1, day=1)
88 now = datetime.datetime.now()
89 time_range =
Range(sample_time, now)
90 time_radius = Radius(sample_time, datetime.timedelta(weeks=4))
91 all_gts_in_interval = empty_gt.all(insertion_time=time_range).
data()
92 for gt
in all_gts_in_interval:
93 self.assertTrue(sample_time <= gt.insertion_time <= now)
95 def test_as_dicts_method_without_timestamps_conversion(self):
96 global_tag = self.connection.global_tag(name=self.global_tag_name)
97 dict_form = global_tag.as_dicts(convert_timestamps=
False)
98 self.assertTrue(isinstance(dict_form, dict))
99 self.assertTrue(dict_form[
"insertion_time"], datetime.datetime)
100 self.assertTrue(dict_form[
"snapshot_time"], datetime.datetime)
102 def test_as_dicts_method_with_timestamps_conversion(self):
103 global_tag = self.connection.global_tag(name=self.global_tag_name)
104 dict_form = global_tag.as_dicts(convert_timestamps=
True)
105 self.assertTrue(isinstance(dict_form, dict))
106 self.assertTrue(dict_form[
"insertion_time"], str)
107 self.assertTrue(dict_form[
"snapshot_time"], str)
111 self.assertTrue(
to_datetime(dict_form[
"insertion_time"]) == global_tag.insertion_time)
112 self.assertTrue(
to_datetime(dict_form[
"snapshot_time"]) == global_tag.snapshot_time)
114 def test_get_tag_maps_in_global_tag(self):
115 global_tag = self.connection.global_tag(name=self.global_tag_name)
118 global_tag_maps = global_tag.tags()
120 global_tag_maps_list = global_tag_maps.data()
121 self.assertTrue(isinstance(global_tag_maps_list, list))
122 self.assertTrue(len(global_tag_maps_list) != 0)
124 for gt_map
in global_tag_maps_list:
125 self.assertTrue(isinstance(gt_map, self.connection.models[
"globaltagmap"]))
127 def test_get_tag_maps_in_global_tag_with_parameters(self):
128 global_tag = self.connection.global_tag(name=self.global_tag_name)
130 global_tag_maps_specific_record = global_tag.tags(record=
"AlCaRecoTriggerBitsRcd")
134 gt_maps_spec_record_list = global_tag_maps_specific_record.data()
135 self.assertTrue(isinstance(gt_maps_spec_record_list, list))
138 self.assertTrue(len(gt_maps_spec_record_list) == 3)
140 def test_get_all_iovs_within_range(self):
141 global_tag = self.connection.global_tag(name=self.global_tag_name)
143 since_range = self.connection.range(200000, 300000)
144 iovs = global_tag.iovs(since=since_range)
146 iovs_list = iovs.data()
147 self.assertTrue(isinstance(iovs_list, list))
149 for iov
in iovs_list:
150 self.assertTrue(isinstance(iov, self.connection.models[
"iov"]))
151 self.assertTrue(200000 <= iov.since <= 300000)
153 def test_gt_diff(self):
154 gt1 = self.connection.global_tag(name=
"74X_dataRun1_v1")
155 gt2 = self.connection.global_tag(name=
"74X_dataRun1_v3")
156 difference_by_arithmetic = gt1 - gt2
157 difference_by_method = gt1.diff(gt2)
163 difference_arithmetic_list = difference_by_arithmetic.data()
164 difference_method_list = difference_by_method.data()
165 self.assertTrue(isinstance(difference_arithmetic_list, list))
166 self.assertTrue(isinstance(difference_method_list, list))
168 self.assertTrue(len(difference_arithmetic_list) == len(difference_method_list))
170 for n
in range(len(difference_arithmetic_list)):
171 self.assertTrue(difference_arithmetic_list[n][
"%s Tag" % gt1.name] != difference_arithmetic_list[n][
"%s Tag" % gt2.name])
172 self.assertTrue(difference_method_list[n][
"%s Tag" % gt1.name] != difference_method_list[n][
"%s Tag" % gt2.name])