Ejemplo n.º 1
0
 def test_zero_ndim_lazy_to_scalar_1d_real_promote(self):
     real_array = np.array([456])
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 2
0
 def test_real_with_real(self):
     dm = DataManager(self.real_array)
     data = self.real_array.copy() * 10
     result = dm._deepcopy(self.memo, data=data)
     expected = DataManager(data)
     self.assertEqual(result, expected)
     self.assertIs(result._real_array, data)
Ejemplo n.º 3
0
 def test_real_with_real(self):
     dm = DataManager(self.real_array * 10)
     self.assertFalse(dm.has_lazy_data())
     dm.replace(self.real_array)
     self.assertFalse(dm.has_lazy_data())
     self.assertIs(dm._real_array, self.real_array)
     self.assertIs(dm.data, self.real_array)
Ejemplo n.º 4
0
 def test_zero_ndim_lazy_to_scalar_1d_lazy_promote(self):
     lazy_array = as_lazy_data(np.array([456]))
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = lazy_array
     self.assertTrue(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, lazy_array.compute())
Ejemplo n.º 5
0
 def test_fill_value_overflow(self):
     fill_value = np.float(1e+20)
     data = np.array([0], dtype=np.int32)
     dm = DataManager(data)
     emsg = 'Fill value of .* invalid for dtype'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.fill_value = fill_value
Ejemplo n.º 6
0
 def test_zero_ndim_lazy_to_scalar_1d_lazy_promote(self):
     lazy_array = as_lazy_data(np.array([456]))
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = lazy_array
     self.assertTrue(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, lazy_array.compute())
Ejemplo n.º 7
0
 def test_lazy_with_lazy__fill_value_failure(self):
     fill_value = 1234
     dm1 = DataManager(as_lazy_data(self.real_array),
                       fill_value=fill_value)
     dm2 = DataManager(as_lazy_data(self.real_array),
                       fill_value=fill_value)
     self.assertFalse(dm1 != dm2)
Ejemplo n.º 8
0
 def test_lazy_with_lazy__realised_dtype(self):
     dtype = np.dtype('int16')
     dm1 = DataManager(as_lazy_data(self.real_array),
                       realised_dtype=dtype)
     dm2 = DataManager(as_lazy_data(self.real_array),
                       realised_dtype=dtype)
     self.assertEqual(dm1, dm2)
Ejemplo n.º 9
0
 def test_shape_scalar(self):
     real_array = np.array(0)
     dm = DataManager(real_array)
     self.assertEqual(dm.shape, ())
     lazy_array = as_lazy_data(real_array)
     dm = DataManager(lazy_array)
     self.assertEqual(dm.shape, ())
Ejemplo n.º 10
0
 def test_with_real_array(self):
     dm = DataManager(self.real_array)
     self.assertFalse(dm.has_lazy_data())
     result = dm.lazy_data()
     self.assertFalse(dm.has_lazy_data())
     self.assertEqual(result, self.lazy_array)
     self.assertFalse(dm.has_lazy_data())
Ejemplo n.º 11
0
 def test_nop__with_real_array(self):
     fill_value = 1234
     dm = DataManager(self.real_array)
     dm.fill_value = 1234
     self.assertEqual(dm.fill_value, fill_value)
     dm._propagate_masked_data_fill_value()
     self.assertEqual(dm.fill_value, fill_value)
Ejemplo n.º 12
0
 def test_real_with_real__realised_dtype_failure(self):
     dm = DataManager(self.real_array)
     emsg = 'Cannot set realised dtype, no lazy data is available.'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.replace(self.real_array * 10, realised_dtype=np.dtype('int16'))
     self.assertIs(dm._real_array, self.real_array)
     self.assertArrayEqual(dm.data, self.real_array)
