def test_np_ndarray(self): test_data = np.asarray(self.test_data) assert 0 == index(test_data, 1, 1) assert 1 == index(test_data, 1, 2) assert 2 == index(test_data, 2, 1) assert 3 == index(test_data, 2, 2) assert [0, 1] == list(index(test_data, 1)) assert [2, 3] == list(index(test_data, 2)) assert [0, 2] == list(index(test_data, None, 1)) assert [1, 3] == list(index(test_data, None, 2))
def test_extended_data(self): assert 0 == index([TestIndex.test_data[0]], 1, 1, 2, 2) assert 1 == index([TestIndex.test_data[0]], 1, 2, 2, 2) assert 2 == index([TestIndex.test_data[1]], 2, 1, 2, 2) assert 3 == index([TestIndex.test_data[1]], 2, 2, 2, 2) assert 0 == index(TestIndex.test_data_col, 1, 1, 2, 2) assert 3 == index([TestIndex.test_data[1]], 2, 2, 2, 2)
def test_out_of_range(self): with pytest.raises(IndexError): index(TestIndex.test_data[1], 2, 2) with pytest.raises(IndexError): index(TestIndex.test_data[1], 1, 3) with pytest.raises(IndexError): index(TestIndex.test_data, None)
def test_error_inputs(self): assert NA_ERROR == index(TestIndex.test_data, NA_ERROR, 1) assert NA_ERROR == index(TestIndex.test_data, 1, NA_ERROR)
def test_column_on_vector(self): assert 2 == index(TestIndex.test_data[1], 1, 1) assert 3 == index(TestIndex.test_data[1], 1, 2)
def test_column_on_matrix(self): assert [0, 2] == index(TestIndex.test_data, None, 1) assert [1, 3] == index(TestIndex.test_data, None, 2) assert (0, 2) == index(tuple(TestIndex.test_data), None, 1) assert (1, 3) == index(tuple(TestIndex.test_data), None, 2)
def test_no_column_on_matrix(self): assert [0, 1] == index(TestIndex.test_data, 1) assert [2, 3] == index(TestIndex.test_data, 2)
def test_array(self): assert 0 == index(TestIndex.test_data, 1, 1) assert 1 == index(TestIndex.test_data, 1, 2) assert 2 == index(TestIndex.test_data, 2, 1) assert 3 == index(TestIndex.test_data, 2, 2)
def test_index(data, row_num, col_num, expected): result = index(data, row_num, col_num) if isinstance(expected, np.ndarray): assert (result == expected).all() else: assert result == expected
def test_out_of_range(self): assert NA_ERROR == index(TestIndex.test_data[1], 2, 2) assert NA_ERROR == index(TestIndex.test_data[1], 1, 3) assert NA_ERROR == index(TestIndex.test_data, None)