//self::assertArrayHasKey('direct_message', $result);
}
- /**
- * Test the api_direct_messages_box() function.
- *
- * @return void
- */
- public function testApiDirectMessagesBoxWithVerbose()
- {
- /*
- $result = api_direct_messages_box('json', 'sentbox', 'true');
- self::assertEquals(
- [
- '$result' => [
- 'result' => 'error',
- 'message' => 'no mails available'
- ]
- ],
- $result
- );
- */
- }
- /**
- * Test the api_direct_messages_box() function with a RSS result.
- *
- * @return void
- */
- public function testApiDirectMessagesBoxWithRss()
- {
- //$result = api_direct_messages_box('rss', 'sentbox', 'false');
- //self::assertXml($result, 'direct-messages');
- }
-
- /**
- * Test the api_direct_messages_box() function without an authenticated user.
- *
- * @return void
- */
- public function testApiDirectMessagesBoxWithUnallowedUser()
- {
- //$this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class);
- //BasicAuth::setCurrentUserID();
- //api_direct_messages_box('json', 'sentbox', 'false');
- }
-
- /**
- * Test the api_direct_messages_sentbox() function.
- *
- * @return void
- */
- public function testApiDirectMessagesSentbox()
- {
- //$result = api_direct_messages_sentbox('json');
- //self::assertArrayHasKey('direct_message', $result);
- }
/**
* Test the api_direct_messages_conversation() function.
--- /dev/null
+<?php
+
+namespace Friendica\Test\src\Module\Api\Twitter\DirectMessages;
+
+use Friendica\App\Router;
+use Friendica\DI;
+use Friendica\Factory\Api\Twitter\DirectMessage;
+use Friendica\Module\Api\Twitter\DirectMessages\Sent;
+use Friendica\Test\src\Module\Api\ApiTest;
+
+class SentTest extends ApiTest
+{
+ /**
+ * Test the api_direct_messages_box() function.
+ *
+ * @return void
+ */
+ public function testApiDirectMessagesBoxWithVerbose()
+ {
+ $directMessage = new DirectMessage(DI::logger(), DI::dba(), DI::twitterUser());
+
+ $sent = new Sent($directMessage, DI::dba(), DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::GET], ['extension' => 'json']);
+ $response = $sent->run([
+ 'friendica_verbose' => true,
+ ]);
+
+ $json = $this->toJson($response);
+
+ self::assertEquals('error', $json->result);
+ self::assertEquals('no mails available', $json->message);
+ }
+
+ /**
+ * Test the api_direct_messages_box() function with a RSS result.
+ *
+ * @return void
+ */
+ public function testApiDirectMessagesBoxWithRss()
+ {
+ $directMessage = new DirectMessage(DI::logger(), DI::dba(), DI::twitterUser());
+
+ $sent = new Sent($directMessage, DI::dba(), DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::GET], ['extension' => 'rss']);
+ $response = $sent->run();
+
+ self::assertXml((string)$response->getBody(), 'direct-messages');
+ }
+
+ /**
+ * Test the api_direct_messages_box() function without an authenticated user.
+ *
+ * @return void
+ */
+ public function testApiDirectMessagesBoxWithUnallowedUser()
+ {
+ self::markTestIncomplete('Needs BasicAuth as dynamic method for overriding first');
+
+ //$this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class);
+ //BasicAuth::setCurrentUserID();
+ //api_direct_messages_box('json', 'sentbox', 'false');
+ }
+}