def test_hasObserver(self):
     obj = BaseObject()
     notificationObject = NotificationTestObserver()
     notificationCenter = NotificationCenter()
     obj._dispatcher = weakref.ref(notificationCenter)
     obj.dispatcher.addObserver(observer=notificationObject,
                                methodName="notificationCallback",
                                notification="BaseObject.Changed",
                                observable=obj)
     self.assertTrue(
         obj.hasObserver(observer=notificationObject,
                         notification="BaseObject.Changed"))
Beispiel #2
0
 def test_hasObserver(self):
     obj = BaseObject()
     notificationObject = NotificationTestObserver()
     notificationCenter = NotificationCenter()
     obj._dispatcher = weakref.ref(notificationCenter)
     obj.dispatcher.addObserver(observer=notificationObject,
                                methodName="notificationCallback",
                                notification="BaseObject.Changed",
                                observable=obj)
     self.assertTrue(
         obj.hasObserver(observer=notificationObject,
                         notification="BaseObject.Changed")
     )
 def test_addObserver(self):
     obj = BaseObject()
     notificationObject = NotificationTestObserver()
     notificationCenter = NotificationCenter()
     obj._dispatcher = weakref.ref(notificationCenter)
     obj.addObserver(observer=notificationObject,
                     methodName="notificationCallback",
                     notification="BaseObject.Changed",
                     identifier="test")
     self.assertTrue(
         obj.dispatcher.hasObserver(observer=notificationObject,
                                    notification="BaseObject.Changed",
                                    observable=obj))
     expected = [
         dict(observer=notificationObject,
              notification="BaseObject.Changed",
              observable=obj,
              identifier="test")
     ]
     result = obj.findObservations()
     self.assertEqual(expected, result)
Beispiel #4
0
 def _set_dirty(self, value):
     BaseObject._set_dirty(self, value)
     if value:
         self.template = False
 def test_dispatcher(self):
     notificationCenter = NotificationCenter()
     obj = BaseObject()
     obj._dispatcher = weakref.ref(notificationCenter)
     self.assertEqual(obj.dispatcher, notificationCenter)
 def setUp(self):
     self.obj = BaseObject()
class RepresentationsTest(unittest.TestCase):
    def __init__(self, methodName):
        unittest.TestCase.__init__(self, methodName)

    def setUp(self):
        self.obj = BaseObject()

    def tearDown(self):
        del self.obj

    def test_object_representations(self):
        notificationCenter = NotificationCenter()
        self.obj._dispatcher = weakref.ref(notificationCenter)
        self.obj.representationFactories = dict(
            test=dict(factory=_representationTestFactory,
                      destructiveNotifications=["BaseObject.Changed"]))
        self.assertEqual(self.obj.getRepresentation("test"), "()")
        self.assertEqual(self.obj.representationKeys(), [('test', {})])
        self.assertEqual(
            self.obj.getRepresentation("test",
                                       attr1="foo",
                                       attr2="bar",
                                       attr3=1),
            "(('attr1', 'foo'), ('attr2', 'bar'), ('attr3', 1))")
        self.assertEqual(
            sortRepresentationKeys(self.obj.representationKeys()),
            sorted([('test', []),
                    ('test', [('attr1', 'foo'), ('attr2', 'bar'),
                              ('attr3', 1)])]))
        self.assertTrue(self.obj.hasCachedRepresentation("test"))
        self.assertTrue(
            self.obj.hasCachedRepresentation("test",
                                             attr1="foo",
                                             attr2="bar",
                                             attr3=1))
        self.assertFalse(
            self.obj.hasCachedRepresentation("test",
                                             attr1="not foo",
                                             attr2="bar",
                                             attr3=1))
        self.obj.destroyAllRepresentations()
        self.assertEqual(self.obj.representationKeys(), [])
        self.obj.representationFactories["foo"] = dict(
            factory=_representationTestFactory,
            destructiveNotifications=["BaseObject.Changed"])
        self.assertEqual(self.obj.getRepresentation("test"), '()')
        self.assertEqual(
            self.obj.getRepresentation("test",
                                       attr1="foo",
                                       attr2="bar",
                                       attr3=1),
            "(('attr1', 'foo'), ('attr2', 'bar'), ('attr3', 1))")
        self.assertEqual(
            self.obj.getRepresentation("test",
                                       attr21="foo",
                                       attr22="bar",
                                       attr23=1),
            "(('attr21', 'foo'), ('attr22', 'bar'), ('attr23', 1))")
        self.assertEqual(self.obj.getRepresentation("foo"), "()")
        self.obj.destroyRepresentation("test",
                                       attr21="foo",
                                       attr22="bar",
                                       attr23=1)
        self.assertEqual(sortRepresentationKeys(self.obj.representationKeys()),
                         [('foo', []), ('test', []),
                          ('test', [('attr1', 'foo'), ('attr2', 'bar'),
                                    ('attr3', 1)])])
        self.obj.destroyRepresentation("test")
        self.assertEqual(self.obj.representationKeys(), [('foo', {})])

    def test_object_representations_no_dispatcher(self):
        self.obj.representationFactories = dict(
            test=dict(factory=_representationTestFactory,
                      destructiveNotifications=["BaseObject.Changed"]))
        self.assertEqual(self.obj.getRepresentation("test"), "()")
        self.assertEqual([], [])
