def test__escape__uses_renderer_escape(self): """ Test that escape uses the renderer's escape function. """ renderer = Renderer() renderer.escape = lambda s: "**" + s engine = renderer._make_render_engine() escape = engine.escape self.assertEquals(escape("foo"), "**foo")
def test__escape__has_access_to_original_unicode_subclass(self): """ Test that escape receives strings with the unicode subclass intact. """ renderer = Renderer() renderer.escape = lambda s: type(s).__name__ engine = renderer._make_render_engine() escape = engine.escape class MyUnicode(unicode): pass self.assertEquals(escape("foo"), "unicode") self.assertEquals(escape(u"foo"), "unicode") self.assertEquals(escape(MyUnicode("foo")), "MyUnicode")