@@ -83,6 +83,9 @@ func TestBinaryOps(t *testing.T) {
8383 "__idiv__" : newBuiltinFunction ("__idiv__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
8484 return args [1 ], nil
8585 }).ToObject (),
86+ "__ilshift__" : newBuiltinFunction ("__ilshift__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
87+ return args [1 ], nil
88+ }).ToObject (),
8689 "__imod__" : newBuiltinFunction ("__imod__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
8790 return args [1 ], nil
8891 }).ToObject (),
@@ -92,6 +95,9 @@ func TestBinaryOps(t *testing.T) {
9295 "__ior__" : newBuiltinFunction ("__ior__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
9396 return args [1 ], nil
9497 }).ToObject (),
98+ "__irshift__" : newBuiltinFunction ("__irshift__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
99+ return args [1 ], nil
100+ }).ToObject (),
95101 "__isub__" : newBuiltinFunction ("__isub__" , func (f * Frame , args Args , kwargs KWArgs ) (* Object , * BaseException ) {
96102 return args [1 ], nil
97103 }).ToObject (),
@@ -121,6 +127,7 @@ func TestBinaryOps(t *testing.T) {
121127 {IAnd , newObject (ObjectType ), newObject (fooType ), nil , mustCreateException (TypeErrorType , "unsupported operand type(s) for &: 'object' and 'Foo'" )},
122128 {IDiv , NewInt (123 ).ToObject (), newObject (bazType ), NewStr ("123" ).ToObject (), nil },
123129 {IDiv , newObject (inplaceType ), NewInt (42 ).ToObject (), NewInt (42 ).ToObject (), nil },
130+ {ILShift , newObject (inplaceType ), NewInt (123 ).ToObject (), NewInt (123 ).ToObject (), nil },
124131 {IMod , NewInt (24 ).ToObject (), NewInt (6 ).ToObject (), NewInt (0 ).ToObject (), nil },
125132 {IMod , newObject (inplaceType ), NewFloat (3.14 ).ToObject (), NewFloat (3.14 ).ToObject (), nil },
126133 {IMul , NewStr ("foo" ).ToObject (), NewInt (3 ).ToObject (), NewStr ("foofoofoo" ).ToObject (), nil },
@@ -129,6 +136,7 @@ func TestBinaryOps(t *testing.T) {
129136 {IOr , newObject (inplaceType ), NewInt (42 ).ToObject (), NewInt (42 ).ToObject (), nil },
130137 {IOr , NewInt (9 ).ToObject (), NewInt (12 ).ToObject (), NewInt (13 ).ToObject (), nil },
131138 {IOr , newObject (ObjectType ), newObject (fooType ), nil , mustCreateException (TypeErrorType , "unsupported operand type(s) for |: 'object' and 'Foo'" )},
139+ {IRShift , newObject (inplaceType ), NewInt (123 ).ToObject (), NewInt (123 ).ToObject (), nil },
132140 {ISub , NewInt (3 ).ToObject (), NewInt (- 3 ).ToObject (), NewInt (6 ).ToObject (), nil },
133141 {ISub , newObject (inplaceType ), None , None , nil },
134142 {IXor , newObject (inplaceType ), None , None , nil },
0 commit comments