Ejemplo n.º 13
0
 def test_zero_ndim_lazy_with_zero_ndim_real(self):
     real_array = np.array(456)
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 14
0
 def test_mask_array__with_fill_value(self):
     dm = DataManager(np.array(0))
     self.assertIsNone(dm.fill_value)
     fill_value = 1234
     data = ma.array(1, fill_value=fill_value)
     dm.data = data
     self.assertEqual(dm.fill_value, fill_value)
Ejemplo n.º 15
0
 def test_fill_value_overflow(self):
     fill_value = np.float(1e+20)
     data = np.array([0], dtype=np.int32)
     dm = DataManager(data)
     emsg = 'Fill value of .* invalid for dtype'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.fill_value = fill_value
Ejemplo n.º 16
0
 def test_mask_array__with_fill_value(self):
     dm = DataManager(np.array(0))
     self.assertIsNone(dm.fill_value)
     fill_value = 1234
     data = ma.array(1, fill_value=fill_value)
     dm.data = data
     self.assertEqual(dm.fill_value, fill_value)
Ejemplo n.º 17
0
class Test__propagate_masked_data_fill_value(tests.IrisTest):
    def setUp(self):
        self.real_array = np.array(0)
        self.mask_array = ma.array(0)
        np_fill_value = ma.array(0, dtype=self.mask_array.dtype).fill_value
        assert np_fill_value == self.mask_array.fill_value
        self.np_fill_value = np_fill_value
        self.dm = DataManager(self.mask_array)
        self.dm.fill_value = None

    def test_nop__with_real_array(self):
        fill_value = 1234
        dm = DataManager(self.real_array)
        dm.fill_value = 1234
        self.assertEqual(dm.fill_value, fill_value)
        dm._propagate_masked_data_fill_value()
        self.assertEqual(dm.fill_value, fill_value)

    def test_clear_fill_value__with_np_default(self):
        fill_value = 1234
        self.dm.fill_value = fill_value
        self.assertEqual(self.dm.fill_value, fill_value)
        self.dm._propagate_masked_data_fill_value()
        self.assertIsNone(self.dm.fill_value)

    def test_set_fill_value(self):
        fill_value = 1234
        self.assertIsNone(self.dm.fill_value)
        self.dm._real_array.fill_value = fill_value
        self.dm._propagate_masked_data_fill_value()
        self.assertEqual(self.dm.fill_value, fill_value)
Ejemplo n.º 18
0
 def test_nop__with_real_array(self):
     fill_value = 1234
     dm = DataManager(self.real_array)
     dm.fill_value = 1234
     self.assertEqual(dm.fill_value, fill_value)
     dm._propagate_masked_data_fill_value()
     self.assertEqual(dm.fill_value, fill_value)
Ejemplo n.º 19
0
 def test_ndim_0(self):
     real_array = np.array(0)
     dm = DataManager(real_array)
     self.assertEqual(dm.ndim, 0)
     lazy_array = as_lazy_data(real_array)
     dm = DataManager(lazy_array)
     self.assertEqual(dm.ndim, 0)
Ejemplo n.º 20
0
 def test_lazy_with_lazy(self):
     dm = DataManager(as_lazy_data(self.real_array))
     data = as_lazy_data(self.real_array) * 10
     result = dm._deepcopy(self.memo, data=data)
     expected = DataManager(data)
     self.assertEqual(result, expected)
     self.assertIs(result._lazy_array, data)
Ejemplo n.º 21
0
 def test_real_with_real(self):
     dm = DataManager(self.real_array)
     data = self.real_array.copy() * 10
     result = dm._deepcopy(self.memo, data=data)
     expected = DataManager(data)
     self.assertEqual(result, expected)
     self.assertIs(result._real_array, data)
Ejemplo n.º 22
0
 def test__clear_fill_value_masked(self):
     fill_value = 1234
     dm = DataManager(np.array(0), fill_value=fill_value)
     self.assertEqual(dm.fill_value, fill_value)
     data = ma.masked_array(1, fill_value=4321)
     dm.replace(data)
     self.assertIsNone(dm.fill_value)