Beispiel #8
0
 def _set_dirty(self, value):
     BaseObject._set_dirty(self, value)
     if value:
         self.template = False
Beispiel #9
0
 def test_dispatcher(self):
     notificationCenter = NotificationCenter()
     obj = BaseObject()
     obj._dispatcher = weakref.ref(notificationCenter)
     self.assertEqual(obj.dispatcher, notificationCenter)
Beispiel #10
0
 def setUp(self):
     self.obj = BaseObject()
Beispiel #11
0
class RepresentationsTest(unittest.TestCase):

    def __init__(self, methodName):
        unittest.TestCase.__init__(self, methodName)

    def setUp(self):
        self.obj = BaseObject()

    def tearDown(self):
        del self.obj

    def test_object_representations(self):
        self.obj.representationFactories = dict(
            test=dict(
                factory=_representationTestFactory,
                destructiveNotifications=["BaseObject.Changed"]))
        self.assertEqual(self.obj.getRepresentation("test"), "()")
        self.assertEqual(
            self.obj.representationKeys(),
            [('test', {})]
        )
        self.assertEqual(
            self.obj.getRepresentation("test", attr1="foo",
                                       attr2="bar", attr3=1),
            "(('attr1', 'foo'), ('attr2', 'bar'), ('attr3', 1))"
        )
        self.assertEqual(sortRepresentationKeys(self.obj.representationKeys()),
                         sorted([('test', []),
                                 ('test', [('attr1', 'foo'), ('attr2', 'bar'),
                                           ('attr3', 1)])]))
        self.assertTrue(self.obj.hasCachedRepresentation("test"))
        self.assertTrue(self.obj.hasCachedRepresentation("test", attr1="foo",
                                                         attr2="bar", attr3=1))
        self.assertFalse(self.obj.hasCachedRepresentation("test",
                                                          attr1="not foo",
                                                          attr2="bar",
                                                          attr3=1))
        self.obj.destroyAllRepresentations()
        self.assertEqual(self.obj.representationKeys(),
                         [])
        self.obj.representationFactories["foo"] = dict(
            factory=_representationTestFactory,
            destructiveNotifications=["BaseObject.Changed"]
        )
        self.assertEqual(self.obj.getRepresentation("test"),
                         '()')
        self.assertEqual(self.obj.getRepresentation("test", attr1="foo",
                                                    attr2="bar", attr3=1),
                         "(('attr1', 'foo'), ('attr2', 'bar'), ('attr3', 1))")
        self.assertEqual(
            self.obj.getRepresentation("test", attr21="foo",
                                       attr22="bar", attr23=1),
            "(('attr21', 'foo'), ('attr22', 'bar'), ('attr23', 1))")
        self.assertEqual(self.obj.getRepresentation("foo"),
                         "()")
        self.obj.destroyRepresentation("test", attr21="foo",
                                       attr22="bar", attr23=1)
        self.assertEqual(sortRepresentationKeys(self.obj.representationKeys()),
                         [('foo', []),
                          ('test', []),
                          ('test', [('attr1', 'foo'), ('attr2', 'bar'),
                                    ('attr3', 1)])])
        self.obj.destroyRepresentation("test")
        self.assertEqual(self.obj.representationKeys(),
                         [('foo', {})])