def get_key_as_get_content_key(self, order, key): def foo_getter(msg, foo=None): bar = msg['X-Bar-Header'] return foo, bar cm = ContentManager() cm.add_get_handler(key, foo_getter) m = self._make_message() m['Content-Type'] = 'text/plain' m['X-Bar-Header'] = 'foo' self.assertEqual(cm.get_content(m, foo='bar'), ('bar', 'foo'))
def get_key_as_get_content_key_order(self, order, key): def bar_getter(msg): return msg['X-Bar-Header'] def foo_getter(msg): return msg['X-Foo-Header'] cm = ContentManager() cm.add_get_handler(key, foo_getter) for precedence, key in self.get_key_params.values(): if precedence > order: cm.add_get_handler(key, bar_getter) m = self._make_message() m['Content-Type'] = 'text/plain' m['X-Bar-Header'] = 'bar' m['X-Foo-Header'] = 'foo' self.assertEqual(cm.get_content(m), ('foo'))
def test_get_content_raises_if_unknown_mimetype_and_no_default(self): cm = ContentManager() m = self._make_message() m['Content-Type'] = 'text/plain' with self.assertRaisesRegex(KeyError, 'text/plain'): cm.get_content(m)