Example #1
0
 def test_java_calling_python_interface_implementation(self):
     called = []
     class PyCallback(Callbacker.Callback):
         def call(self, extraarg=None):
             called.append(extraarg)
     Callbacker.callNoArg(PyCallback())
     Callbacker.callOneArg(PyCallback(), 4294967295L)
     self.assertEquals(None, called[0])
     self.assertEquals(4294967295L, called[1])
     class PyBadCallback(Callbacker.Callback):
         def call(pyself, extraarg):
             self.fail("Shouldn't be callable with a no args")
     self.assertRaises(TypeError, Callbacker.callNoArg, PyBadCallback())
 def test_java_calling_python_interface_implementation(self):
     called = []
     class PyCallback(Callbacker.Callback):
         def call(self, extraarg=None):
             called.append(extraarg)
     Callbacker.callNoArg(PyCallback())
     Callbacker.callOneArg(PyCallback(), 4294967295)
     self.assertEqual(None, called[0])
     self.assertEqual(4294967295, called[1])
     class PyBadCallback(Callbacker.Callback):
         def call(pyself, extraarg):
             self.fail("Shouldn't be callable with a no args")
     self.assertRaises(TypeError, Callbacker.callNoArg, PyBadCallback())
Example #3
0
    def test_passthrough(self):
        class CallbackPassthrough(Callbacker.Callback):
            def __init__(self, worker):
                self.worker = worker

            def __getattribute__(self, name):
                if name == 'call':
                    return getattr(self.worker, name)
                return object.__getattribute__(self, name)

        collector = Callbacker.CollectingCallback()
        c = CallbackPassthrough(collector)
        Callbacker.callNoArg(c)
        self.assertEquals("call()", collector.calls[0])
        c.call(7)
        self.assertEquals("call(7)", collector.calls[1])
    def test_passthrough(self):
        class CallbackPassthrough(Callbacker.Callback):
            def __init__(self, worker):
                self.worker = worker

            def __getattribute__(self, name):
                if name == 'call':
                    return getattr(self.worker, name)
                return object.__getattribute__(self, name)

        collector = Callbacker.CollectingCallback()
        c = CallbackPassthrough(collector)
        Callbacker.callNoArg(c)
        self.assertEqual("call()", collector.calls[0])
        c.call(7)
        self.assertEqual("call(7)", collector.calls[1])