summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/PhpBB3Message.php49
-rw-r--r--test/MailmanMessageTest.php (renamed from test/MessageTest.php)12
-rw-r--r--test/PhpBB3MessageTest.php92
3 files changed, 145 insertions, 8 deletions
diff --git a/src/PhpBB3Message.php b/src/PhpBB3Message.php
new file mode 100644
index 0000000..5d3cced
--- /dev/null
+++ b/src/PhpBB3Message.php
@@ -0,0 +1,49 @@
+<?php
+
+require_once(__DIR__ . '/Message.php');
+
+class PhpBB3Message implements Message {
+
+ protected $user;
+ protected $post;
+
+ public function __construct($user, $data) {
+ $this->user = $user;
+ $this->post = $post;
+ }
+
+ public function getSource() {
+ return null;
+ }
+
+ public function getPostId() {
+ return $this->post['post_id'];
+ }
+
+ public function getFrom() {
+ return '"' . $this->user->data['username'] . '" <'
+ . $this->user->data['user_email'] . '>';
+ }
+
+ public function getSubject() {
+ return $this->post['post_subject'];
+ }
+
+ public function getMessageId() {
+ return null;
+ }
+
+ public function getInReplyTo() {
+ return null;
+ }
+
+ public function getReferences() {
+ return null;
+ }
+
+ public function getBody() {
+ return null;
+ }
+}
+
+?>
diff --git a/test/MessageTest.php b/test/MailmanMessageTest.php
index 2338e60..c6c6405 100644
--- a/test/MessageTest.php
+++ b/test/MailmanMessageTest.php
@@ -1,14 +1,12 @@
<?php
require_once('PHPUnit/Framework.php');
-require_once('src/Message.php');
-
-class MessageTest extends PHPUnit_Framework_TestCase {
+require_once('src/MailmanMessage.php');
+class MailmanMessageTest extends PHPUnit_Framework_TestCase {
public function provider() {
return array(
array(array(
- 'class' => 'MailmanMessage',
'data' => file_get_contents(__DIR__ . '/1'),
'source' => 'messages@forums.vassalengine.org',
'post_id' => '',
@@ -18,14 +16,12 @@ class MessageTest extends PHPUnit_Framework_TestCase {
'in_reply_to' => '<1267473003.m2f.17543@www.vassalengine.org>',
'references' => '<1267171317.m2f.17507@www.vassalengine.org> <1267473003.m2f.17543@www.vassalengine.org>',
'body' => ''
- ))
+ ))
);
}
protected function buildMessage($params) {
- require_once('src/' . $params['class'] . '.php');
- $cl = new ReflectionClass($params['class']);
- return $cl->newInstance($params['data']);
+ return new MailmanMessage($params['data']);
}
/**
diff --git a/test/PhpBB3MessageTest.php b/test/PhpBB3MessageTest.php
new file mode 100644
index 0000000..b3f4f0e
--- /dev/null
+++ b/test/PhpBB3MessageTest.php
@@ -0,0 +1,92 @@
+<?php
+
+require_once('PHPUnit/Framework.php');
+require_once('src/PhpBB3Message.php');
+
+class PhpBB3MessageTest extends PHPUnit_Framework_TestCase {
+
+ public function provider() {
+ return array(
+/*
+ array(array(
+ 'data' => '',
+ 'source' => '',
+ 'post_id' => '',
+ 'from' => '',
+ 'subject' => '',
+ 'message_id' => '',
+ 'in_reply_to' => '',
+ 'references' => '',
+ 'body' => ''
+ ))
+*/
+ );
+ }
+
+ protected function buildMessage($params) {
+ return new PhpBB3Message();
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetSource($expected) {
+ $this->markTestIncomplete();
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetPostId($expected) {
+ $this->markTestIncomplete();
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetFrom($expected) {
+ $msg = $this->buildMessage($expected);
+ $this->assertEquals($expected['from'], $msg->getFrom());
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetSubject($expected) {
+ $msg = $this->buildMessage($expected);
+ $this->assertEquals($expected['subject'], $msg->getSubject());
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetMessageId($expected) {
+ $msg = $this->buildMessage($expected);
+ $this->assertEquals($expected['message_id'], $msg->getMessageId());
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetInReplyTo($expected) {
+ $msg = $this->buildMessage($expected);
+ $this->assertEquals($expected['in_reply_to'], $msg->getInReplyTo());
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetReferences($expected) {
+ $msg = $this->buildMessage($expected);
+ $this->assertEquals($expected['references'], $msg->getReferences());
+ }
+
+ /**
+ * @dataProvider provider
+ */
+ public function testGetBody($expected) {
+ $this->markTestIncomplete();
+ }
+}
+
+?>