g2 Thu, 16 Jul 2009 11:51:57 +0000
URL: http://svn.php.net/viewvc?view=revision&revision=284182
Changed paths:
A php/phpruntests/trunk/src/testcase/output/rtTestOutputWriterHTML.php
Log:
added outputWriter html
Added: php/phpruntests/trunk/src/testcase/output/rtTestOutputWriterHTML.php
===================================================================
--- php/phpruntests/trunk/src/testcase/output/rtTestOutputWriterHTML.php
(rev 0)
+++ php/phpruntests/trunk/src/testcase/output/rtTestOutputWriterHTML.php
2009-07-16 11:51:57 UTC (rev 284182)
@@ -0,0 +1,103 @@
+<?php
+/**
+ * rtTestOutputWriterHTML
+ *
+ * Write test output in HTML
+ *
+ * @category Testing
+ * @package RUNTESTS
+ * @author Zoe Slattery <[email protected]>
+ * @author Stefan Priebsch <[email protected]>
+ * @author Georg Gradwohl <[email protected]>
+ * @copyright 2009 The PHP Group
+ * @license http://www.php.net/license/3_01.txt PHP License 3.01
+ * @link http://qa.php.net/
+ *
+ */
+class rtTestOutputWriterHTML extends rtTestOutputWriter
+{
+ private $dom = null;
+ private $stage = null; // base-node which holds the content
+
+
+ public function __construct()
+ {
+ $this->type = 'html';
+
+ $docTitle = 'PHP RUN-TEST RESULTS';
+
+ // dom
+ $imp = new DOMImplementation();
+ $dtd = $imp->createDocumentType("html", "-//W3C//DTD XHTML 1.0
Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd");
+ $this->dom = $imp->createDocument("", "", $dtd);
+
+ // html
+ $htmlNode = $this->dom->createElement('html');
+ $this->dom->appendChild($htmlNode);
+
+ // head
+ $headNode = $this->dom->createElement('head');
+ $htmlNode->appendChild($headNode);
+ $headNode->appendChild($this->dom->createElement('title', $docTitle));
+
+ // body
+ $bodyNode = $this->dom->createElement('body');
+ $htmlNode->appendChild($bodyNode);
+
+ // stage
+ $this->stage = $this->dom->createElement('div');
+ $this->stage->setAttribute('id', 'stage');
+ $bodyNode->appendChild($this->stage);
+
+ $this->stage->appendChild($this->dom->createElement('h1', $docTitle));
+ }
+
+
+ public function createOutput()
+ {
+ // table
+ $table = $this->dom->createElement('table');
+ $this->stage->appendChild($table);
+
+ // thead
+ $thead = $this->dom->createElement('thead');
+ $table->appendChild($thead);
+ $tr = $this->dom->createElement('tr');
+ $thead->appendChild($tr);
+ $tr->appendChild($this->dom->createElement('th', 'NAME'));
+ $tr->appendChild($this->dom->createElement('th', 'STATUS'));
+
+
+ foreach ($this->resultList as $testGroupResults) {
+
+ $tbody = $this->dom->createElement('tbody');
+ $table->appendChild($tbody);
+
+ foreach ($testGroupResults as $testResult) {
+
+ $tr = $this->dom->createElement('tr');
+ $tbody->appendChild($tr);
+
+ // name
+ $td = $this->dom->createElement('td',
$testResult->getName());
+ $td->setAttribute('class', 'mainCol');
+ $tr->appendChild($td);
+
+ // status
+ $status = $testResult->getStatus();
+ $s = $status->__toString();
+
+ $td = $this->dom->createElement('td', strtoupper($s));
+ $td->setAttribute('class', $s);
+ $tr->appendChild($td);
+ }
+ }
+
+ $this->dom->encoding = 'UTF-8';
+ $this->dom->formatOutput = true;
+ $this->dom->normalizeDocument();
+ $this->output = $this->dom->saveXML();
+ }
+
+}
+?>
\ No newline at end of file
Property changes on:
php/phpruntests/trunk/src/testcase/output/rtTestOutputWriterHTML.php
___________________________________________________________________
Added: svn:keywords
+
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php