Skip to content

Commit 2622b55

Browse files
committed
TST: tests for setitem with generator indexer
1 parent 79847a9 commit 2622b55

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

pandas/tests/series/test_indexing.py

+29
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,35 @@ def test_getitem_generator(self):
275275
assert_series_equal(result, expected)
276276
assert_series_equal(result2, expected)
277277

278+
def test_setitem_generator(self):
279+
bool_idx = self.series > 0
280+
idces = self.series[bool_idx].index
281+
282+
values = range(bool_idx.sum())
283+
284+
expected = self.series.copy()
285+
expected[bool_idx] = values
286+
287+
# boolean generator (fails)
288+
# s2 = self.series.copy()
289+
# s2[iter(bool_idx)] = values
290+
# assert_series_equal(s2, expected)
291+
292+
# boolean generator with .loc (fails)
293+
# s3 = self.series.copy()
294+
# s3.loc[iter(bool_idx)] = values
295+
# assert_series_equal(s3, expected)
296+
297+
# list of labels:
298+
s4 = self.series.copy()
299+
s4[iter(idces)] = values
300+
assert_series_equal(s4, expected)
301+
302+
# list of labels with .loc:
303+
s5 = self.series.copy()
304+
s5.loc[iter(idces)] = values
305+
assert_series_equal(s5, expected)
306+
278307
def test_type_promotion(self):
279308
# GH12599
280309
s = pd.Series()

0 commit comments

Comments
 (0)