def test_decode_data(bedmaster_reader: BedmasterReader): # float signal codified_data = np.repeat([[48, 46, 50], [49, 46, 50]], 5, axis=0) decoded_data = np.repeat([0.2, 1.2], 5) assert np.array_equal(bedmaster_reader.format_data(codified_data), decoded_data) # int signal codified_data = np.repeat([[51, 50], [50, 57]], 5, axis=0) decoded_data = np.repeat([32, 29], 5) assert np.array_equal(bedmaster_reader.format_data(codified_data), decoded_data) # string nan 1 and 2 codified_data = np.repeat([[48, 46, 50, 51], [49, 46, 50, 49]], 5, axis=0) codified_data[3] = [78, 111, 110, 101] decoded_data = np.repeat([0.23, 1.21], 5) decoded_data[3] = np.nan obtained = bedmaster_reader.format_data(codified_data) assert np.array_equal( obtained[~np.isnan(obtained)], decoded_data[~np.isnan(decoded_data)], ) assert np.isnan(obtained[3]) codified_data[3] = [88, 32, 32, 32] obtained = bedmaster_reader.format_data(codified_data) assert np.array_equal( obtained[~np.isnan(obtained)], decoded_data[~np.isnan(decoded_data)], ) assert np.isnan(obtained[3])
def test_format_data(bedmaster_reader: BedmasterReader): expected_data = np.arange(10) # Case column vector [[0], [1]] -> [0,1] unformatted_data = np.transpose([expected_data]) assert np.array_equal(bedmaster_reader.format_data(unformatted_data), expected_data) # Case single-row 2D vector [[0,1]] -> [0,1] unformatted_data = np.array([expected_data]) assert np.array_equal(bedmaster_reader.format_data(unformatted_data), expected_data) # Case column matrix input_2d_data = np.repeat([[48, 46, 50], [49, 46, 50]], 5, axis=0) formatted_data = np.repeat([0.2, 1.2], 5) assert np.array_equal(bedmaster_reader.format_data(input_2d_data), formatted_data) # Case row matrix input_2d_data = np.transpose(input_2d_data) formatted_data = np.repeat([0.2, 1.2], 5) assert np.array_equal(bedmaster_reader.format_data(input_2d_data), formatted_data)