Esempio n. 1
0
        def testUserSuppliedInit(self):
            if pmi.isController:

                class MockProxy(object):
                    __metaclass__ = pmi.Proxy
                    pmiproxydefs = dict(cls="MockProxyLocal")

                    def __init__(self, arg):
                        self.arg = arg
                        self.pmiinit(arg + 10)

                obj = MockProxy(42)
                pmiobj = obj.pmiobject
                self.assert_(hasattr(obj, "arg"))
                self.assertEqual(obj.arg, 42)
                self.assert_(isinstance(pmiobj, pmi.MockProxyLocal))
                self.assertEqual(pmiobj.arg, 52)
                del (pmiobj)
                del (obj)
                pmi.sync()
            else:
                pmiobj = pmi.create()
                self.assert_(isinstance(pmiobj, pmi.MockProxyLocal))
                self.assertEqual(pmiobj.arg, 52)
                del (pmiobj)
                pmi.sync()
Esempio n. 2
0
 def testLocalCall(self):
     if pmi.isController:
         self.assertEqual(self.obj.f(), 42)
         pmi.sync()
         self.assertEqual(self.pmiobj.called, "f")
     else:
         self.assertFalse(hasattr(self.pmiobj, "called"))
         pmi.sync()
Esempio n. 3
0
        def testCreateByString(self):
            obj = pmi.create("MockClass2")
            self.assertEqual(obj.__class__.__name__, "MockClass2")

            # delete object
            del (obj)
            pmi.sync()

            # Test that MockClass2 has not been pulled into the scripts namespace
            self.assertFalse("MockClass2" in globals())
Esempio n. 4
0
        def testCreateandDelete(self):
            self.assert_(not pmi.MockProxyLocal.delCalled)
            if pmi.isController:
                obj = MockProxy()
                self.assert_(hasattr(obj, "pmiobject"))
                self.assert_(isinstance(obj.pmiobject, pmi.MockProxyLocal))
                self.assert_(hasattr(obj, "pmiinit"))
                del (obj)
            else:
                pmiobj = pmi.create()
                self.assert_(isinstance(pmiobj, pmi.MockProxyLocal))
                del (pmiobj)

            pmi.sync()
            self.assert_(pmi.MockProxyLocal.delCalled)
Esempio n. 5
0
        def testCreateByClass(self):
            if pmi.isController:
                obj = pmi.create(MockClass)
            else:
                # on the workers, don't use an argument to make sure
                # that it is not used
                obj = pmi.create()
            # test whether the class has been initialized correctly
            # (on all workers)
            self.assert_(isinstance(obj, MockClass))

            # delete object
            del (obj)
            pmi.sync()
            self.assert_(MockClass.delCalled)
Esempio n. 6
0
        def testUserSuppliedFunction(self):
            if pmi.isController:

                class MockProxy(object):
                    __metaclass__ = pmi.Proxy
                    pmiproxydefs = dict(cls="MockProxyLocal")

                    def f4(self):
                        self.pmiobject.called = "f4"
                        return 72

                obj = MockProxy()
                pmiobj = obj.pmiobject
                self.assertEqual(obj.f4(), 72)
                pmi.sync()
                self.assertEqual(pmiobj.called, "f4")
                del (obj)
                pmi.sync()
            else:
                pmiobj = pmi.create()
                pmi.sync()
                self.assertFalse(hasattr(pmiobj, "called"))
                pmi.sync()
Esempio n. 7
0
 def tearDown(self):
     pmi.sync()
Esempio n. 8
0
 def tearDown(self):
     if pmi.isController:
         del (self.obj)
     pmi.sync()