예제 #1
0
 def set_key_as_set_content_key(self, order, key):
     def foo_setter(msg, obj, foo=None):
         msg['X-Foo-Header'] = foo
         msg.set_payload(obj)
     cm = ContentManager()
     cm.add_set_handler(key, foo_setter)
     m = self._make_message()
     msg_obj = self.Thing()
     cm.set_content(m, msg_obj, foo='bar')
     self.assertEqual(m['X-Foo-Header'], 'bar')
     self.assertEqual(m.get_payload(), msg_obj)
예제 #2
0
 def set_key_as_set_content_key(self, order, key):
     def foo_setter(msg, obj, foo=None):
         msg['X-Foo-Header'] = foo
         msg.set_payload(obj)
     cm = ContentManager()
     cm.add_set_handler(key, foo_setter)
     m = self._make_message()
     msg_obj = self.Thing()
     cm.set_content(m, msg_obj, foo='bar')
     self.assertEqual(m['X-Foo-Header'], 'bar')
     self.assertEqual(m.get_payload(), msg_obj)
예제 #3
0
 def test_set_content_calls_clear_content(self):
     m = self._make_message()
     m['Content-Foo'] = 'bar'
     m['Content-Type'] = 'text/html'
     m['To'] = 'test'
     m.set_payload('abc')
     cm = ContentManager()
     cm.add_set_handler(str, lambda *args, **kw: None)
     m.set_content('xyz', content_manager=cm)
     self.assertIsNone(m['Content-Foo'])
     self.assertIsNone(m['Content-Type'])
     self.assertEqual(m['To'], 'test')
     self.assertIsNone(m.get_payload())
예제 #4
0
 def test_set_content_calls_clear_content(self):
     m = self._make_message()
     m['Content-Foo'] = 'bar'
     m['Content-Type'] = 'text/html'
     m['To'] = 'test'
     m.set_payload('abc')
     cm = ContentManager()
     cm.add_set_handler(str, lambda *args, **kw: None)
     m.set_content('xyz', content_manager=cm)
     self.assertIsNone(m['Content-Foo'])
     self.assertIsNone(m['Content-Type'])
     self.assertEqual(m['To'], 'test')
     self.assertIsNone(m.get_payload())
예제 #5
0
 def set_key_as_set_content_key_order(self, order, key):
     def foo_setter(msg, obj):
         msg['X-FooBar-Header'] = 'foo'
         msg.set_payload(obj)
     def bar_setter(msg, obj):
         msg['X-FooBar-Header'] = 'bar'
     cm = ContentManager()
     cm.add_set_handler(key, foo_setter)
     for precedence, key in self.get_key_params.values():
         if precedence > order:
             cm.add_set_handler(key, bar_setter)
     m = self._make_message()
     msg_obj = self.Thing()
     cm.set_content(m, msg_obj)
     self.assertEqual(m['X-FooBar-Header'], 'foo')
     self.assertEqual(m.get_payload(), msg_obj)
예제 #6
0
 def set_key_as_set_content_key_order(self, order, key):
     def foo_setter(msg, obj):
         msg['X-FooBar-Header'] = 'foo'
         msg.set_payload(obj)
     def bar_setter(msg, obj):
         msg['X-FooBar-Header'] = 'bar'
     cm = ContentManager()
     cm.add_set_handler(key, foo_setter)
     for precedence, key in self.get_key_params.values():
         if precedence > order:
             cm.add_set_handler(key, bar_setter)
     m = self._make_message()
     msg_obj = self.Thing()
     cm.set_content(m, msg_obj)
     self.assertEqual(m['X-FooBar-Header'], 'foo')
     self.assertEqual(m.get_payload(), msg_obj)