|
|
1
|
+"Hello"
|
|
|
2
|
+"Hello"
|
|
|
3
|
+badCase
|
|
|
4
|
+badCase
|
|
|
5
|
+"Bark"
|
|
|
6
|
+"Hello"
|
|
|
7
|
+(1,2,3)
|
|
|
8
|
+
|
|
|
9
|
+ 73% expressions used (73/100)
|
|
|
10
|
+ 14% boolean coverage (1/7)
|
|
|
11
|
+ 0% guards (0/4), 3 always True, 1 always False
|
|
|
12
|
+ 33% 'if' conditions (1/3), 1 always True, 1 always False
|
|
|
13
|
+ 100% qualifiers (0/0)
|
|
|
14
|
+ 58% alternatives used (7/12)
|
|
|
15
|
+100% local declarations used (0/0)
|
|
|
16
|
+ 83% top-level declarations used (5/6)
|
|
|
17
|
+
|
|
|
18
|
+-----<module Main>-----
|
|
|
19
|
+ 73% expressions used (73/100)
|
|
|
20
|
+ 14% boolean coverage (1/7)
|
|
|
21
|
+ 0% guards (0/4), 3 always True, 1 always False
|
|
|
22
|
+ 33% 'if' conditions (1/3), 1 always True, 1 always False
|
|
|
23
|
+ 100% qualifiers (0/0)
|
|
|
24
|
+ 58% alternatives used (7/12)
|
|
|
25
|
+100% local declarations used (0/0)
|
|
|
26
|
+ 83% top-level declarations used (5/6)
|
|
|
27
|
+
|
|
|
28
|
+Writing: Main.hs.html
|
|
|
29
|
+<html>
|
|
|
30
|
+<head>
|
|
|
31
|
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
|
32
|
+<style type="text/css">
|
|
|
33
|
+span.lineno { color: white; background: #aaaaaa; border-right: solid white 12px }
|
|
|
34
|
+span.nottickedoff { background: yellow}
|
|
|
35
|
+span.istickedoff { background: white }
|
|
|
36
|
+span.tickonlyfalse { margin: -1px; border: 1px solid #f20913; background: #f20913 }
|
|
|
37
|
+span.tickonlytrue { margin: -1px; border: 1px solid #60de51; background: #60de51 }
|
|
|
38
|
+span.funcount { font-size: small; color: orange; z-index: 2; position: absolute; right: 20 }
|
|
|
39
|
+span.decl { font-weight: bold }
|
|
|
40
|
+span.spaces { background: white }
|
|
|
41
|
+</style>
|
|
|
42
|
+</head>
|
|
|
43
|
+<body>
|
|
|
44
|
+<pre>
|
|
|
45
|
+<span class="decl"><span class="nottickedoff">never executed</span> <span class="tickonlytrue">always true</span> <span class="tickonlyfalse">always false</span></span>
|
|
|
46
|
+</pre>
|
|
|
47
|
+<pre>
|
|
|
48
|
+<span class="lineno"> 1 </span>import Control.Exception as E
|
|
|
49
|
+<span class="lineno"> 2 </span>
|
|
|
50
|
+<span class="lineno"> 3 </span>-- This test shows what hpc can really do.
|
|
|
51
|
+<span class="lineno"> 4 </span>
|
|
|
52
|
+<span class="lineno"> 5 </span><span class="decl"><span class="istickedoff">main = do</span>
|
|
|
53
|
+<span class="lineno"> 6 </span><span class="spaces"> </span><span class="istickedoff">print ("Hello")</span>
|
|
|
54
|
+<span class="lineno"> 7 </span><span class="spaces"> </span><span class="istickedoff">foo "Hello"</span>
|
|
|
55
|
+<span class="lineno"> 8 </span><span class="spaces"> </span><span class="istickedoff">E.catch (print (badCase 22 <span class="nottickedoff">44</span>))</span>
|
|
|
56
|
+<span class="lineno"> 9 </span><span class="spaces"> </span><span class="istickedoff">(\ e -> print (e :: E.ErrorCall))</span>
|
|
|
57
|
+<span class="lineno"> 10 </span><span class="spaces"> </span><span class="istickedoff">E.catch (print (badCase 22 <span class="nottickedoff">(error "Foo")</span>))</span>
|
|
|
58
|
+<span class="lineno"> 11 </span><span class="spaces"> </span><span class="istickedoff">(\ e -> print (e :: E.ErrorCall))</span>
|
|
|
59
|
+<span class="lineno"> 12 </span><span class="spaces"> </span><span class="istickedoff">E.catch (print "Bark")</span>
|
|
|
60
|
+<span class="lineno"> 13 </span><span class="spaces"> </span><span class="istickedoff"><span class="nottickedoff">(\ e -> print (e :: E.ErrorCall))</span></span>
|
|
|
61
|
+<span class="lineno"> 14 </span><span class="spaces"> </span><span class="istickedoff">(_,_) <- return $ (<span class="nottickedoff">"Hello"</span>,<span class="nottickedoff">"World"</span>)</span>
|
|
|
62
|
+<span class="lineno"> 15 </span><span class="spaces"> </span><span class="istickedoff">return <span class="nottickedoff">()</span></span>
|
|
|
63
|
+<span class="lineno"> 16 </span><span class="spaces"> </span><span class="istickedoff">() <- return ()</span>
|
|
|
64
|
+<span class="lineno"> 17 </span><span class="spaces"> </span><span class="istickedoff">t <- case <span class="nottickedoff">()</span> of</span>
|
|
|
65
|
+<span class="lineno"> 18 </span><span class="spaces"> </span><span class="istickedoff">_ | <span class="tickonlytrue">otherwoz</span> -> return <span class="nottickedoff">"Hello"</span></span>
|
|
|
66
|
+<span class="lineno"> 19 </span><span class="spaces"> </span><span class="istickedoff">_ -> <span class="nottickedoff">error "Bad Thing Happened"</span></span>
|
|
|
67
|
+<span class="lineno"> 20 </span><span class="spaces"> </span><span class="istickedoff">t <- case <span class="nottickedoff">()</span> of</span>
|
|
|
68
|
+<span class="lineno"> 21 </span><span class="spaces"> </span><span class="istickedoff">_ | <span class="tickonlytrue">otherwise</span> -> return <span class="nottickedoff">"Hello"</span></span>
|
|
|
69
|
+<span class="lineno"> 22 </span><span class="spaces"> </span><span class="istickedoff">_ -> <span class="nottickedoff">error "Bad Thing Happened"</span></span>
|
|
|
70
|
+<span class="lineno"> 23 </span><span class="spaces"> </span><span class="istickedoff">t <- case <span class="nottickedoff">()</span> of</span>
|
|
|
71
|
+<span class="lineno"> 24 </span><span class="spaces"> </span><span class="istickedoff">_ | <span class="tickonlytrue">otherwise</span> </span>
|
|
|
72
|
+<span class="lineno"> 25 </span><span class="spaces"> </span><span class="istickedoff">, <span class="tickonlyfalse">False</span> -> <span class="nottickedoff">error "Bad Thing Happened"</span></span>
|
|
|
73
|
+<span class="lineno"> 26 </span><span class="spaces"> </span><span class="istickedoff">_ -> return "Hello"</span>
|
|
|
74
|
+<span class="lineno"> 27 </span><span class="spaces"> </span><span class="istickedoff">print t</span>
|
|
|
75
|
+<span class="lineno"> 28 </span><span class="spaces"> </span><span class="istickedoff">print foo2</span></span>
|
|
|
76
|
+<span class="lineno"> 29 </span>
|
|
|
77
|
+<span class="lineno"> 30 </span><span class="decl"><span class="istickedoff">foo x = do</span>
|
|
|
78
|
+<span class="lineno"> 31 </span><span class="spaces"> </span><span class="istickedoff">print x</span>
|
|
|
79
|
+<span class="lineno"> 32 </span><span class="spaces"> </span><span class="istickedoff">return <span class="nottickedoff">()</span></span></span>
|
|
|
80
|
+<span class="lineno"> 33 </span>
|
|
|
81
|
+<span class="lineno"> 34 </span><span class="decl"><span class="nottickedoff">unused_ a = a</span></span>
|
|
|
82
|
+<span class="lineno"> 35 </span>
|
|
|
83
|
+<span class="lineno"> 36 </span>badCase :: Int -> Int -> Int
|
|
|
84
|
+<span class="lineno"> 37 </span><span class="decl"><span class="istickedoff">badCase a b = </span>
|
|
|
85
|
+<span class="lineno"> 38 </span><span class="spaces"> </span><span class="istickedoff">if a > 100 </span>
|
|
|
86
|
+<span class="lineno"> 39 </span><span class="spaces"> </span><span class="istickedoff">then error "badCase" </span>
|
|
|
87
|
+<span class="lineno"> 40 </span><span class="spaces"> </span><span class="istickedoff">else if <span class="tickonlyfalse">a > 1000</span> </span>
|
|
|
88
|
+<span class="lineno"> 41 </span><span class="spaces"> </span><span class="istickedoff">then <span class="nottickedoff">1</span> </span>
|
|
|
89
|
+<span class="lineno"> 42 </span><span class="spaces"> </span><span class="istickedoff">else badCase (a + 1) <span class="nottickedoff">(b - 1)</span></span></span>
|
|
|
90
|
+<span class="lineno"> 43 </span>
|
|
|
91
|
+<span class="lineno"> 44 </span>
|
|
|
92
|
+<span class="lineno"> 45 </span><span class="decl"><span class="istickedoff">foo2 = (1,2, if <span class="tickonlytrue">True</span> then 3 else <span class="nottickedoff">4</span>)</span></span>
|
|
|
93
|
+<span class="lineno"> 46 </span>
|
|
|
94
|
+<span class="lineno"> 47 </span><span class="decl"><span class="istickedoff">otherwoz = True</span></span>
|
|
|
95
|
+
|
|
|
96
|
+</pre>
|
|
|
97
|
+</body>
|
|
|
98
|
+</html>
|
|
|
99
|
+Writing: hpc_index.html
|
|
|
100
|
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style type="text/css">table.bar { background-color: #f25913; }
|
|
|
101
|
+td.bar { background-color: #60de51; }
|
|
|
102
|
+td.invbar { background-color: #f25913; }
|
|
|
103
|
+table.dashboard { border-collapse: collapse ; border: solid 1px black }
|
|
|
104
|
+.dashboard td { border: solid 1px black }
|
|
|
105
|
+.dashboard th { border: solid 1px black }
|
|
|
106
|
+</style></head><body><table class="dashboard" width="100%" border="1"><tr><th rowspan="2"><a href="hpc_index.html">module</a></th><th colspan="3"><a href="hpc_index_fun.html">Top Level Definitions</a></th><th colspan="3"><a href="hpc_index_alt.html">Alternatives</a></th><th colspan="3"><a href="hpc_index_exp.html">Expressions</a></th></tr><tr><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th></tr><tr><td> <code>module <a href="Main.hs.html">Main</a></code></td><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr><tr></tr><tr style="background: #e0e0e0"><th align="left"> Program Coverage Total</th><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr></table></body></html>Writing: hpc_index_fun.html
|
|
|
107
|
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style type="text/css">table.bar { background-color: #f25913; }
|
|
|
108
|
+td.bar { background-color: #60de51; }
|
|
|
109
|
+td.invbar { background-color: #f25913; }
|
|
|
110
|
+table.dashboard { border-collapse: collapse ; border: solid 1px black }
|
|
|
111
|
+.dashboard td { border: solid 1px black }
|
|
|
112
|
+.dashboard th { border: solid 1px black }
|
|
|
113
|
+</style></head><body><table class="dashboard" width="100%" border="1"><tr><th rowspan="2"><a href="hpc_index.html">module</a></th><th colspan="3"><a href="hpc_index_fun.html">Top Level Definitions</a></th><th colspan="3"><a href="hpc_index_alt.html">Alternatives</a></th><th colspan="3"><a href="hpc_index_exp.html">Expressions</a></th></tr><tr><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th></tr><tr><td> <code>module <a href="Main.hs.html">Main</a></code></td><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr><tr></tr><tr style="background: #e0e0e0"><th align="left"> Program Coverage Total</th><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr></table></body></html>Writing: hpc_index_alt.html
|
|
|
114
|
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style type="text/css">table.bar { background-color: #f25913; }
|
|
|
115
|
+td.bar { background-color: #60de51; }
|
|
|
116
|
+td.invbar { background-color: #f25913; }
|
|
|
117
|
+table.dashboard { border-collapse: collapse ; border: solid 1px black }
|
|
|
118
|
+.dashboard td { border: solid 1px black }
|
|
|
119
|
+.dashboard th { border: solid 1px black }
|
|
|
120
|
+</style></head><body><table class="dashboard" width="100%" border="1"><tr><th rowspan="2"><a href="hpc_index.html">module</a></th><th colspan="3"><a href="hpc_index_fun.html">Top Level Definitions</a></th><th colspan="3"><a href="hpc_index_alt.html">Alternatives</a></th><th colspan="3"><a href="hpc_index_exp.html">Expressions</a></th></tr><tr><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th></tr><tr><td> <code>module <a href="Main.hs.html">Main</a></code></td><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr><tr></tr><tr style="background: #e0e0e0"><th align="left"> Program Coverage Total</th><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr></table></body></html>Writing: hpc_index_exp.html
|
|
|
121
|
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style type="text/css">table.bar { background-color: #f25913; }
|
|
|
122
|
+td.bar { background-color: #60de51; }
|
|
|
123
|
+td.invbar { background-color: #f25913; }
|
|
|
124
|
+table.dashboard { border-collapse: collapse ; border: solid 1px black }
|
|
|
125
|
+.dashboard td { border: solid 1px black }
|
|
|
126
|
+.dashboard th { border: solid 1px black }
|
|
|
127
|
+</style></head><body><table class="dashboard" width="100%" border="1"><tr><th rowspan="2"><a href="hpc_index.html">module</a></th><th colspan="3"><a href="hpc_index_fun.html">Top Level Definitions</a></th><th colspan="3"><a href="hpc_index_alt.html">Alternatives</a></th><th colspan="3"><a href="hpc_index_exp.html">Expressions</a></th></tr><tr><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th><th>%</th><th colspan="2">covered / total</th></tr><tr><td> <code>module <a href="Main.hs.html">Main</a></code></td><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr><tr></tr><tr style="background: #e0e0e0"><th align="left"> Program Coverage Total</th><td align="right">83%</td><td>5/6</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="83%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">58%</td><td>7/12</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="58%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td><td align="right">73%</td><td>73/100</td><td width="100"><table cellpadding="0" cellspacing="0" width="100%" class="bar"><tr><td><table cellpadding="0" cellspacing="0" width="73%"><tr><td height="12" class="bar"></td></tr></table></td></tr></table></td></tr></table></body></html> |