def test_empty_slice(self): # Check behaviour of the getitem call with an 'empty' slicing. # This is necessary because, since Dask 2.0, the "from_array" function # takes a zero-length slice of its array argument, to capture array # metadata, and in those cases we want to avoid file access. test_dtype = np.dtype(np.float32) mock_datafetch = mock.MagicMock() proxy = _DataProxy(shape=(3, 4), dtype=np.dtype(np.float32), recreate_raw=mock_datafetch) # Test the special no-data indexing operation. result = proxy[0:0, 0:0] # Check the behaviour and results were as expected. self.assertEqual(mock_datafetch.call_count, 0) self.assertIsInstance(result, np.ndarray) self.assertEqual(result.dtype, test_dtype) self.assertEqual(result.shape, (0, 0))
def test_bitmap__invalid_indicator(self): section_6 = {'bitMapIndicator': 100, 'bitmap': None} data_proxy = _DataProxy(0, 0, 0, 0) with self.assertRaisesRegexp(TranslationError, 'unsupported bitmap'): data_proxy._bitmap(section_6)
def test_bitmap_present(self): bitmap = randint(2, size=(12)) section_6 = {'bitMapIndicator': 0, 'bitmap': bitmap} data_proxy = _DataProxy(0, 0, 0, 0) result = data_proxy._bitmap(section_6) self.assertArrayEqual(bitmap, result)
def test_no_bitmap(self): section_6 = {'bitMapIndicator': 255, 'bitmap': None} data_proxy = _DataProxy(0, 0, 0, 0) result = data_proxy._bitmap(section_6) self.assertIsNone(result)