Ejemplo n.º 23
0
 def test_lazy_array__fill_value_clearance(self):
     fill_value = 1234
     dm = DataManager(as_lazy_data(np.array(0)),
                      fill_value=fill_value)
     self.assertEqual(dm.fill_value, fill_value)
     dm.data = as_lazy_data(np.array(1))
     self.assertIsNone(dm.fill_value)
Ejemplo n.º 24
0
 def test_zero_ndim_lazy_with_zero_ndim_lazy(self):
     lazy_array = as_lazy_data(np.array(456))
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = lazy_array
     self.assertTrue(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, lazy_array.compute())
Ejemplo n.º 25
0
 def test_zero_ndim_real_with_scalar_float(self):
     value = 456.0
     dm = DataManager(np.array(123))
     self.assertFalse(dm.has_lazy_data())
     dm.data = value
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, np.array(value))
Ejemplo n.º 26
0
 def test_lazy_array__fill_value_clearance(self):
     fill_value = 1234
     dm = DataManager(as_lazy_data(np.array(0)),
                      fill_value=fill_value)
     self.assertEqual(dm.fill_value, fill_value)
     dm.data = as_lazy_data(np.array(1))
     self.assertIsNone(dm.fill_value)
Ejemplo n.º 27
0
 def test_zero_ndim_lazy_with_zero_ndim_real(self):
     real_array = np.array(456)
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 28
0
 def test_zero_ndim_real_with_scalar_float(self):
     value = 456.0
     dm = DataManager(np.array(123))
     self.assertFalse(dm.has_lazy_data())
     dm.data = value
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, np.array(value))
Ejemplo n.º 29
0
 def test_zero_ndim_lazy_with_zero_ndim_lazy(self):
     lazy_array = as_lazy_data(np.array(456))
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = lazy_array
     self.assertTrue(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, lazy_array.compute())
Ejemplo n.º 30
0
class Test__propagate_masked_data_fill_value(tests.IrisTest):
    def setUp(self):
        self.real_array = np.array(0)
        self.mask_array = ma.array(0)
        np_fill_value = ma.array(0, dtype=self.mask_array.dtype).fill_value
        assert np_fill_value == self.mask_array.fill_value
        self.np_fill_value = np_fill_value
        self.dm = DataManager(self.mask_array)
        self.dm.fill_value = None

    def test_nop__with_real_array(self):
        fill_value = 1234
        dm = DataManager(self.real_array)
        dm.fill_value = 1234
        self.assertEqual(dm.fill_value, fill_value)
        dm._propagate_masked_data_fill_value()
        self.assertEqual(dm.fill_value, fill_value)

    def test_clear_fill_value__with_np_default(self):
        fill_value = 1234
        self.dm.fill_value = fill_value
        self.assertEqual(self.dm.fill_value, fill_value)
        self.dm._propagate_masked_data_fill_value()
        self.assertIsNone(self.dm.fill_value)

    def test_set_fill_value(self):
        fill_value = 1234
        self.assertIsNone(self.dm.fill_value)
        self.dm._real_array.fill_value = fill_value
        self.dm._propagate_masked_data_fill_value()
        self.assertEqual(self.dm.fill_value, fill_value)
Ejemplo n.º 31
0
 def test_lazy_with_lazy(self):
     dm = DataManager(as_lazy_data(self.real_array))
     data = as_lazy_data(self.real_array) * 10
     result = dm._deepcopy(self.memo, data=data)
     expected = DataManager(data)
     self.assertEqual(result, expected)
     self.assertIs(result._lazy_array, data)
Ejemplo n.º 32
0
 def test_real_with_real__promote_shape_with_dtype_failure(self):
     data = np.array(666)
     dm = DataManager(data)
     emsg = 'Cannot set realised dtype, no lazy data is available'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.replace(np.array([999]), realised_dtype=np.dtype('float32'))
     self.assertArrayEqual(dm.data, data)
