예제 #1
0
    def test_add_data(self):
        some_array = DataArray('some_array', 'label', shape=(5, 5))
        data_set = DataSet(data_arrays=some_array)

        data_set.add_data((4, 4), {'some_array': 42})
        self.assertEqual(42, some_array[4][4])

        data_set.add_data(3, {'some_array': [1, 2, 3, 4, 5]})
        self.assertListEqual([1, 2, 3, 4, 5], list(some_array[3]))
예제 #2
0
    def test_add_data_higher_dimensions(self):
        some_array = DataArray('some_array', 'label', shape=(5, 5, 5, 5))
        data_set = DataSet(data_arrays=some_array)

        data_set.add_data((3, 3, 3, 3), {'some_array': 0.42})
        self.assertEqual(0.42, some_array[3][3][3][3])

        double_array = [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5],
                        [1, 2, 3, 4, 5], [1, 2, 3, 4, 5]]
        data_set.add_data((2, 2), {'some_array': double_array})
        self.assertTrue(np.array_equal(double_array, some_array[2][2]))
        self.assertFalse(np.array_equal(double_array, some_array[2][1]))
예제 #3
0
    def test_integrate_with_data_set_io_add_data(self):
        io_reader, io_writer = MemoryDataSetIOFactory.get_reader_writer_pair()
        data_set_consumer = DataSet(storage_reader=io_reader)
        some_array = DataArray('some_array', 'label', shape=(5, 5))
        data_set_producer = DataSet(storage_writer=io_writer,
                                    data_arrays=some_array)
        data_set_producer.add_data((0, 0), {'some_array': 42})
        data_set_producer.add_data((1, 1), {'some_array': 25})

        data_set_consumer.sync_from_storage(-1)
        self.assertTrue(hasattr(data_set_consumer, 'some_array'))
        self.assertIsNot(some_array, data_set_consumer.some_array)
        self.assertEqual(42, data_set_consumer.some_array[0][0])
        self.assertEqual(25, data_set_consumer.some_array[1][1])
예제 #4
0
    def test_add_data_set_arrays(self):
        x_points = np.array(range(0, 2))
        y_points = np.array(range(0, 2))
        x = DataArray(name="x",
                      label="x-axis",
                      unit="mV",
                      is_setpoint=True,
                      preset_data=x_points)
        y = DataArray(name="y",
                      label="y-axis",
                      unit="mV",
                      is_setpoint=True,
                      preset_data=np.tile(np.array(y_points), [x.size, 1]))
        z = DataArray(name="z",
                      label="z-axis",
                      unit="ma",
                      set_arrays=(x, y),
                      preset_data=np.NaN * np.ones(
                          (x_points.size, y_points.size)))
        data_set = DataSet(data_arrays=z)
        data_set.add_data((1, 0), {'y': 23})

        self.assertEqual(data_set.y[(1, 0)], 23)