def test_strange_inheritance():
 class m(StrangeOverrides, ):
  def SomeMethodWithContext(self, arg):
   AreEqual(arg, 'abc')
  def ParamsMethodWithContext(self, *arg):
   AreEqual(arg, ('abc', 'def'))
  def ParamsIntMethodWithContext(self, *arg):
   AreEqual(arg, (2, 3))
 a = m()
 a.CallWithContext('abc')
 a.CallParamsWithContext('abc', 'def')
 a.CallIntParamsWithContext(2, 3)

def test_strange_inheritance ( ) : class m ( StrangeOverrides , ) : def SomeMethodWithContext ( self , arg ) : AreEqual ( arg , 'abc' ) def ParamsMethodWithContext ( self , * arg ) : AreEqual ( arg , ( 'abc' , 'def' ) ) def ParamsIntMethodWithContext ( self , * arg ) : AreEqual ( arg , ( 2 , 3 ) ) a = m ( ) a . CallWithContext ( 'abc' ) a . CallParamsWithContext ( 'abc' , 'def' ) a . CallIntParamsWithContext ( 2 , 3 )
verify that overriding strange methods doesnt flow caller context through .