Skip to content

Commit 02127ff

Browse files
Better tests for get_indexer_errors
Add mix of invalid and valid values
1 parent 2c48272 commit 02127ff

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

pandas/tests/indexes/interval/test_interval.py

+15-6
Original file line numberDiff line numberDiff line change
@@ -633,14 +633,23 @@ def test_get_indexer_length_one(self, item, closed):
633633
expected = np.array([0] * len(item), dtype='intp')
634634
tm.assert_numpy_array_equal(result, expected)
635635

636-
@pytest.mark.parametrize('index', [
637-
pd.interval_range(0, 1),
638-
pd.interval_range(0, 3),
639-
pd.IntervalIndex.from_tuples([(1, 3), (2, 4), (0, 2)])
636+
@pytest.mark.parametrize('index,value,expected_index', [
637+
(pd.interval_range(0, 1), 0.5, 0),
638+
(pd.interval_range(0, 3), 0.5, 0),
639+
(pd.IntervalIndex.from_tuples([(1, 3), (2, 4), (0, 2)]), 0.5, 2)
640640
])
641-
def test_get_indexer_errors(self, index):
641+
def test_get_indexer_errors(self, index, value, expected_index):
642+
actual = index.get_indexer(['a'])
642643
expected = np.array([-1], dtype='intp')
643-
assert tm.assert_numpy_array_equal(index.get_indexer(['gg']), expected)
644+
assert tm.assert_numpy_array_equal(actual, expected)
645+
646+
actual = index.get_indexer(['a', 'b'])
647+
expected = np.array([-1, -1], dtype='intp')
648+
assert tm.assert_numpy_array_equal(actual, expected)
649+
650+
actual = index.get_indexer(['a', value, 'b'])
651+
expected = np.array([-1, expected_index, -1], dtype='intp')
652+
assert tm.assert_numpy_array_equal(actual, expected)
644653

645654
# Make consistent with test_interval_new.py (see #16316, #16386)
646655
@pytest.mark.parametrize('arrays', [

0 commit comments

Comments
 (0)