def test_eoc_chunk_initialization(eocube_input_1): df_layers = eocube_input_1["df_layers"] ji = 0 eoc_chunk = cube.EOCubeChunk(ji, df_layers, chunksize=2**5) assert eoc_chunk.df_layers.shape[0] == 92 assert eoc_chunk.chunksize == 2**5 assert eoc_chunk.ji == 0
def test_eoc_chunk_read_data(eocube_input_1): df_layers = eocube_input_1["df_layers"] eoc_chunk = cube.EOCubeChunk(0, df_layers, chunksize=2**5) eoc_chunk = eoc_chunk.read_data() assert len(eoc_chunk.data.shape) == 3 assert eoc_chunk._data_structure == "ndarray"
def test_eoc_chunk_initialization_from_eocube(eocube_input_1): df_layers = eocube_input_1["df_layers"] ji = 0 eoc = cube.EOCube(df_layers, chunksize=2**5) eoc_chunk_from_eocube = cube.EOCubeChunk.from_eocube(eoc, ji) eoc_chunk = cube.EOCubeChunk(ji, df_layers, chunksize=2**5) assert eoc_chunk_from_eocube.chunksize == eoc_chunk.chunksize assert eoc_chunk_from_eocube._mrio.windows[0] == eoc_chunk._mrio.windows[0]
def test_eoc_chunk_convert_data_to_dataframe(eocube_input_1): df_layers = eocube_input_1["df_layers"] eoc_chunk = cube.EOCubeChunk(1, df_layers, chunksize=2**5) eoc_chunk = eoc_chunk.read_data() eoc_chunk.convert_data_to_dataframe() assert eoc_chunk._data_structure == "DataFrame" assert (eoc_chunk.data.columns == eoc_chunk.df_layers["uname"]).all() with pytest.raises(Exception): eoc_chunk.convert_data_to_dataframe()
def test_eoc_chunk_convert_data_to_ndarray(eocube_input_1): df_layers = df_layers = eocube_input_1["df_layers"] eoc_chunk = cube.EOCubeChunk(1, df_layers, chunksize=2**5) eoc_chunk = eoc_chunk.read_data() assert eoc_chunk._data_structure == "ndarray" with pytest.raises(Exception): eoc_chunk.convert_data_to_ndarray() # convert to dataframe and back and compare ndarrays data_ndarray = eoc_chunk.data.copy() eoc_chunk = eoc_chunk.convert_data_to_dataframe() assert eoc_chunk._data_structure == "DataFrame" eoc_chunk = eoc_chunk.convert_data_to_ndarray() assert (data_ndarray == eoc_chunk.data).all()
def test_eoc_chunk_chunksize_setter_raises_error(eocube_input_1): df_layers = eocube_input_1["df_layers"] eoc_chunk = cube.EOCubeChunk(0, df_layers, chunksize=2**5) with pytest.raises(NotImplementedError): eoc_chunk.chunksize = 2**4