예제 #1
0
    def test_transform_known_symbols(self):
        r = BacktraceHelper(TestBacktraceHelper.FakeCollector([
            "a", "c", "d",
        ]))

        def f(symbol):
            return symbol[collector.NAME] + symbol[collector.NAME]

        actual = r.transform_known_symbols("0 1 a b c d e f 0 2", f)
        self.assertEqual("0 1 aa b cc dd e f 0 2", actual)
예제 #2
0
def symbols_filter(context, value):
    renderer = renderer_from_context(context)

    if renderer:
        helper = BacktraceHelper(renderer.collector)

        def make_links(s):
            name = s[collector.NAME]
            url = renderer.url_for_symbol_name(name, context)
            return '<a href="%s">%s</a>' % (url, name)

        if isinstance(value, markupsafe.Markup):
            value = value.__html__().unescape()
        return helper.transform_known_symbols(value, make_links)

    return value
예제 #3
0
def symbols_filter(context, value):
    renderer = renderer_from_context(context)

    if renderer:
        helper = BacktraceHelper(renderer.collector)

        def make_links(s):
            name = s[collector.NAME]
            url = renderer.url_for_symbol_name(name, context)
            return '<a href="%s">%s</a>' % (url, name)

        if isinstance(value, markupsafe.Markup):
            value = value.__html__().unescape()
        return helper.transform_known_symbols(value, make_links)

    return value