Skip to content

Commit 2b8c89b

Browse files
cpcloudjeffreystarr
authored andcommitted
CLN/TST: move ops test from test_frame.py to test_expressions.py
1 parent ce77643 commit 2b8c89b

File tree

2 files changed

+22
-19
lines changed

2 files changed

+22
-19
lines changed

pandas/tests/test_expressions.py

+19
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
# pylint: disable-msg=W0612,E1101
33

44
import nose
5+
import re
56

67
from numpy.random import randn
78

@@ -339,6 +340,24 @@ def testit():
339340
expr.set_numexpr_threads()
340341
testit()
341342

343+
def test_bool_ops_raise_on_arithmetic(self):
344+
df = DataFrame({'a': np.random.rand(10) > 0.5,
345+
'b': np.random.rand(10) > 0.5})
346+
names = 'add', 'mul', 'sub', 'div', 'truediv', 'floordiv', 'pow'
347+
ops = '+', '*', '-', '/', '/', '//', '**'
348+
msg = 'operator %r not implemented for bool dtypes'
349+
for op, name in zip(ops, names):
350+
if not compat.PY3 or name != 'div':
351+
f = getattr(operator, name)
352+
err_msg = re.escape(msg % op)
353+
354+
with tm.assertRaisesRegexp(NotImplementedError, err_msg):
355+
f(df, df)
356+
357+
with tm.assertRaisesRegexp(NotImplementedError, err_msg):
358+
f(df.a, df.b)
359+
360+
342361
if __name__ == '__main__':
343362
import nose
344363
nose.runmodule(argv=[__file__, '-vvs', '-x', '--pdb', '--pdb-failure'],

pandas/tests/test_frame.py

+3-19
Original file line numberDiff line numberDiff line change
@@ -4761,29 +4761,13 @@ def _check_unary_op(op):
47614761
_check_unary_op(operator.neg)
47624762

47634763
def test_logical_typeerror(self):
4764-
if compat.PY3:
4765-
pass
4766-
else:
4764+
if not compat.PY3:
47674765
self.assertRaises(TypeError, self.frame.__eq__, 'foo')
47684766
self.assertRaises(TypeError, self.frame.__lt__, 'foo')
47694767
self.assertRaises(TypeError, self.frame.__gt__, 'foo')
47704768
self.assertRaises(TypeError, self.frame.__ne__, 'foo')
4771-
4772-
def test_bool_ops_raise_on_arithmetic(self):
4773-
df = DataFrame({'a': np.random.rand(10) > 0.5,
4774-
'b': np.random.rand(10) > 0.5})
4775-
df2 = DataFrame({'a': np.random.rand(10) > 0.5,
4776-
'b': np.random.rand(10) > 0.5})
4777-
ops = 'add', 'mul', 'sub', 'div', 'truediv', 'floordiv', 'pow'
4778-
names = '+', '*', '-', '/', '/', '//', '**'
4779-
msg = 'operator %r not implemented for bool dtypes'
4780-
for op, name in zip(ops, names):
4781-
if not compat.PY3 or op != 'div':
4782-
with tm.assertRaisesRegexp(NotImplementedError,
4783-
re.escape(msg % name)):
4784-
f = getattr(operator, op)
4785-
f(df, df2)
4786-
f(df.a, df.b)
4769+
else:
4770+
raise nose.SkipTest('test_logical_typeerror not tested on PY3')
47874771

47884772
def test_constructor_lists_to_object_dtype(self):
47894773
# from #1074

0 commit comments

Comments
 (0)