def test_method_cycle_elimination(self): template = Foo() template.placeholder_cache = {} self.assertEqual(udn.resolve_placeholder('foo_method', template, None), template.foo_method) self.assertIn('foo_method', template.placeholder_cache) self.assertIsInstance(template.placeholder_cache['foo_method'], weakref.ReferenceType) self.assertEqual(udn.resolve_placeholder('foo_method', template, None), template.foo_method)
def test_in_search_list_object(self): template = Foo() template.placeholder_cache = {} self.assertEqual(udn.resolve_placeholder('boom', template, None), 'bam') self.assertIn('boom', template.placeholder_cache) self.assertEqual(udn.resolve_placeholder('boom', template, None), 'bam')
def test_undefined(self): self.assertEqual(type(udn.resolve_placeholder('wowza', Foo, None)), runtime.UndefinedPlaceholder)
def test_builtin(self): self.assertEqual(udn.resolve_placeholder('str', Foo, None), str)
def test_in_globals(self): self.assertEqual(udn.resolve_placeholder('blam', Foo, {'blam': 'bling'}), 'bling')
def test_in_search_list_object(self): self.assertEqual(udn.resolve_placeholder('boom', Foo, None), 'bam')
def test_in_search_list_dict(self): self.assertEqual(udn.resolve_placeholder('win', Foo, None), 'boo')
def test_has_attr(self): self.assertEqual(udn.resolve_placeholder('bar', Foo, None), 'baz')
def test_in_globals(self): self.assertEqual( udn.resolve_placeholder('blam', Foo, {'blam': 'bling'}), 'bling')