From 58fd93577141669e76f81e27ee287379943d78d3 Mon Sep 17 00:00:00 2001 From: uckelman Date: Tue, 2 Nov 2010 22:52:31 +0000 Subject: Added (incomplete) tests. git-svn-id: https://vassalengine.svn.sourceforge.net/svnroot/vassalengine/site-src/trunk@7442 67b53d14-2c14-4ace-a08f-0dab2b34000c --- test/PhpBB3ToMailmanTest.php | 100 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 test/PhpBB3ToMailmanTest.php (limited to 'test/PhpBB3ToMailmanTest.php') diff --git a/test/PhpBB3ToMailmanTest.php b/test/PhpBB3ToMailmanTest.php new file mode 100644 index 0000000..cd3f1cd --- /dev/null +++ b/test/PhpBB3ToMailmanTest.php @@ -0,0 +1,100 @@ +. +# + +require_once('PHPUnit/Framework.php'); + +require_once('Log.php'); + +require_once(__DIR__ . '/../src/Bridge.php'); +require_once(__DIR__ . '/../src/PhpBB3.php'); +require_once(__DIR__ . '/../src/PhpBB3ToMailman.php'); + +class User { + public $data = array(); + + public function __construct($userName, $userEmail) { + $this->data['username'] = $userName; + $this->data['user_email'] = $userEmail; + } +} + +class PhpBB3ToMailmanTest extends PHPUnit_Framework_TestCase { + + public function testProcessPost() { + $this->markTestIncomplete(); + + $config = array('upload_path' => ''); + $user = new User('Joel Uckelman', 'uckelman@nomic.net'); + $mode = 'post'; + $data = array( + 'attachment_data' => array(), + 'bbcode_uid' => '3i2cqt66', + 'forum_id' => '3', + 'post_id' => '1', + 'message' => '[b:3i2cqt66]This is a[/b:3i2cqt66] test of [i:3i2cqt66]the BBCode[/i:3i2cqt66] parser. Will [u:3i2cqt66][i:3i2cqt66]it[/i:3i2cqt66][/u:3i2cqt66] parse? Also, throw in some difficult characters: 1 < 2 < 4 > 3.', + 'topic_first_post_id' => '' + ); + $post_data = array( + 'forum_name' => 'Test forum', + 'post_subject' => 'This is a test post' + ); + + $_SERVER['SERVER_NAME'] = 'vassalengine.org/forum'; + $_SERVER['SCRIPT_NAME'] = '/var/www/forum/viewtopic.php'; + + $bridge = $this->getMock('Bridge'); + $bridge->expects($this->once()) + ->method('getLists') + ->with($data['forum_id']) + ->will($this->returnValue(array('messages@vassalengine.org'))); + $bridge->expects($this->once()) + ->method('reserveEditId') + ->with($data['post_id']) + ->will($this->returnValue(1)); + $bridge->expects($this->once()) + ->method('registerByEditId') + ->with(1, $this->anything(), $this->anything()) + ->will($this->returnValue(true)); + + $phpbb = $this->getMock('PhpBB3'); + $phpbb->expects($this->once()) + ->method('getPostTime') + ->with($data['post_id']) + ->will($this->returnValue(1288562162)); + + $mailer = $this->getMock('Mail'); + $mailer->expects($this->once()) + ->method('send') + ->with('messages@vassalengine.org', + $this->anything(), $this->anything()) + ->will($this->returnValue(null)); + + $logger = &Log::singleton('null'); + + $conduit = new PhpBB3ToMailman($bridge, $phpbb, $mailer, $logger); + + + $conduit->process($config, $user, $mode, $data, $post_data); + } +} + +?> -- cgit v1.2.3