summaryrefslogtreecommitdiff
path: root/tests/plugin2.py
blob: 1fa66cb23c35f26bd52b7c270a54821c9288756c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
"""A plugin for test_plugins.py to import."""

import coverage

class Plugin(coverage.CoveragePlugin):
    def file_tracer(self, filename):
        if "render.py" in filename:
            return RenderFileTracer(filename)


class RenderFileTracer(coverage.plugin.FileTracer):
    def __init__(self, filename):
        pass

    def has_dynamic_source_filename(self):
        return True

    def dynamic_source_filename(self, filename, frame):
        filename = "fake%d.html" % frame.f_lineno
        print("dynamic filename: %r" % filename)
        return filename

    def line_number_range(self, frame):
        return 17,19