From 55c4ac1bfe565f1ca7f537fdd8b7a201be28e581 Mon Sep 17 00:00:00 2001
From: xue <>
Date: Thu, 10 Nov 2005 12:47:19 +0000
Subject: Initial import of prado framework
---
tests/UnitTests/simpletest/test/xml_test.php | 189 +++++++++++++++++++++++++++
1 file changed, 189 insertions(+)
create mode 100644 tests/UnitTests/simpletest/test/xml_test.php
(limited to 'tests/UnitTests/simpletest/test/xml_test.php')
diff --git a/tests/UnitTests/simpletest/test/xml_test.php b/tests/UnitTests/simpletest/test/xml_test.php
new file mode 100644
index 00000000..afb3faf9
--- /dev/null
+++ b/tests/UnitTests/simpletest/test/xml_test.php
@@ -0,0 +1,189 @@
+ 2));
+ $this->assertEqual($nesting->getSize(), 2);
+ }
+ }
+
+ class TestOfXmlStructureParsing extends UnitTestCase {
+
+ function testValidXml() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectNever('paintGroupStart');
+ $listener->expectNever('paintGroupEnd');
+ $listener->expectNever('paintCaseStart');
+ $listener->expectNever('paintCaseEnd');
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("\n"));
+ }
+
+ function testEmptyGroup() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintGroupStart', array('a_group', 7));
+ $listener->expectOnce('paintGroupEnd', array('a_group'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("a_group\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $parser->parse("\n");
+ $listener->tally();
+ }
+
+ function testEmptyCase() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintCaseStart', array('a_case'));
+ $listener->expectOnce('paintCaseEnd', array('a_case'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("a_case\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $parser->parse("\n");
+ $listener->tally();
+ }
+
+ function testEmptyMethod() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintCaseStart', array('a_case'));
+ $listener->expectOnce('paintCaseEnd', array('a_case'));
+ $listener->expectOnce('paintMethodStart', array('a_method'));
+ $listener->expectOnce('paintMethodEnd', array('a_method'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $parser->parse("a_case\n");
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("a_method\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $listener->tally();
+ }
+
+ function testNestedGroup() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectArgumentsAt(0, 'paintGroupStart', array('a_group', 7));
+ $listener->expectArgumentsAt(1, 'paintGroupStart', array('b_group', 3));
+ $listener->expectCallCount('paintGroupStart', 2);
+ $listener->expectArgumentsAt(0, 'paintGroupEnd', array('b_group'));
+ $listener->expectArgumentsAt(1, 'paintGroupEnd', array('a_group'));
+ $listener->expectCallCount('paintGroupEnd', 2);
+ $parser = &new SimpleTestXmlParser($listener);
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("a_group\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("b_group\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $this->assertTrue($parser->parse("\n"));
+ $parser->parse("\n");
+ $listener->tally();
+ }
+ }
+
+ class AnyOldSignal {
+ var $stuff = true;
+ }
+
+ class TestOfXmlResultsParsing extends UnitTestCase {
+
+ function sendValidStart(&$parser) {
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $parser->parse("a_case\n");
+ $parser->parse("\n");
+ $parser->parse("a_method\n");
+ }
+
+ function sendValidEnd(&$parser) {
+ $parser->parse("\n");
+ $parser->parse("\n");
+ $parser->parse("\n");
+ }
+
+ function testPass() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintPass', array('a_message'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse("a_message\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+
+ function testFail() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintFail', array('a_message'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse("a_message\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+
+ function testException() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintException', array('a_message'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse("a_message\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+
+ function testSignal() {
+ $signal = new AnyOldSignal();
+ $signal->stuff = "Hello";
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintSignal', array('a_signal', $signal));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse(
+ "\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+
+ function testMessage() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintMessage', array('a_message'));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse("a_message\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+
+ function testFormattedMessage() {
+ $listener = &new MockSimpleScorer($this);
+ $listener->expectOnce('paintFormattedMessage', array("\na\tmessage\n"));
+ $parser = &new SimpleTestXmlParser($listener);
+ $this->sendValidStart($parser);
+ $this->assertTrue($parser->parse("\n"));
+ $this->sendValidEnd($parser);
+ $listener->tally();
+ }
+ }
+?>
\ No newline at end of file
--
cgit v1.2.3