Ejemplo n.º 33
0
 def test_lazy_with_lazy__realised_dtype_failure(self):
     dtype = np.dtype('int16')
     dm1 = DataManager(as_lazy_data(self.real_array),
                       realised_dtype=dtype)
     dm2 = DataManager(as_lazy_data(self.real_array),
                       realised_dtype=dtype)
     self.assertFalse(dm1 != dm2)
Ejemplo n.º 34
0
 def test__clear_fill_value_masked(self):
     fill_value = 1234
     dm = DataManager(np.array(0), fill_value=fill_value)
     self.assertEqual(dm.fill_value, fill_value)
     data = ma.masked_array(1, fill_value=4321)
     dm.replace(data)
     self.assertIsNone(dm.fill_value)
Ejemplo n.º 35
0
 def test_lazy_with_lazy__fill_value(self):
     fill_value = 1234
     dm1 = DataManager(as_lazy_data(self.real_array),
                       fill_value=fill_value)
     dm2 = DataManager(as_lazy_data(self.real_array),
                       fill_value=fill_value)
     self.assertEqual(dm1, dm2)
Ejemplo n.º 36
0
 def test_zero_ndim_lazy_to_scalar_1d_real_promote(self):
     real_array = np.array([456])
     dm = DataManager(as_lazy_data(np.array(123)))
     self.assertTrue(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 37
0
 def test(self):
     dm = DataManager(np.array(0))
     kwargs = dict(data=self.data, fill_value='none', realised_dtype='none')
     with mock.patch(self.method) as mocker:
         mocker.return_value = self.return_value
         result = dm.copy(data=self.data)
         mocker.assert_called_once_with(self.memo, **kwargs)
     self.assertIs(result, self.return_value)
Ejemplo n.º 38
0
 def test_real_with_real__realised_dtype_failure(self):
     dm = DataManager(self.real_array)
     emsg = 'Cannot set realised dtype, no lazy data is available.'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.replace(self.real_array * 10,
                    realised_dtype=np.dtype('int16'))
     self.assertIs(dm._real_array, self.real_array)
     self.assertArrayEqual(dm.data, self.real_array)
Ejemplo n.º 39
0
 def test_real_with_real__promote_shape_with_dtype_failure(self):
     data = np.array(666)
     dm = DataManager(data)
     emsg = 'Cannot set realised dtype, no lazy data is available'
     with self.assertRaisesRegexp(ValueError, emsg):
         dm.replace(np.array([999]),
                    realised_dtype=np.dtype('float32'))
     self.assertArrayEqual(dm.data, data)
Ejemplo n.º 40
0
 def test(self):
     dm = DataManager(np.array(0))
     kwargs = dict(data=self.data, fill_value='none', realised_dtype='none')
     with mock.patch(self.method) as mocker:
         mocker.return_value = self.return_value
         result = dm.copy(data=self.data)
         mocker.assert_called_once_with(self.memo, **kwargs)
     self.assertIs(result, self.return_value)
Ejemplo n.º 41
0
 def test_lazy_with_lazy(self):
     lazy_array = as_lazy_data(self.real_array)
     dm = DataManager(lazy_array * 10)
     self.assertTrue(dm.has_lazy_data())
     dm.replace(lazy_array)
     self.assertTrue(dm.has_lazy_data())
     self.assertIs(dm._lazy_array, lazy_array)
     self.assertArrayEqual(dm.data, self.real_array)
Ejemplo n.º 42
0
 def test_ndim_nd(self):
     shape = (2, 3, 4)
     real_array = np.arange(24).reshape(shape)
     dm = DataManager(real_array)
     self.assertEqual(dm.ndim, len(shape))
     lazy_array = as_lazy_data(real_array)
     dm = DataManager(lazy_array)
     self.assertEqual(dm.ndim, len(shape))
Ejemplo n.º 43
0
 def setUp(self):
     self.real_array = np.array(0)
     self.mask_array = ma.array(0)
     np_fill_value = ma.array(0, dtype=self.mask_array.dtype).fill_value
     assert np_fill_value == self.mask_array.fill_value
     self.np_fill_value = np_fill_value
     self.dm = DataManager(self.mask_array)
     self.dm.fill_value = None
Ejemplo n.º 44
0
 def test_fill_value_uint(self):
     fill_value = np.uint(1234)
     for dtype in self.dtypes:
         data = np.array([0], dtype=dtype)
         dm = DataManager(data)
         dm.fill_value = fill_value
         [expected] = np.array([fill_value], dtype=dtype)
         self.assertEqual(dm.fill_value, expected)
         self.assertEqual(dm.fill_value.dtype, dtype)
Ejemplo n.º 45
0
 def test_with_real_masked_constant(self):
     masked_data = ma.masked_array([666], mask=True, dtype=np.dtype('f8'))
     masked_constant = masked_data[0]
     dm = DataManager(masked_constant)
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertNotIsInstance(result, ma.core.MaskedConstant)
     self.assertMaskedArrayEqual(result, masked_data)
Ejemplo n.º 46
0
 def test_nd_real_to_nd_real(self):
     shape = (2, 3, 4)
     size = np.prod(shape)
     real_array = np.arange(size).reshape(shape)
     dm = DataManager(real_array * 10)
     self.assertFalse(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 47
0
 def test_with_lazy_mask_array__masked(self):
     dm = DataManager(self.lazy_mask_array_masked)
     self.assertTrue(dm.has_lazy_data())
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertEqual(dm.dtype, self.dtype)
     self.assertEqual(result.fill_value, self.fill_value)
     self.assertArrayEqual(result, self.mask_array_masked)
Ejemplo n.º 48
0
 def test_lazy_with_realised_dtype(self):
     dm = DataManager(as_lazy_data(self.real_array),
                      realised_dtype=np.dtype('int16'))
     data = as_lazy_data(self.real_array) * 10
     dtype = np.dtype('int8')
     result = dm._deepcopy(self.memo, data=data, realised_dtype=dtype)
     expected = DataManager(data, realised_dtype=dtype)
     self.assertEqual(result, expected)
     self.assertIs(result._lazy_array, data)
Ejemplo n.º 49
0
 def test_lazy_with_realised_dtype(self):
     dm = DataManager(as_lazy_data(self.real_array),
                      realised_dtype=np.dtype('int16'))
     data = as_lazy_data(self.real_array) * 10
     dtype = np.dtype('int8')
     result = dm._deepcopy(self.memo, data=data, realised_dtype=dtype)
     expected = DataManager(data, realised_dtype=dtype)
     self.assertEqual(result, expected)
     self.assertIs(result._lazy_array, data)
Ejemplo n.º 50
0
 def test_fill_value_uint(self):
     fill_value = np.uint(1234)
     for dtype in self.dtypes:
         data = np.array([0], dtype=dtype)
         dm = DataManager(data)
         dm.fill_value = fill_value
         [expected] = np.array([fill_value], dtype=dtype)
         self.assertEqual(dm.fill_value, expected)
         self.assertEqual(dm.fill_value.dtype, dtype)
Ejemplo n.º 51
0
 def test_nd_real_to_nd_real(self):
     shape = (2, 3, 4)
     size = np.prod(shape)
     real_array = np.arange(size).reshape(shape)
     dm = DataManager(real_array * 10)
     self.assertFalse(dm.has_lazy_data())
     dm.data = real_array
     self.assertFalse(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 52
0
 def test_with_real_masked_constant(self):
     masked_data = ma.masked_array([666], mask=True, dtype=np.dtype('f8'))
     masked_constant = masked_data[0]
     dm = DataManager(masked_constant)
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertNotIsInstance(result, ma.core.MaskedConstant)
     self.assertMaskedArrayEqual(result, masked_data)
Ejemplo n.º 53
0
 def test_with_lazy_mask_array__masked(self):
     dm = DataManager(self.lazy_mask_array_masked)
     self.assertTrue(dm.has_lazy_data())
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertEqual(dm.dtype, self.dtype)
     self.assertEqual(result.fill_value, self.fill_value)
     self.assertArrayEqual(result, self.mask_array_masked)
Ejemplo n.º 54
0
 def test_with_lazy_mask_array__masked(self):
     dm = DataManager(self.lazy_mask_array_masked,
                      realised_dtype=self.realised_dtype)
     self.assertTrue(dm.has_lazy_data())
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertIsNone(dm._realised_dtype)
     self.assertEqual(dm.dtype, self.realised_dtype)
     self.assertArrayEqual(result, self.lazy_mask_array_masked.compute())
Ejemplo n.º 55
0
 def test_coerce_to_ndarray(self):
     shape = (2, 3)
     size = np.prod(shape)
     real_array = np.arange(size).reshape(shape)
     matrix = np.matrix(real_array)
     dm = DataManager(real_array)
     dm.data = matrix
     self.assertIsInstance(dm._real_array, np.core.ndarray)
     self.assertIsInstance(dm.data, np.core.ndarray)
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 56
0
 def test_nd_lazy_to_nd_lazy(self):
     shape = (2, 3, 4)
     size = np.prod(shape)
     real_array = np.arange(size).reshape(shape)
     lazy_array = as_lazy_data(real_array)
     dm = DataManager(lazy_array * 10)
     self.assertTrue(dm.has_lazy_data())
     dm.data = lazy_array
     self.assertTrue(dm.has_lazy_data())
     self.assertArrayEqual(dm.data, lazy_array.compute())
Ejemplo n.º 57
0
 def test_coerce_to_ndarray(self):
     shape = (2, 3)
     size = np.prod(shape)
     real_array = np.arange(size).reshape(shape)
     matrix = np.matrix(real_array)
     dm = DataManager(real_array)
     dm.data = matrix
     self.assertIsInstance(dm._real_array, np.core.ndarray)
     self.assertIsInstance(dm.data, np.core.ndarray)
     self.assertArrayEqual(dm.data, real_array)
Ejemplo n.º 58
0
 def test_fill_value_float(self):
     fill_value = np.float(123.4)
     for dtype in self.dtypes:
         data = np.array([0], dtype=dtype)
         dm = DataManager(data)
         dm.fill_value = fill_value
         if dtype.kind in 'biu':
             fill_value = np.rint(fill_value)
         [expected] = np.asarray([fill_value], dtype=dtype)
         self.assertEqual(dm.fill_value, expected)
         self.assertEqual(dm.fill_value.dtype, dtype)
Ejemplo n.º 59
0
 def test_with_lazy_masked_constant(self):
     dtype = np.dtype('int16')
     masked_data = ma.masked_array([666], mask=True, dtype=dtype)
     masked_constant = masked_data[0]
     lazy_masked_constant = as_lazy_data(masked_constant)
     dm = DataManager(lazy_masked_constant, realised_dtype=dtype)
     self.assertEqual(dm.dtype, dtype)
     result = dm.data
     self.assertFalse(dm.has_lazy_data())
     self.assertIsInstance(result, ma.MaskedArray)
     self.assertNotIsInstance(result, ma.core.MaskedConstant)
     self.assertMaskedArrayEqual(result, masked_data)
Ejemplo n.º 60
0
 def test_realised_dtype_none(self):
     shape = (2, 3, 4)
     size = np.prod(shape)
     mask_array = ma.arange(size).reshape(shape)
     dtype = mask_array.dtype
     lazy_array = as_lazy_data(mask_array)
     dm = DataManager(lazy_array, realised_dtype=dtype)
     self.assertIsNone(dm._realised_dtype)
     self.assertEqual(dm.dtype, dtype)
     dm.data = mask_array
     self.assertIs(dm.data, mask_array)
     self.assertIsNone(dm._realised_dtype)
     self.assertEqual(dm.dtype, dtype)