Megatest

Diff
Login

Differences From Artifact [d8685b31e4]:

To Artifact [cf82318c54]:


170
171
172
173
174
175
176
177

178
179
180
181
182
183
184





185
186
187
188

189
190
191

192
193
194
195
196
197

198
199
200

201
202

203

204
205

206
207
208
209
210
211
212
170
171
172
173
174
175
176

177







178
179
180
181
182
183
184
185
186
187
188
189

190
191
192
193
194
195

196
197
198

199
200
201
202

203
204
205
206
207
208
209
210
211
212
213







-
+
-
-
-
-
-
-
-
+
+
+
+
+




+


-
+





-
+


-
+


+
-
+


+







		(sqlite3:for-each-row 
		 (lambda (id itempath state status run_duration logf comment)
		   (hash-table-set! counts status (+ 1 (hash-table-ref/default counts status 0)))
		   (hash-table-set! statecounts state (+ 1 (hash-table-ref/default statecounts state 0)))
		   (set! outtxt (conc outtxt "<tr>"
				      "<td><a href=\"" itempath "/" logf "\"> " itempath "</a></td>" 
				      "<td>" state    "</td>" 
				      "<td><font color=" (cond
				      "<td><font color=" (common:get-color-from-status status)
							  ((equal? status "PASS") "green")
							  ((equal? status "FAIL") "red")
							  (else "blue")) ">"   status   "</font></td>"
							  "<td>" (if (equal? comment "")
								     "&nbsp;"
								     comment) "</td>"
							  "</tr>")))
				      ">"   status   "</font></td>"
				      "<td>" (if (equal? comment "")
						 "&nbsp;"
						 comment) "</td>"
						 "</tr>")))
		 db
		 "SELECT id,item_path,state,status,run_duration,final_logf,comment FROM tests WHERE run_id=? AND testname=? AND item_path != '';"
		 run-id test-name)

		(print "<table><tr><td valign=\"top\">")
		;; Print out stats for status
		(set! tot 0)
		(print "<h2>State stats</h2><table cellspacing=\"0\" border=\"1\">")
		(print "<table cellspacing=\"0\" border=\"1\"><tr><td colspan=\"2\"><h2>State stats</h2></td></tr>")
		(for-each (lambda (state)
			    (set! tot (+ tot (hash-table-ref statecounts state)))
			    (print "<tr><td>" state "</td><td>" (hash-table-ref statecounts state) "</td></tr>"))
			  (hash-table-keys statecounts))
		(print "<tr><td>Total</td><td>" tot "</td></tr></table>")

		(print "</td><td valign=\"top\">")
		;; Print out stats for state
		(set! tot 0)
		(print "<h2>Status stats</h2><table cellspacing=\"0\" border=\"1\">")
		(print "<table cellspacing=\"0\" border=\"1\"><tr><td colspan=\"2\"><h2>Status stats</h2></td></tr>")
		(for-each (lambda (status)
			    (set! tot (+ tot (hash-table-ref counts status)))
			    (print "<tr><td><font color=\"" (common:get-color-from-status status) "\">" status
			    (print "<tr><td>" status "</td><td>" (hash-table-ref counts status) "</td></tr>"))
				   "</font></td><td>" (hash-table-ref counts status) "</td></tr>"))
			  (hash-table-keys counts))
		(print "<tr><td>Total</td><td>" tot "</td></tr></table>")
		(print "</td></td></tr></table>")

		(print "<table cellspacing=\"0\" border=\"1\">" 
		       "<tr><td>Item</td><td>State</td><td>Status</td><td>Comment</td>"
		       outtxt "</table></body></html>")
		(release-dot-lock outputfilename)))
	    (close-output-port oup)
	    (change-directory orig-dir)