diff options
-rw-r--r-- | coverage/html.py | 2 | ||||
-rw-r--r-- | test/farm/html/run_tabbed.py | 18 | ||||
-rw-r--r-- | test/farm/html/src/tabbed.py | 8 |
3 files changed, 28 insertions, 0 deletions
diff --git a/coverage/html.py b/coverage/html.py index 7e1e544a..5d2c561c 100644 --- a/coverage/html.py +++ b/coverage/html.py @@ -140,6 +140,8 @@ class HtmlReporter(Reporter): def escape(t): """HTML-escape the text in t.""" return (t + # Change all tabs to 4 spaces. + .expandtabs(4) # Convert HTML special chars into HTML entities. .replace("&", "&").replace("<", "<").replace(">", ">") .replace("'", "'").replace('"', """) diff --git a/test/farm/html/run_tabbed.py b/test/farm/html/run_tabbed.py new file mode 100644 index 00000000..c49bdfbd --- /dev/null +++ b/test/farm/html/run_tabbed.py @@ -0,0 +1,18 @@ +def html_it(): + """Run coverage and make an HTML report for tabbed.""" + import coverage + cov = coverage.coverage() + cov.start() + import tabbed + cov.stop() + cov.html_report(tabbed, directory="../html") + +runfunc(html_it, rundir="src") + +# Editors like to change things, make sure our source file still has tabs. +contains("src/tabbed.py", "\tif x:\t\t\t\t\t\t# look nice") + +contains("html/tabbed.html", + "<p class='stm run hide'> if x: # look nice</p>") +doesnt_contain("html/tabbed.html", "\t") +clean("html") diff --git a/test/farm/html/src/tabbed.py b/test/farm/html/src/tabbed.py new file mode 100644 index 00000000..fe426115 --- /dev/null +++ b/test/farm/html/src/tabbed.py @@ -0,0 +1,8 @@ +# This file should have tabs. +x = 1 +if x: + a = "Tabbed" # Aligned comments + if x: # look nice + b = "No spaces" # when they + c = "Done" # line up. + |