Skip to content

Commit 69c0e0f

Browse files
author
desmaj
committed
added coverage report output
1 parent 13082cf commit 69c0e0f

22 files changed

Lines changed: 6687 additions & 1 deletion

.coverage

5.08 KB
Binary file not shown.

.hgignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
FormEncode.egg-info
1+
FormEncode.egg-info
2+
\.pyc

coverage/formencode.api.html

Lines changed: 514 additions & 0 deletions
Large diffs are not rendered by default.

coverage/formencode.compound.html

Lines changed: 244 additions & 0 deletions
Large diffs are not rendered by default.

coverage/formencode.context.html

Lines changed: 193 additions & 0 deletions
Large diffs are not rendered by default.

coverage/formencode.declarative.html

Lines changed: 263 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
<html>
2+
<head>
3+
<title>formencode.doctest_xml_compare</title>
4+
</head>
5+
<body>
6+
formencode.doctest_xml_compare
7+
<style>
8+
.coverage pre {float: left; margin: 0px 1em; border: none;
9+
padding: 0px; }
10+
.num pre { margin: 0px }
11+
.nocov, .nocov pre {background-color: #faa}
12+
.cov, .cov pre {background-color: #cfc}
13+
div.coverage div { clear: both; height: 1.1em}
14+
</style>
15+
<div class="stats">
16+
Covered: 36 lines<br/>
17+
Missed: 82 lines<br/>
18+
Skipped 13 lines<br/>
19+
Percent: 30 %<br/>
20+
21+
</div>
22+
<div class="coverage">
23+
<div class="cov"><span class="num"><pre> 1</pre></span><pre>try:</pre></div>
24+
<div class="cov"><span class="num"><pre> 2</pre></span><pre> import doctest</pre></div>
25+
<div class="cov"><span class="num"><pre> 3</pre></span><pre> doctest.OutputChecker</pre></div>
26+
<div class="nocov"><span class="num"><pre> 4</pre></span><pre>except AttributeError:</pre></div>
27+
<div class="nocov"><span class="num"><pre> 5</pre></span><pre> import util.doctest24 as doctest</pre></div>
28+
<div class="cov"><span class="num"><pre> 6</pre></span><pre>try:</pre></div>
29+
<div class="cov"><span class="num"><pre> 7</pre></span><pre> import xml.etree.ElementTree as ET</pre></div>
30+
<div class="nocov"><span class="num"><pre> 8</pre></span><pre>except ImportError:</pre></div>
31+
<div class="nocov"><span class="num"><pre> 9</pre></span><pre> import elementtree.ElementTree as ET</pre></div>
32+
<div class="cov"><span class="num"><pre> 10</pre></span><pre>from xml.parsers.expat import ExpatError as XMLParseError</pre></div>
33+
<div class="skip"><span class="num"><pre> 11</pre></span><pre></pre></div>
34+
<div class="cov"><span class="num"><pre> 12</pre></span><pre>RealOutputChecker = doctest.OutputChecker</pre></div>
35+
<div class="skip"><span class="num"><pre> 13</pre></span><pre></pre></div>
36+
<div class="cov"><span class="num"><pre> 14</pre></span><pre>def debug(*msg):</pre></div>
37+
<div class="nocov"><span class="num"><pre> 15</pre></span><pre> import sys</pre></div>
38+
<div class="nocov"><span class="num"><pre> 16</pre></span><pre> print &gt;&gt; sys.stderr, ' '.join(map(str, msg))</pre></div>
39+
<div class="skip"><span class="num"><pre> 17</pre></span><pre></pre></div>
40+
<div class="cov"><span class="num"><pre> 18</pre></span><pre>class HTMLOutputChecker(RealOutputChecker):</pre></div>
41+
<div class="skip"><span class="num"><pre> 19</pre></span><pre></pre></div>
42+
<div class="cov"><span class="num"><pre> 20</pre></span><pre> def check_output(self, want, got, optionflags):</pre></div>
43+
<div class="nocov"><span class="num"><pre> 21</pre></span><pre> normal = RealOutputChecker.check_output(self, want, got, optionflags)</pre></div>
44+
<div class="nocov"><span class="num"><pre> 22</pre></span><pre> if normal or not got:</pre></div>
45+
<div class="nocov"><span class="num"><pre> 23</pre></span><pre> return normal</pre></div>
46+
<div class="nocov"><span class="num"><pre> 24</pre></span><pre> try:</pre></div>
47+
<div class="nocov"><span class="num"><pre> 25</pre></span><pre> want_xml = make_xml(want)</pre></div>
48+
<div class="nocov"><span class="num"><pre> 26</pre></span><pre> except XMLParseError, e:</pre></div>
49+
<div class="nocov"><span class="num"><pre> 27</pre></span><pre> pass</pre></div>
50+
<div class="nocov"><span class="num"><pre> 28</pre></span><pre> else:</pre></div>
51+
<div class="nocov"><span class="num"><pre> 29</pre></span><pre> try:</pre></div>
52+
<div class="nocov"><span class="num"><pre> 30</pre></span><pre> got_xml = make_xml(got)</pre></div>
53+
<div class="nocov"><span class="num"><pre> 31</pre></span><pre> except XMLParseError:</pre></div>
54+
<div class="nocov"><span class="num"><pre> 32</pre></span><pre> pass</pre></div>
55+
<div class="nocov"><span class="num"><pre> 33</pre></span><pre> else:</pre></div>
56+
<div class="nocov"><span class="num"><pre> 34</pre></span><pre> if xml_compare(want_xml, got_xml):</pre></div>
57+
<div class="nocov"><span class="num"><pre> 35</pre></span><pre> return True</pre></div>
58+
<div class="nocov"><span class="num"><pre> 36</pre></span><pre> return False</pre></div>
59+
<div class="skip"><span class="num"><pre> 37</pre></span><pre></pre></div>
60+
<div class="cov"><span class="num"><pre> 38</pre></span><pre> def output_difference(self, example, got, optionflags):</pre></div>
61+
<div class="nocov"><span class="num"><pre> 39</pre></span><pre> actual = RealOutputChecker.output_difference(</pre></div>
62+
<div class="nocov"><span class="num"><pre> 40</pre></span><pre> self, example, got, optionflags)</pre></div>
63+
<div class="nocov"><span class="num"><pre> 41</pre></span><pre> want_xml = got_xml = None</pre></div>
64+
<div class="nocov"><span class="num"><pre> 42</pre></span><pre> try:</pre></div>
65+
<div class="nocov"><span class="num"><pre> 43</pre></span><pre> want_xml = make_xml(example.want)</pre></div>
66+
<div class="nocov"><span class="num"><pre> 44</pre></span><pre> want_norm = make_string(want_xml)</pre></div>
67+
<div class="nocov"><span class="num"><pre> 45</pre></span><pre> except XMLParseError, e:</pre></div>
68+
<div class="nocov"><span class="num"><pre> 46</pre></span><pre> if example.want.startswith('&lt;'):</pre></div>
69+
<div class="nocov"><span class="num"><pre> 47</pre></span><pre> want_norm = '(bad XML: %s)' % e</pre></div>
70+
<div class="skip"><span class="num"><pre> 48</pre></span><pre> # '&lt;xml&gt;%s&lt;/xml&gt;' % example.want</pre></div>
71+
<div class="nocov"><span class="num"><pre> 49</pre></span><pre> else:</pre></div>
72+
<div class="nocov"><span class="num"><pre> 50</pre></span><pre> return actual</pre></div>
73+
<div class="nocov"><span class="num"><pre> 51</pre></span><pre> try:</pre></div>
74+
<div class="nocov"><span class="num"><pre> 52</pre></span><pre> got_xml = make_xml(got)</pre></div>
75+
<div class="nocov"><span class="num"><pre> 53</pre></span><pre> got_norm = make_string(got_xml)</pre></div>
76+
<div class="nocov"><span class="num"><pre> 54</pre></span><pre> except XMLParseError, e:</pre></div>
77+
<div class="nocov"><span class="num"><pre> 55</pre></span><pre> if example.want.startswith('&lt;'):</pre></div>
78+
<div class="nocov"><span class="num"><pre> 56</pre></span><pre> got_norm = '(bad XML: %s)' % e</pre></div>
79+
<div class="nocov"><span class="num"><pre> 57</pre></span><pre> else:</pre></div>
80+
<div class="nocov"><span class="num"><pre> 58</pre></span><pre> return actual</pre></div>
81+
<div class="nocov"><span class="num"><pre> 59</pre></span><pre> s = '%s\nXML Wanted: %s\nXML Got : %s\n' % (</pre></div>
82+
<div class="nocov"><span class="num"><pre> 60</pre></span><pre> actual, want_norm, got_norm)</pre></div>
83+
<div class="nocov"><span class="num"><pre> 61</pre></span><pre> if got_xml and want_xml:</pre></div>
84+
<div class="nocov"><span class="num"><pre> 62</pre></span><pre> result = []</pre></div>
85+
<div class="nocov"><span class="num"><pre> 63</pre></span><pre> xml_compare(want_xml, got_xml, result.append)</pre></div>
86+
<div class="nocov"><span class="num"><pre> 64</pre></span><pre> s += 'Difference report:\n%s\n' % '\n'.join(result)</pre></div>
87+
<div class="nocov"><span class="num"><pre> 65</pre></span><pre> return s</pre></div>
88+
<div class="skip"><span class="num"><pre> 66</pre></span><pre></pre></div>
89+
<div class="cov"><span class="num"><pre> 67</pre></span><pre>def xml_compare(x1, x2, reporter=None):</pre></div>
90+
<div class="cov"><span class="num"><pre> 68</pre></span><pre> if x1.tag != x2.tag:</pre></div>
91+
<div class="nocov"><span class="num"><pre> 69</pre></span><pre> if reporter:</pre></div>
92+
<div class="nocov"><span class="num"><pre> 70</pre></span><pre> reporter('Tags do not match: %s and %s' % (x1.tag, x2.tag))</pre></div>
93+
<div class="nocov"><span class="num"><pre> 71</pre></span><pre> return False</pre></div>
94+
<div class="cov"><span class="num"><pre> 72</pre></span><pre> for name, value in x1.attrib.items():</pre></div>
95+
<div class="cov"><span class="num"><pre> 73</pre></span><pre> if x2.attrib.get(name) != value:</pre></div>
96+
<div class="nocov"><span class="num"><pre> 74</pre></span><pre> if reporter:</pre></div>
97+
<div class="nocov"><span class="num"><pre> 75</pre></span><pre> reporter('Attributes do not match: %s=%r, %s=%r'</pre></div>
98+
<div class="nocov"><span class="num"><pre> 76</pre></span><pre> % (name, value, name, x2.attrib.get(name)))</pre></div>
99+
<div class="nocov"><span class="num"><pre> 77</pre></span><pre> return False</pre></div>
100+
<div class="cov"><span class="num"><pre> 78</pre></span><pre> for name in x2.attrib.keys():</pre></div>
101+
<div class="cov"><span class="num"><pre> 79</pre></span><pre> if not x1.attrib.has_key(name):</pre></div>
102+
<div class="nocov"><span class="num"><pre> 80</pre></span><pre> if reporter:</pre></div>
103+
<div class="nocov"><span class="num"><pre> 81</pre></span><pre> reporter('x2 has an attribute x1 is missing: %s'</pre></div>
104+
<div class="nocov"><span class="num"><pre> 82</pre></span><pre> % name)</pre></div>
105+
<div class="nocov"><span class="num"><pre> 83</pre></span><pre> return False</pre></div>
106+
<div class="cov"><span class="num"><pre> 84</pre></span><pre> if not text_compare(x1.text, x2.text):</pre></div>
107+
<div class="nocov"><span class="num"><pre> 85</pre></span><pre> if reporter:</pre></div>
108+
<div class="nocov"><span class="num"><pre> 86</pre></span><pre> reporter('text: %r != %r' % (x1.text, x2.text))</pre></div>
109+
<div class="nocov"><span class="num"><pre> 87</pre></span><pre> return False</pre></div>
110+
<div class="cov"><span class="num"><pre> 88</pre></span><pre> if not text_compare(x1.tail, x2.tail):</pre></div>
111+
<div class="nocov"><span class="num"><pre> 89</pre></span><pre> if reporter:</pre></div>
112+
<div class="nocov"><span class="num"><pre> 90</pre></span><pre> reporter('tail: %r != %r' % (x1.tail, x2.tail))</pre></div>
113+
<div class="nocov"><span class="num"><pre> 91</pre></span><pre> return False</pre></div>
114+
<div class="cov"><span class="num"><pre> 92</pre></span><pre> cl1 = x1.getchildren()</pre></div>
115+
<div class="cov"><span class="num"><pre> 93</pre></span><pre> cl2 = x2.getchildren()</pre></div>
116+
<div class="cov"><span class="num"><pre> 94</pre></span><pre> if len(cl1) != len(cl2):</pre></div>
117+
<div class="nocov"><span class="num"><pre> 95</pre></span><pre> if reporter:</pre></div>
118+
<div class="nocov"><span class="num"><pre> 96</pre></span><pre> reporter('children length differs, %i != %i'</pre></div>
119+
<div class="nocov"><span class="num"><pre> 97</pre></span><pre> % (len(cl1), len(cl2)))</pre></div>
120+
<div class="nocov"><span class="num"><pre> 98</pre></span><pre> return False</pre></div>
121+
<div class="cov"><span class="num"><pre> 99</pre></span><pre> i = 0</pre></div>
122+
<div class="cov"><span class="num"><pre>100</pre></span><pre> for c1, c2 in zip(cl1, cl2):</pre></div>
123+
<div class="cov"><span class="num"><pre>101</pre></span><pre> i += 1</pre></div>
124+
<div class="cov"><span class="num"><pre>102</pre></span><pre> if not xml_compare(c1, c2, reporter=reporter):</pre></div>
125+
<div class="nocov"><span class="num"><pre>103</pre></span><pre> if reporter:</pre></div>
126+
<div class="nocov"><span class="num"><pre>104</pre></span><pre> reporter('children %i do not match: %s'</pre></div>
127+
<div class="nocov"><span class="num"><pre>105</pre></span><pre> % (i, c1.tag))</pre></div>
128+
<div class="nocov"><span class="num"><pre>106</pre></span><pre> return False</pre></div>
129+
<div class="cov"><span class="num"><pre>107</pre></span><pre> return True</pre></div>
130+
<div class="skip"><span class="num"><pre>108</pre></span><pre></pre></div>
131+
<div class="cov"><span class="num"><pre>109</pre></span><pre>def text_compare(t1, t2):</pre></div>
132+
<div class="cov"><span class="num"><pre>110</pre></span><pre> if not t1 and not t2:</pre></div>
133+
<div class="cov"><span class="num"><pre>111</pre></span><pre> return True</pre></div>
134+
<div class="cov"><span class="num"><pre>112</pre></span><pre> if t1 == '*' or t2 == '*':</pre></div>
135+
<div class="nocov"><span class="num"><pre>113</pre></span><pre> return True</pre></div>
136+
<div class="cov"><span class="num"><pre>114</pre></span><pre> return (t1 or '').strip() == (t2 or '').strip()</pre></div>
137+
<div class="skip"><span class="num"><pre>115</pre></span><pre></pre></div>
138+
<div class="cov"><span class="num"><pre>116</pre></span><pre>def make_xml(s):</pre></div>
139+
<div class="nocov"><span class="num"><pre>117</pre></span><pre> return ET.XML('&lt;xml&gt;%s&lt;/xml&gt;' % s)</pre></div>
140+
<div class="skip"><span class="num"><pre>118</pre></span><pre></pre></div>
141+
<div class="cov"><span class="num"><pre>119</pre></span><pre>def make_string(xml):</pre></div>
142+
<div class="nocov"><span class="num"><pre>120</pre></span><pre> if isinstance(xml, (str, unicode)):</pre></div>
143+
<div class="nocov"><span class="num"><pre>121</pre></span><pre> xml = make_xml(xml)</pre></div>
144+
<div class="nocov"><span class="num"><pre>122</pre></span><pre> s = ET.tostring(xml)</pre></div>
145+
<div class="nocov"><span class="num"><pre>123</pre></span><pre> if s == '&lt;xml /&gt;':</pre></div>
146+
<div class="nocov"><span class="num"><pre>124</pre></span><pre> return ''</pre></div>
147+
<div class="nocov"><span class="num"><pre>125</pre></span><pre> assert s.startswith('&lt;xml&gt;') and s.endswith('&lt;/xml&gt;'), repr(s)</pre></div>
148+
<div class="nocov"><span class="num"><pre>126</pre></span><pre> return s[5:-6]</pre></div>
149+
<div class="skip"><span class="num"><pre>127</pre></span><pre></pre></div>
150+
<div class="cov"><span class="num"><pre>128</pre></span><pre>def install():</pre></div>
151+
<div class="cov"><span class="num"><pre>129</pre></span><pre> doctest.OutputChecker = HTMLOutputChecker</pre></div>
152+
<div class="skip"><span class="num"><pre>130</pre></span><pre></pre></div>
153+
<div class="skip"><span class="num"><pre>131</pre></span><pre></pre></div>
154+
</div>
155+
</body>
156+
</html>
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
<html>
2+
<head>
3+
<title>formencode.fieldstorage</title>
4+
</head>
5+
<body>
6+
formencode.fieldstorage
7+
<style>
8+
.coverage pre {float: left; margin: 0px 1em; border: none;
9+
padding: 0px; }
10+
.num pre { margin: 0px }
11+
.nocov, .nocov pre {background-color: #faa}
12+
.cov, .cov pre {background-color: #cfc}
13+
div.coverage div { clear: both; height: 1.1em}
14+
</style>
15+
<div class="stats">
16+
Covered: 0 lines<br/>
17+
Missed: 9 lines<br/>
18+
Skipped 5 lines<br/>
19+
Percent: 0 %<br/>
20+
21+
</div>
22+
<div class="coverage">
23+
<div class="skip"><span class="num"><pre> 1</pre></span><pre>## FormEncode, a Form processor</pre></div>
24+
<div class="skip"><span class="num"><pre> 2</pre></span><pre>## Copyright (C) 2003, Ian Bicking &lt;ianb@colorstudy.com&gt;</pre></div>
25+
<div class="nocov"><span class="num"><pre> 3</pre></span><pre>&quot;&quot;&quot;</pre></div>
26+
<div class="nocov"><span class="num"><pre> 4</pre></span><pre>Wrapper class for use with cgi.FieldStorage types for file uploads</pre></div>
27+
<div class="nocov"><span class="num"><pre> 5</pre></span><pre>&quot;&quot;&quot;</pre></div>
28+
<div class="skip"><span class="num"><pre> 6</pre></span><pre></pre></div>
29+
<div class="nocov"><span class="num"><pre> 7</pre></span><pre>import cgi</pre></div>
30+
<div class="skip"><span class="num"><pre> 8</pre></span><pre></pre></div>
31+
<div class="nocov"><span class="num"><pre> 9</pre></span><pre>def convert_fieldstorage(fs):</pre></div>
32+
<div class="nocov"><span class="num"><pre>10</pre></span><pre> if fs.filename:</pre></div>
33+
<div class="nocov"><span class="num"><pre>11</pre></span><pre> return fs</pre></div>
34+
<div class="nocov"><span class="num"><pre>12</pre></span><pre> else:</pre></div>
35+
<div class="nocov"><span class="num"><pre>13</pre></span><pre> return None</pre></div>
36+
<div class="skip"><span class="num"><pre>14</pre></span><pre></pre></div>
37+
</div>
38+
</body>
39+
</html>

0 commit comments

Comments
 (0)