コード例 #1
0
 def test_storm_object_modified_no_edited_fields(self):
     # A longpoll event is not emitted unless edited_fields is populated.
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         notify(ObjectModifiedEvent(storm_object, storm_object, None))
     self.assertEqual([], log)
     with capture_longpoll_emissions() as log:
         notify(ObjectModifiedEvent(storm_object, storm_object, ()))
     self.assertEqual([], log)
コード例 #2
0
 def test_storm_object_modified_no_edited_fields(self):
     # A longpoll event is not emitted unless edited_fields is populated.
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         notify(ObjectModifiedEvent(storm_object, storm_object, None))
     self.assertEqual([], log)
     with capture_longpoll_emissions() as log:
         notify(ObjectModifiedEvent(storm_object, storm_object, ()))
     self.assertEqual([], log)
コード例 #3
0
 def test_emit(self):
     # LongPollEvent.emit() sends the given data to `event_key`.
     event = FakeEvent("source")
     event_data = {"hello": 1234}
     with capture_longpoll_emissions() as log:
         event.emit(**event_data)
     expected_message = LongPollEventRecord(
         event_key=event.event_key,
         data=dict(event_data, event_key=event.event_key))
     self.assertThat(log, Contains(expected_message))
コード例 #4
0
 def test_emit(self):
     # LongPollEvent.emit() sends the given data to `event_key`.
     event = FakeEvent("source")
     event_data = {"hello": 1234}
     with capture_longpoll_emissions() as log:
         event.emit(**event_data)
     expected_message = LongPollEventRecord(event_key=event.event_key,
                                            data=dict(
                                                event_data,
                                                event_key=event.event_key))
     self.assertThat(log, Contains(expected_message))
コード例 #5
0
 def test_storm_object_created(self):
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         notify(ObjectCreatedEvent(storm_object))
     expected = LongPollEventRecord(
         "longpoll.event.faketable", {
             "event_key": "longpoll.event.faketable",
             "what": "created",
             "id": 1234,
         })
     self.assertEqual([expected], log)
コード例 #6
0
 def test_storm_object_deleted(self):
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         notify(ObjectDeletedEvent(storm_object))
     expected = LongPollEventRecord(
         "longpoll.event.faketable.1234", {
             "event_key": "longpoll.event.faketable.1234",
             "what": "deleted",
             "id": 1234,
             })
     self.assertEqual([expected], log)
コード例 #7
0
 def test_storm_object_modified(self):
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         object_event = ObjectModifiedEvent(storm_object, storm_object,
                                            ("itchy", "scratchy"))
         notify(object_event)
     expected = LongPollEventRecord(
         "longpoll.event.faketable.1234", {
             "event_key": "longpoll.event.faketable.1234",
             "what": "modified",
             "edited_fields": ["itchy", "scratchy"],
             "id": 1234,
         })
     self.assertEqual([expected], log)
コード例 #8
0
 def test_storm_object_modified(self):
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         object_event = ObjectModifiedEvent(
             storm_object, storm_object, ("itchy", "scratchy"))
         notify(object_event)
     expected = LongPollEventRecord(
         "longpoll.event.faketable.1234", {
             "event_key": "longpoll.event.faketable.1234",
             "what": "modified",
             "edited_fields": ["itchy", "scratchy"],
             "id": 1234,
             })
     self.assertEqual([expected], log)
コード例 #9
0
 def test_storm_object_modified_edited_fields_are_zope_attributes(self):
     # The names of IAttribute fields in edited_fields are used in the
     # longpoll event.
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         object_event = ObjectModifiedEvent(storm_object, storm_object,
                                            ("foo", Attribute("bar")))
         notify(object_event)
     expected = LongPollEventRecord(
         "longpoll.event.faketable.1234", {
             "event_key": "longpoll.event.faketable.1234",
             "what": "modified",
             "edited_fields": ["bar", "foo"],
             "id": 1234,
         })
     self.assertEqual([expected], log)
コード例 #10
0
 def test_storm_object_modified_edited_fields_are_zope_attributes(self):
     # The names of IAttribute fields in edited_fields are used in the
     # longpoll event.
     storm_object = FakeStormClass()
     storm_object.id = 1234
     with capture_longpoll_emissions() as log:
         object_event = ObjectModifiedEvent(
             storm_object, storm_object, ("foo", Attribute("bar")))
         notify(object_event)
     expected = LongPollEventRecord(
         "longpoll.event.faketable.1234", {
             "event_key": "longpoll.event.faketable.1234",
             "what": "modified",
             "edited_fields": ["bar", "foo"],
             "id": 1234,
             })
     self.assertEqual([expected], log)