From 4d93d328a5d4bc812e2dde77fb8832c73d0065c8 Mon Sep 17 00:00:00 2001 From: uckelman Date: Tue, 2 Nov 2010 21:46:30 +0000 Subject: * Renamed BridgeTest to BridgeImplTest. * Skip all tests which require a DB until we figure out how to mock PDOs. git-svn-id: https://vassalengine.svn.sourceforge.net/svnroot/vassalengine/site-src/trunk@7438 67b53d14-2c14-4ace-a08f-0dab2b34000c --- test/BridgeImplTest.php | 360 ++++++++++++++++++++++++++++++++++++++++++++++++ test/BridgeTest.php | 300 ---------------------------------------- test/PhpBB3ImplTest.php | 4 + 3 files changed, 364 insertions(+), 300 deletions(-) create mode 100644 test/BridgeImplTest.php delete mode 100644 test/BridgeTest.php (limited to 'test') diff --git a/test/BridgeImplTest.php b/test/BridgeImplTest.php new file mode 100644 index 0000000..bd1864c --- /dev/null +++ b/test/BridgeImplTest.php @@ -0,0 +1,360 @@ +. +# + +require_once('PHPUnit/Framework.php'); +require_once('src/BridgeImpl.php'); + +class BridgeImplTest extends PHPUnit_Framework_TestCase { + +/* + protected $db; + + protected function setUp() { + $this->db = new PDO('mysql:host=localhost;dbname=test'); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + + // + // Build posts table + // + $this->db->exec('DROP TABLE IF EXISTS posts'); + + $this->db->exec( + 'CREATE TABLE posts (' . + 'post_id MEDIUMINT UNSIGNED, ' . + 'message_id VARCHAR(255) NOT NULL, ' . + 'in_reply_to VARCHAR(255), ' . + 'edit_id MEDIUMINT NOT NULL AUTO_INCREMENT, ' . + 'UNIQUE KEY (message_id), ' . + 'PRIMARY KEY (edit_id), ' . + 'INDEX (post_id))' + ); + + $this->db->exec( + 'INSERT INTO posts (post_id, message_id, in_reply_to) ' . + 'VALUES (' . + '1, ' . + '"<20100302094228.33F0310091@charybdis.ellipsis.cx>", ' . + '"<1267473003.m2f.17543@www.vassalengine.org>"' . + ')' + ); + + // + // Build forums table + // + $this->db->exec('DROP TABLE IF EXISTS forums'); + + $this->db->exec( + 'CREATE TABLE forums (' . + 'list_name VARCHAR(255) NOT NULL, ' . + 'forum_id MEDIUMINT UNSIGNED NOT NULL, ' . + 'PRIMARY KEY (list_name), ' . + 'INDEX (forum_id))' + ); + + $this->db->exec( + 'INSERT INTO forums (list_name, forum_id) ' . + 'VALUES (' . + '"messages@test.nomic.net", 2' . + ')' + ); + } + + protected function tearDown() { + $this->db = null; + } +*/ + + protected $globalsBackup = false; + + protected $db; + + public function setUp() { + $this->markTestSkipped(); + + $this->db = $this->getMock( + 'PDO', array('__construct', 'quote', 'query'), array(), 'TestPDO', false + ); + } + + public function testGetPostId2() { + $message_id = 1; + +/* + $db->expects($this->once()) + ->method('quote') + ->with($message_id) + ->will($this->returnValue("'$message_id'")); + $db->expects($this->once()) + ->method('query') + ->will($this->returnValue($message_id)); +*/ + +// $bridge = new BridgeImpl($db); +// $this->assertEquals($message_id, $bridge->getPostId($message_id)); + } + + + + /** + * @dataProvider providerGetPostId + */ +/* + public function testGetPostId($message_id, $expected, $ex) { + $db = $this->getMock('PDO', array('foo'), array(), '', false); + $db->expects($this->once()) + ->method('quote') + ->with($message_id) + ->will($this->returnValue("'$message_id'")); + $db->expects($this->once()) + ->method('query') + ->will($this->returnValue($message_id)); + + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($db); + $this->assertEquals($expected, $bridge->getPostId($message_id)); + } + + public function providerGetPostId() { + return array( + array(null, null, 'Exception'), + array('bogus', false, null), + array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 1, null), + ); + } +*/ + + /** + * @dataProvider providerGetMessageId + */ +/* + public function testGetMessageId($post_id, $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals($expected, $bridge->getMessageId($post_id)); + } + + public function providerGetMessageId() { + return array( + array(null, null, 'Exception'), + array(0, false, null), + array(1, '<20100302094228.33F0310091@charybdis.ellipsis.cx>', null), + ); + } +*/ + /** + * @dataProvider providerReserveEditId + */ +/* + public function testReserveEditId($postId, $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals($expected, $bridge->reserveEditId($postId)); + } + + public function providerReserveEditId() { + return array( + array(null, null, 'Exception'), + array(1, 2, null), + array(2, 2, null) + ); + } +*/ + /** + * @dataProvider providerRegisterByEditId + */ +/* + public function testRegisterByEditId($editId, $messageId, $inReplyTo, + $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals( + $expected, + $bridge->registerByEditId($editId, $messageId, $inReplyTo) + ); + } + + public function providerRegisterByEditId() { + return array( + array(null, null, null, null, 'Exception'), + array( + 2, + '<20100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + false, + null + ), + array( + 1, + '<20100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + true, + null + ), + ); + } +*/ + + /** + * @dataProvider providerRegisterByMessageId + */ +/* + public function testRegisterByMessageId($messageId, $inReplyTo, + $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals( + $expected, + $bridge->registerByMessageId($messageId, $inReplyTo) + ); + } + + public function providerRegisterByMessageId() { + return array( + array(null, null, null, 'Exception'), + array( + '<20100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + false, + null + ), + array( + '<20100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + false, + null + ), + array( + '<10100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + 2, + null + ), + array( + '<10100302094228.33F0310091@charybdis.ellipsis.cx>', + null, + 2, + null + ) + ); + } +*/ + + /** + * @dataProvider providerUnregisterMessage + */ +/* + public function testUnregisterMessage($editId, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $bridge->unregisterMessage($editId); + } + + public function providerUnregisterMessage() { + return array( + array(null, 'Exception'), + array(1, null), + array(2, 'Exception') + ); + } +*/ + + /** + * @dataProvider providerRemovePost + */ +/* + public function testRemovePost($postId, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $bridge->removePost($postId); + } + + public function providerRemovePost() { + return array( + array(null, 'Exception'), + array(1, null), + array(2, 'Exception') + ); + } +*/ + + /** + * @dataProvider providerGetDefaultForumId + */ +/* + public function testGetDefaultForumId($list, $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals($expected, $bridge->getDefaultForumId($list)); + } + + public function providerGetDefaultForumId() { + return array( + array(null, null, 'Exception'), + array('bogus', false, null), + array('messages@test.nomic.net', 2, null), + ); + } +*/ + + /** + * @dataProvider providerGetLists + */ +/* + public function testGetLists($forumId, $expected, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + $this->assertEquals($expected, $bridge->getLists($forumId)); + } + + public function providerGetLists() { + return array( + array(null, null, 'Exception'), + array(1, array(), null), + array(2, array('messages@test.nomic.net'), null) + ); + } +*/ + + /** + * @dataProvider providerSetPostId + */ +/* + public function testSetPostId($messageId, $postId, $ex) { + if ($ex) $this->setExpectedException($ex); + $bridge = new BridgeImpl($this->db); + + $bridge->setPostId($messageId, $postId); + $this->assertEquals($bridge->getPostId($messageId), $postId); + } + + public function providerSetPostId() { + return array( + array(null, 1, 'Exception'), + array('<10100302094228.33F0310091@charybdis.ellipsis.cx>', null, 'Exception'), + array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 2, null), + array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 3, null), + ); + } +*/ +} + +?> diff --git a/test/BridgeTest.php b/test/BridgeTest.php deleted file mode 100644 index 9d88075..0000000 --- a/test/BridgeTest.php +++ /dev/null @@ -1,300 +0,0 @@ -. -# - -require_once('PHPUnit/Framework.php'); -require_once('src/Bridge.php'); - -class BridgeTest extends PHPUnit_Framework_TestCase { - - protected $db; - - protected function setUp() { - $this->db = new PDO('mysql:host=localhost;dbname=test'); - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); - - // - // Build posts table - // - $this->db->exec('DROP TABLE IF EXISTS posts'); - - $this->db->exec( - 'CREATE TABLE posts (' . - 'post_id MEDIUMINT UNSIGNED, ' . - 'message_id VARCHAR(255) NOT NULL, ' . - 'in_reply_to VARCHAR(255), ' . - 'edit_id MEDIUMINT NOT NULL AUTO_INCREMENT, ' . - 'UNIQUE KEY (message_id), ' . - 'PRIMARY KEY (edit_id), ' . - 'INDEX (post_id))' - ); - - $this->db->exec( - 'INSERT INTO posts (post_id, message_id, in_reply_to) ' . - 'VALUES (' . - '1, ' . - '"<20100302094228.33F0310091@charybdis.ellipsis.cx>", ' . - '"<1267473003.m2f.17543@www.vassalengine.org>"' . - ')' - ); - - // - // Build forums table - // - $this->db->exec('DROP TABLE IF EXISTS forums'); - - $this->db->exec( - 'CREATE TABLE forums (' . - 'list_name VARCHAR(255) NOT NULL, ' . - 'forum_id MEDIUMINT UNSIGNED NOT NULL, ' . - 'PRIMARY KEY (list_name), ' . - 'INDEX (forum_id))' - ); - - $this->db->exec( - 'INSERT INTO forums (list_name, forum_id) ' . - 'VALUES (' . - '"messages@test.nomic.net", 2' . - ')' - ); - } - - protected function tearDown() { - $this->db = null; - } - - /** - * @dataProvider providerGetPostId - */ - public function testGetPostId($message_id, $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals($expected, $bridge->getPostId($message_id)); - } - - public function providerGetPostId() { - return array( - array(null, null, 'Exception'), - array('bogus', false, null), - array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 1, null), - ); - } - - /** - * @dataProvider providerGetMessageId - */ - public function testGetMessageId($post_id, $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals($expected, $bridge->getMessageId($post_id)); - } - - public function providerGetMessageId() { - return array( - array(null, null, 'Exception'), - array(0, false, null), - array(1, '<20100302094228.33F0310091@charybdis.ellipsis.cx>', null), - ); - } - - /** - * @dataProvider providerReserveEditId - */ - public function testReserveEditId($postId, $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals($expected, $bridge->reserveEditId($postId)); - } - - public function providerReserveEditId() { - return array( - array(null, null, 'Exception'), - array(1, 2, null), - array(2, 2, null) - ); - } - - /** - * @dataProvider providerRegisterByEditId - */ - public function testRegisterByEditId($editId, $messageId, $inReplyTo, - $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals( - $expected, - $bridge->registerByEditId($editId, $messageId, $inReplyTo) - ); - } - - public function providerRegisterByEditId() { - return array( - array(null, null, null, null, 'Exception'), - array( - 2, - '<20100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - false, - null - ), - array( - 1, - '<20100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - true, - null - ), - ); - } - - /** - * @dataProvider providerRegisterByMessageId - */ - public function testRegisterByMessageId($messageId, $inReplyTo, - $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals( - $expected, - $bridge->registerByMessageId($messageId, $inReplyTo) - ); - } - - public function providerRegisterByMessageId() { - return array( - array(null, null, null, 'Exception'), - array( - '<20100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - false, - null - ), - array( - '<20100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - false, - null - ), - array( - '<10100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - 2, - null - ), - array( - '<10100302094228.33F0310091@charybdis.ellipsis.cx>', - null, - 2, - null - ) - ); - } - - /** - * @dataProvider providerUnregisterMessage - */ - public function testUnregisterMessage($editId, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $bridge->unregisterMessage($editId); - } - - public function providerUnregisterMessage() { - return array( - array(null, 'Exception'), - array(1, null), - array(2, 'Exception') - ); - } - - /** - * @dataProvider providerRemovePost - */ - public function testRemovePost($postId, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $bridge->removePost($postId); - } - - public function providerRemovePost() { - return array( - array(null, 'Exception'), - array(1, null), - array(2, 'Exception') - ); - } - - /** - * @dataProvider providerGetDefaultForumId - */ - public function testGetDefaultForumId($list, $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals($expected, $bridge->getDefaultForumId($list)); - } - - public function providerGetDefaultForumId() { - return array( - array(null, null, 'Exception'), - array('bogus', false, null), - array('messages@test.nomic.net', 2, null), - ); - } - - /** - * @dataProvider providerGetLists - */ - public function testGetLists($forumId, $expected, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - $this->assertEquals($expected, $bridge->getLists($forumId)); - } - - public function providerGetLists() { - return array( - array(null, null, 'Exception'), - array(1, array(), null), - array(2, array('messages@test.nomic.net'), null) - ); - } - - /** - * @dataProvider providerSetPostId - */ - public function testSetPostId($messageId, $postId, $ex) { - if ($ex) $this->setExpectedException($ex); - $bridge = new Bridge($this->db); - - $bridge->setPostId($messageId, $postId); - $this->assertEquals($bridge->getPostId($messageId), $postId); - } - - public function providerSetPostId() { - return array( - array(null, 1, 'Exception'), - array('<10100302094228.33F0310091@charybdis.ellipsis.cx>', null, 'Exception'), - array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 2, null), - array('<20100302094228.33F0310091@charybdis.ellipsis.cx>', 3, null), - ); - } -} - -?> diff --git a/test/PhpBB3ImplTest.php b/test/PhpBB3ImplTest.php index 63a828d..d25e551 100644 --- a/test/PhpBB3ImplTest.php +++ b/test/PhpBB3ImplTest.php @@ -24,6 +24,10 @@ require_once('PHPUnit/Framework.php'); class PhpBB3ImplTest extends PHPUnit_Framework_TestCase { + protected function setUp() { + $this->markTestSkipped(); + } + /** * phpBB3 uses many globals; due to the way tests are run, we cannot * easily get these globals into the right scope so that the methods -- cgit v1.2.1