8
8
from numpy .random import randn , rand , randint
9
9
import numpy as np
10
10
11
- from pandas .core .dtypes .common import is_list_like , is_scalar
11
+ from pandas .core .dtypes .common import is_bool , is_list_like , is_scalar
12
12
import pandas as pd
13
13
from pandas .core import common as com
14
14
from pandas .errors import PerformanceWarning
@@ -209,7 +209,7 @@ def check_equal(self, result, expected):
209
209
elif isinstance (result , np .ndarray ):
210
210
tm .assert_numpy_array_equal (result , expected )
211
211
else :
212
- self . assertEqual ( result , expected )
212
+ assert result == expected
213
213
214
214
def check_complex_cmp_op (self , lhs , cmp1 , rhs , binop , cmp2 ):
215
215
skip_these = _scalar_skip
@@ -610,30 +610,28 @@ def test_scalar_unary(self):
610
610
with pytest .raises (TypeError ):
611
611
pd .eval ('~1.0' , engine = self .engine , parser = self .parser )
612
612
613
- self .assertEqual (
614
- pd .eval ('-1.0' , parser = self .parser , engine = self .engine ), - 1.0 )
615
- self .assertEqual (
616
- pd .eval ('+1.0' , parser = self .parser , engine = self .engine ), + 1.0 )
617
-
618
- self .assertEqual (
619
- pd .eval ('~1' , parser = self .parser , engine = self .engine ), ~ 1 )
620
- self .assertEqual (
621
- pd .eval ('-1' , parser = self .parser , engine = self .engine ), - 1 )
622
- self .assertEqual (
623
- pd .eval ('+1' , parser = self .parser , engine = self .engine ), + 1 )
624
-
625
- self .assertEqual (
626
- pd .eval ('~True' , parser = self .parser , engine = self .engine ), ~ True )
627
- self .assertEqual (
628
- pd .eval ('~False' , parser = self .parser , engine = self .engine ), ~ False )
629
- self .assertEqual (
630
- pd .eval ('-True' , parser = self .parser , engine = self .engine ), - True )
631
- self .assertEqual (
632
- pd .eval ('-False' , parser = self .parser , engine = self .engine ), - False )
633
- self .assertEqual (
634
- pd .eval ('+True' , parser = self .parser , engine = self .engine ), + True )
635
- self .assertEqual (
636
- pd .eval ('+False' , parser = self .parser , engine = self .engine ), + False )
613
+ assert pd .eval ('-1.0' , parser = self .parser ,
614
+ engine = self .engine ) == - 1.0
615
+ assert pd .eval ('+1.0' , parser = self .parser ,
616
+ engine = self .engine ) == + 1.0
617
+ assert pd .eval ('~1' , parser = self .parser ,
618
+ engine = self .engine ) == ~ 1
619
+ assert pd .eval ('-1' , parser = self .parser ,
620
+ engine = self .engine ) == - 1
621
+ assert pd .eval ('+1' , parser = self .parser ,
622
+ engine = self .engine ) == + 1
623
+ assert pd .eval ('~True' , parser = self .parser ,
624
+ engine = self .engine ) == ~ True
625
+ assert pd .eval ('~False' , parser = self .parser ,
626
+ engine = self .engine ) == ~ False
627
+ assert pd .eval ('-True' , parser = self .parser ,
628
+ engine = self .engine ) == - True
629
+ assert pd .eval ('-False' , parser = self .parser ,
630
+ engine = self .engine ) == - False
631
+ assert pd .eval ('+True' , parser = self .parser ,
632
+ engine = self .engine ) == + True
633
+ assert pd .eval ('+False' , parser = self .parser ,
634
+ engine = self .engine ) == + False
637
635
638
636
def test_unary_in_array (self ):
639
637
# GH 11235
@@ -658,50 +656,51 @@ def test_disallow_scalar_bool_ops(self):
658
656
pd .eval (ex , engine = self .engine , parser = self .parser )
659
657
660
658
def test_identical (self ):
661
- # GH 10546
659
+ # see gh- 10546
662
660
x = 1
663
661
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
664
- self . assertEqual ( result , 1 )
662
+ assert result == 1
665
663
assert is_scalar (result )
666
664
667
665
x = 1.5
668
666
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
669
- self . assertEqual ( result , 1.5 )
667
+ assert result == 1.5
670
668
assert is_scalar (result )
671
669
672
670
x = False
673
671
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
674
- self .assertEqual (result , False )
672
+ assert not result
673
+ assert is_bool (result )
675
674
assert is_scalar (result )
676
675
677
676
x = np .array ([1 ])
678
677
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
679
678
tm .assert_numpy_array_equal (result , np .array ([1 ]))
680
- self . assertEqual ( result .shape , (1 , ) )
679
+ assert result .shape == (1 , )
681
680
682
681
x = np .array ([1.5 ])
683
682
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
684
683
tm .assert_numpy_array_equal (result , np .array ([1.5 ]))
685
- self . assertEqual ( result .shape , (1 , ) )
684
+ assert result .shape == (1 , )
686
685
687
686
x = np .array ([False ]) # noqa
688
687
result = pd .eval ('x' , engine = self .engine , parser = self .parser )
689
688
tm .assert_numpy_array_equal (result , np .array ([False ]))
690
- self . assertEqual ( result .shape , (1 , ) )
689
+ assert result .shape == (1 , )
691
690
692
691
def test_line_continuation (self ):
693
692
# GH 11149
694
693
exp = """1 + 2 * \
695
694
5 - 1 + 2 """
696
695
result = pd .eval (exp , engine = self .engine , parser = self .parser )
697
- self . assertEqual ( result , 12 )
696
+ assert result == 12
698
697
699
698
def test_float_truncation (self ):
700
699
# GH 14241
701
700
exp = '1000000000.006'
702
701
result = pd .eval (exp , engine = self .engine , parser = self .parser )
703
702
expected = np .float64 (exp )
704
- self . assertEqual ( result , expected )
703
+ assert result == expected
705
704
706
705
df = pd .DataFrame ({'A' : [1000000000.0009 ,
707
706
1000000000.0011 ,
@@ -1121,15 +1120,15 @@ def test_simple_bool_ops(self):
1121
1120
ex = '{0} {1} {2}' .format (lhs , op , rhs )
1122
1121
res = self .eval (ex )
1123
1122
exp = eval (ex )
1124
- self . assertEqual ( res , exp )
1123
+ assert res == exp
1125
1124
1126
1125
def test_bool_ops_with_constants (self ):
1127
1126
for op , lhs , rhs in product (expr ._bool_ops_syms , ('True' , 'False' ),
1128
1127
('True' , 'False' )):
1129
1128
ex = '{0} {1} {2}' .format (lhs , op , rhs )
1130
1129
res = self .eval (ex )
1131
1130
exp = eval (ex )
1132
- self . assertEqual ( res , exp )
1131
+ assert res == exp
1133
1132
1134
1133
def test_panel_fails (self ):
1135
1134
with catch_warnings (record = True ):
@@ -1169,19 +1168,19 @@ def test_truediv(self):
1169
1168
1170
1169
res = self .eval ('1 / 2' , truediv = True )
1171
1170
expec = 0.5
1172
- self . assertEqual ( res , expec )
1171
+ assert res == expec
1173
1172
1174
1173
res = self .eval ('1 / 2' , truediv = False )
1175
1174
expec = 0.5
1176
- self . assertEqual ( res , expec )
1175
+ assert res == expec
1177
1176
1178
1177
res = self .eval ('s / 2' , truediv = False )
1179
1178
expec = 0.5
1180
- self . assertEqual ( res , expec )
1179
+ assert res == expec
1181
1180
1182
1181
res = self .eval ('s / 2' , truediv = True )
1183
1182
expec = 0.5
1184
- self . assertEqual ( res , expec )
1183
+ assert res == expec
1185
1184
else :
1186
1185
res = self .eval (ex , truediv = False )
1187
1186
tm .assert_numpy_array_equal (res , np .array ([1 ]))
@@ -1191,19 +1190,19 @@ def test_truediv(self):
1191
1190
1192
1191
res = self .eval ('1 / 2' , truediv = True )
1193
1192
expec = 0.5
1194
- self . assertEqual ( res , expec )
1193
+ assert res == expec
1195
1194
1196
1195
res = self .eval ('1 / 2' , truediv = False )
1197
1196
expec = 0
1198
- self . assertEqual ( res , expec )
1197
+ assert res == expec
1199
1198
1200
1199
res = self .eval ('s / 2' , truediv = False )
1201
1200
expec = 0
1202
- self . assertEqual ( res , expec )
1201
+ assert res == expec
1203
1202
1204
1203
res = self .eval ('s / 2' , truediv = True )
1205
1204
expec = 0.5
1206
- self . assertEqual ( res , expec )
1205
+ assert res == expec
1207
1206
1208
1207
def test_failing_subscript_with_name_error (self ):
1209
1208
df = DataFrame (np .random .randn (5 , 3 )) # noqa
@@ -1549,7 +1548,7 @@ def test_bool_ops_with_constants(self):
1549
1548
else :
1550
1549
res = self .eval (ex )
1551
1550
exp = eval (ex )
1552
- self . assertEqual ( res , exp )
1551
+ assert res == exp
1553
1552
1554
1553
def test_simple_bool_ops (self ):
1555
1554
for op , lhs , rhs in product (expr ._bool_ops_syms , (True , False ),
@@ -1561,7 +1560,7 @@ def test_simple_bool_ops(self):
1561
1560
else :
1562
1561
res = pd .eval (ex , engine = self .engine , parser = self .parser )
1563
1562
exp = eval (ex )
1564
- self . assertEqual ( res , exp )
1563
+ assert res == exp
1565
1564
1566
1565
1567
1566
class TestOperationsPythonPython (TestOperationsNumExprPython ):
@@ -1650,14 +1649,14 @@ def test_df_arithmetic_subexpression(self):
1650
1649
1651
1650
def check_result_type (self , dtype , expect_dtype ):
1652
1651
df = DataFrame ({'a' : np .random .randn (10 ).astype (dtype )})
1653
- self . assertEqual ( df .a .dtype , dtype )
1652
+ assert df .a .dtype == dtype
1654
1653
df .eval ("b = sin(a)" ,
1655
1654
engine = self .engine ,
1656
1655
parser = self .parser , inplace = True )
1657
1656
got = df .b
1658
1657
expect = np .sin (df .a )
1659
- self . assertEqual ( expect .dtype , got .dtype )
1660
- self . assertEqual ( expect_dtype , got .dtype )
1658
+ assert expect .dtype == got .dtype
1659
+ assert expect_dtype == got .dtype
1661
1660
tm .assert_series_equal (got , expect , check_names = False )
1662
1661
1663
1662
def test_result_types (self ):
0 commit comments