Esempio n. 1
0
 def test_time_zone_in_extended_data_to_data_element_to_data_item_conversion(
         self):
     # test the whole path, redundant?
     data = numpy.ones((8, 6), numpy.int)
     metadata = {
         "description": {
             "time_zone": {
                 "tz": "+0300",
                 "dst": "+60"
             }
         },
         "hardware_source": {
             "one": 1,
             "two": "b"
         }
     }
     timestamp = datetime.datetime(2013, 11, 18, 14, 5, 4, 1)
     xdata = DataAndMetadata.new_data_and_metadata(data,
                                                   metadata=metadata,
                                                   timestamp=timestamp)
     data_element = ImportExportManager.create_data_element_from_extended_data(
         xdata)
     data_item = ImportExportManager.create_data_item_from_data_element(
         data_element)
     self.assertEqual(data_item.metadata["description"]["time_zone"]["tz"],
                      "+0300")
     self.assertEqual(data_item.metadata["description"]["time_zone"]["dst"],
                      "+60")
     self.assertEqual("2013-11-18 14:05:04.000001", str(data_item.created))
 def test_extended_data_to_data_element_includes_time_zone(self):
     # extended data timestamp is utc; timezone is specified in metadata/description/time_zone
     data = numpy.ones((8, 6), int)
     metadata = {"description": {"time_zone": {"tz": "+0300", "dst": "+60"}}}
     timestamp = datetime.datetime(2013, 11, 18, 14, 5, 4, 0)
     xdata = DataAndMetadata.new_data_and_metadata(data, metadata=metadata, timestamp=timestamp)
     data_element = ImportExportManager.create_data_element_from_extended_data(xdata)
     self.assertEqual(data_element["datetime_modified"], {"dst": "+60", "local_datetime": "2013-11-18T17:05:04", 'tz': "+0300"})
 def test_data_element_to_extended_data_conversion(self):
     data = numpy.ones((8, 6), int)
     intensity_calibration = Calibration.Calibration(offset=1, scale=1.1, units="one")
     dimensional_calibrations = [Calibration.Calibration(offset=2, scale=2.1, units="two"), Calibration.Calibration(offset=3, scale=2.2, units="two")]
     metadata = {"hardware_source": {"one": 1, "two": "b"}}
     timestamp = datetime.datetime.now()
     data_descriptor = DataAndMetadata.DataDescriptor(is_sequence=False, collection_dimension_count=1, datum_dimension_count=1)
     xdata = DataAndMetadata.new_data_and_metadata(data, intensity_calibration=intensity_calibration, dimensional_calibrations=dimensional_calibrations, metadata=metadata, timestamp=timestamp, data_descriptor=data_descriptor)
     data_element = ImportExportManager.create_data_element_from_extended_data(xdata)
     new_xdata = ImportExportManager.convert_data_element_to_data_and_metadata(data_element)
     self.assertTrue(numpy.array_equal(data, new_xdata.data))
     self.assertNotEqual(id(new_xdata.intensity_calibration), id(intensity_calibration))
     self.assertEqual(new_xdata.intensity_calibration, intensity_calibration)
     self.assertNotEqual(id(new_xdata.dimensional_calibrations[0]), id(dimensional_calibrations[0]))
     self.assertEqual(new_xdata.dimensional_calibrations, dimensional_calibrations)
     self.assertNotEqual(id(new_xdata.metadata), id(metadata))
     self.assertEqual(new_xdata.metadata, metadata)
     self.assertNotEqual(id(new_xdata.data_descriptor), id(data_descriptor))
     self.assertEqual(new_xdata.data_descriptor, data_descriptor)