def METHOD_NAME(self):
    class NoCall(object):
        def __getattr__(self, name):
            raise BaseException
    class Call(NoCall):
        def __call__(self, ci):
            pass
    for meth, mtip  in ((NoCall, '()'), (Call, '()'),
                        (NoCall(), ''), (Call(), '(ci)')):
        self.assertEqual(signature(meth), mtip)