Skip to content

Commit 9cf48fb

Browse files
committed
TST: Add Styler.where test
1 parent 5af5a2d commit 9cf48fb

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

pandas/tests/io/formats/test_style.py

+20
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,26 @@ def f(x):
265265
col in self.df.loc[slice_].columns)
266266
assert result == expected
267267

268+
def test_where_subset(self):
269+
def f(x):
270+
return x > 0.5
271+
272+
style1 = 'foo: bar'
273+
style2 = 'baz: foo'
274+
275+
def g(x):
276+
return style1 if f(x) else style2
277+
278+
slices = [pd.IndexSlice[:], pd.IndexSlice[:, ['A']],
279+
pd.IndexSlice[[1], :], pd.IndexSlice[[1], ['A']],
280+
pd.IndexSlice[:2, ['A', 'B']]]
281+
282+
for slice_ in slices:
283+
result = self.df.style.where(f, style1, style2,
284+
subset=slice_)._compute().ctx
285+
expected = self.df.style.applymap(g, subset=slice_)._compute().ctx
286+
assert result == expected
287+
268288
def test_empty(self):
269289
df = pd.DataFrame({'A': [1, 0]})
270290
s = df.style

0 commit comments

Comments
 (0)