X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=tests%2Flegacy%2FApiTest.php;h=fea2bd5f1bf4b07bc5baaec89dca5091ebc759a5;hb=732ef70b8d1b0a8334c1d1444ce1ed376a1760e1;hp=081b0428187ee7001a7c061fd6265fce892d9ddf;hpb=f5a3f8039df2031397cf236ab54b37b991c028be;p=friendica.git diff --git a/tests/legacy/ApiTest.php b/tests/legacy/ApiTest.php index 081b042818..fea2bd5f1b 100644 --- a/tests/legacy/ApiTest.php +++ b/tests/legacy/ApiTest.php @@ -7,18 +7,13 @@ namespace Friendica\Test\legacy; use Friendica\App; use Friendica\Core\Config\Capability\IManageConfigValues; -use Friendica\Core\PConfig\Capability\IManagePersonalConfigValues; -use Friendica\Core\Protocol; use Friendica\DI; -use Friendica\Model\Post; use Friendica\Module\Api\ApiResponse; use Friendica\Module\BaseApi; -use Friendica\Network\HTTPException; use Friendica\Security\BasicAuth; use Friendica\Test\FixtureTest; use Friendica\Util\Arrays; use Friendica\Util\DateTimeFormat; -use Friendica\Util\Temporal; use Monolog\Handler\TestHandler; require_once __DIR__ . '/../../include/api.php'; @@ -117,55 +112,6 @@ class ApiTest extends FixtureTest BasicAuth::setCurrentUserID($this->selfUser['id']); } - /** - * Assert that an user array contains expected keys. - * - * @param array $user User array - * - * @return void - */ - private function assertSelfUser(array $user) - { - self::assertEquals($this->selfUser['id'], $user['uid']); - self::assertEquals($this->selfUser['id'], $user['cid']); - self::assertEquals(1, $user['self']); - self::assertEquals('DFRN', $user['location']); - self::assertEquals($this->selfUser['name'], $user['name']); - self::assertEquals($this->selfUser['nick'], $user['screen_name']); - self::assertEquals('dfrn', $user['network']); - self::assertTrue($user['verified']); - } - - /** - * Assert that an user array contains expected keys. - * - * @param array $user User array - * - * @return void - */ - private function assertOtherUser(array $user = []) - { - self::assertEquals($this->otherUser['id'], $user['id']); - self::assertEquals($this->otherUser['id'], $user['id_str']); - self::assertEquals($this->otherUser['name'], $user['name']); - self::assertEquals($this->otherUser['nick'], $user['screen_name']); - self::assertFalse($user['verified']); - } - - /** - * Assert that a status array contains expected keys. - * - * @param array $status Status array - * - * @return void - */ - private function assertStatus(array $status = []) - { - self::assertIsString($status['text'] ?? ''); - self::assertIsInt($status['id'] ?? ''); - // We could probably do more checks here. - } - /** * Assert that a list array contains expected keys. * @@ -197,25 +143,6 @@ class ApiTest extends FixtureTest // We could probably do more checks here. } - /** - * Get the path to a temporary empty PNG image. - * - * @return string Path - */ - private function getTempImage() - { - $tmpFile = tempnam(sys_get_temp_dir(), 'tmp_file'); - file_put_contents( - $tmpFile, - base64_decode( - // Empty 1x1 px PNG image - 'iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PchI7wAAAABJRU5ErkJggg==' - ) - ); - - return $tmpFile; - } - /** * Test the api_user() function. * @@ -867,29 +794,6 @@ class ApiTest extends FixtureTest ); } - /** - * Test the api_account_verify_credentials() function. - * - * @return void - */ - public function testApiAccountVerifyCredentials() - { - // self::assertArrayHasKey('user', api_account_verify_credentials('json')); - } - - /** - * Test the api_account_verify_credentials() function without an authenticated user. - * - * @return void - */ - public function testApiAccountVerifyCredentialsWithoutAuthenticatedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // $_SESSION['authenticated'] = false; - // api_account_verify_credentials('json'); - } - /** * Test the api_statuses_mediap() function. * @@ -897,6 +801,7 @@ class ApiTest extends FixtureTest */ public function testApiStatusesMediap() { + /* DI::args()->setArgc(2); $_FILES = [ @@ -914,6 +819,7 @@ class ApiTest extends FixtureTest $result = api_statuses_mediap('json'); self::assertStatus($result['status']); + */ } /** @@ -923,10 +829,10 @@ class ApiTest extends FixtureTest */ public function testApiStatusesMediapWithoutAuthenticatedUser() { - $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - BasicAuth::setCurrentUserID(); - $_SESSION['authenticated'] = false; - api_statuses_mediap('json'); + // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); + // BasicAuth::setCurrentUserID(); + // $_SESSION['authenticated'] = false; + // api_statuses_mediap('json'); } /** @@ -936,6 +842,7 @@ class ApiTest extends FixtureTest */ public function testApiStatusesUpdate() { + /* $_REQUEST['status'] = 'Status content #friendica'; $_REQUEST['in_reply_to_status_id'] = -1; $_REQUEST['lat'] = 48; @@ -949,840 +856,115 @@ class ApiTest extends FixtureTest 'tmp_name' => $this->getTempImage(), 'name' => 'spacer.png', 'type' => 'image/png' - ] - ]; - - $result = api_statuses_update('json'); - self::assertStatus($result['status']); - } - - /** - * Test the api_statuses_update() function with an HTML status. - * - * @return void - */ - public function testApiStatusesUpdateWithHtml() - { - $_REQUEST['htmlstatus'] = 'Status content'; - - $result = api_statuses_update('json'); - self::assertStatus($result['status']); - } - - /** - * Test the api_statuses_update() function without an authenticated user. - * - * @return void - */ - public function testApiStatusesUpdateWithoutAuthenticatedUser() - { - $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - BasicAuth::setCurrentUserID(); - $_SESSION['authenticated'] = false; - api_statuses_update('json'); - } - - /** - * Test the api_statuses_update() function with a parent status. - * - * @return void - */ - public function testApiStatusesUpdateWithParent() - { - $this->markTestIncomplete('This triggers an exit() somewhere and kills PHPUnit.'); - } - - /** - * Test the api_statuses_update() function with a media_ids parameter. - * - * @return void - */ - public function testApiStatusesUpdateWithMediaIds() - { - $this->markTestIncomplete(); - } - - /** - * Test the api_statuses_update() function with the throttle limit reached. - * - * @return void - */ - public function testApiStatusesUpdateWithDayThrottleReached() - { - $this->markTestIncomplete(); - } - - /** - * Test the api_media_upload() function. - * @runInSeparateProcess - * @preserveGlobalState disabled - */ - public function testApiMediaUpload() - { - $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - api_media_upload(); - } - - /** - * Test the api_media_upload() function without an authenticated user. - * - * @return void - */ - public function testApiMediaUploadWithoutAuthenticatedUser() - { - $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - BasicAuth::setCurrentUserID(); - $_SESSION['authenticated'] = false; - api_media_upload(); - } - - /** - * Test the api_media_upload() function with an invalid uploaded media. - * - * @return void - */ - public function testApiMediaUploadWithMedia() - { - $this->expectException(\Friendica\Network\HTTPException\InternalServerErrorException::class); - $_FILES = [ - 'media' => [ - 'id' => 666, - 'tmp_name' => 'tmp_name' - ] - ]; - api_media_upload(); - } - - /** - * Test the api_media_upload() function with an valid uploaded media. - * - * @return void - */ - public function testApiMediaUploadWithValidMedia() - { - $_FILES = [ - 'media' => [ - 'id' => 666, - 'size' => 666, - 'width' => 666, - 'height' => 666, - 'tmp_name' => $this->getTempImage(), - 'name' => 'spacer.png', - 'type' => 'image/png' - ] - ]; - $app = DI::app(); - DI::args()->setArgc(2); - - $result = api_media_upload(); - self::assertEquals('image/png', $result['media']['image']['image_type']); - self::assertEquals(1, $result['media']['image']['w']); - self::assertEquals(1, $result['media']['image']['h']); - self::assertNotEmpty($result['media']['image']['friendica_preview_url']); - } - - /** - * Test the api_status_show() function. - */ - public function testApiStatusShowWithJson() - { - // $result = api_status_show('json', 1); - // self::assertStatus($result['status']); - } - - /** - * Test the api_status_show() function with an XML result. - */ - public function testApiStatusShowWithXml() - { - // $result = api_status_show('xml', 1); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_get_last_status() function - */ - public function testApiGetLastStatus() - { - // $item = api_get_last_status($this->selfUser['id'], $this->selfUser['id']); - // self::assertNotNull($item); - } - - /** - * Test the api_users_show() function. - * - * @return void - */ - public function testApiUsersShow() - { - /* - $result = api_users_show('json'); - // We can't use assertSelfUser() here because the user object is missing some properties. - self::assertEquals($this->selfUser['id'], $result['user']['cid']); - self::assertEquals('DFRN', $result['user']['location']); - self::assertEquals($this->selfUser['name'], $result['user']['name']); - self::assertEquals($this->selfUser['nick'], $result['user']['screen_name']); - self::assertTrue($result['user']['verified']); - */ - } - - /** - * Test the api_users_show() function with an XML result. - * - * @return void - */ - public function testApiUsersShowWithXml() - { - // $result = api_users_show('xml'); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_users_search() function. - * - * @return void - */ - public function testApiUsersSearch() - { - // $_GET['q'] = 'othercontact'; - // $result = api_users_search('json'); - // self::assertOtherUser($result['users'][0]); - } - - /** - * Test the api_users_search() function with an XML result. - * - * @return void - */ - public function testApiUsersSearchWithXml() - { - // $_GET['q'] = 'othercontact'; - // $result = api_users_search('xml'); - // self::assertXml($result, 'users'); - } - - /** - * Test the api_users_search() function without a GET q parameter. - * - * @return void - */ - public function testApiUsersSearchWithoutQuery() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_users_search('json'); - } - - /** - * Test the api_users_lookup() function. - * - * @return void - */ - public function testApiUsersLookup() - { - // $this->expectException(\Friendica\Network\HTTPException\NotFoundException::class); - // api_users_lookup('json'); - } - - /** - * Test the api_users_lookup() function with an user ID. - * - * @return void - */ - public function testApiUsersLookupWithUserId() - { - // $_REQUEST['user_id'] = $this->otherUser['id']; - // $result = api_users_lookup('json'); - // self::assertOtherUser($result['users'][0]); - } - - /** - * Test the api_search() function. - * - * @return void - */ - public function testApiSearch() - { - /* - $_REQUEST['q'] = 'reply'; - $_REQUEST['max_id'] = 10; - $result = api_search('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - self::assertStringContainsStringIgnoringCase('reply', $status['text'], '', true); - } - */ - } - - /** - * Test the api_search() function a count parameter. - * - * @return void - */ - public function testApiSearchWithCount() - { - /* - $_REQUEST['q'] = 'reply'; - $_REQUEST['count'] = 20; - $result = api_search('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - self::assertStringContainsStringIgnoringCase('reply', $status['text'], '', true); - } - */ - } - - /** - * Test the api_search() function with an rpp parameter. - * - * @return void - */ - public function testApiSearchWithRpp() - { - /* - $_REQUEST['q'] = 'reply'; - $_REQUEST['rpp'] = 20; - $result = api_search('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - self::assertStringContainsStringIgnoringCase('reply', $status['text'], '', true); - } - */ - } - - /** - * Test the api_search() function with an q parameter contains hashtag. - * @doesNotPerformAssertions - */ - public function testApiSearchWithHashtag() - { - /* - $_REQUEST['q'] = '%23friendica'; - $result = api_search('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - self::assertStringContainsStringIgnoringCase('#friendica', $status['text'], '', true); - } - */ - } - - /** - * Test the api_search() function with an exclude_replies parameter. - * @doesNotPerformAssertions - */ - public function testApiSearchWithExcludeReplies() - { - /* - $_REQUEST['max_id'] = 10; - $_REQUEST['exclude_replies'] = true; - $_REQUEST['q'] = 'friendica'; - $result = api_search('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_search() function without an authenticated user. - * - * @return void - */ - public function testApiSearchWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_search('json'); - } - - /** - * Test the api_search() function without any GET query parameter. - * - * @return void - */ - public function testApiSearchWithoutQuery() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_search('json'); - } - - /** - * Test the api_statuses_home_timeline() function. - * - * @return void - */ - public function testApiStatusesHomeTimeline() - { - /* - $_REQUEST['max_id'] = 10; - $_REQUEST['exclude_replies'] = true; - $_REQUEST['conversation_id'] = 1; - $result = api_statuses_home_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_home_timeline() function with a negative page parameter. - * - * @return void - */ - public function testApiStatusesHomeTimelineWithNegativePage() - { - /* - $_REQUEST['page'] = -2; - $result = api_statuses_home_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_home_timeline() with an unallowed user. - * - * @return void - */ - public function testApiStatusesHomeTimelineWithUnallowedUser() - { - /* - $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - BasicAuth::setCurrentUserID(); - api_statuses_home_timeline('json'); - */ - } - - /** - * Test the api_statuses_home_timeline() function with an RSS result. - * - * @return void - */ - public function testApiStatusesHomeTimelineWithRss() - { - // $result = api_statuses_home_timeline('rss'); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_statuses_public_timeline() function. - * - * @return void - */ - public function testApiStatusesPublicTimeline() - { - /* - $_REQUEST['max_id'] = 10; - $_REQUEST['conversation_id'] = 1; - $result = api_statuses_public_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_public_timeline() function with the exclude_replies parameter. - * - * @return void - */ - public function testApiStatusesPublicTimelineWithExcludeReplies() - { - /* - $_REQUEST['max_id'] = 10; - $_REQUEST['exclude_replies'] = true; - $result = api_statuses_public_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_public_timeline() function with a negative page parameter. - * - * @return void - */ - public function testApiStatusesPublicTimelineWithNegativePage() - { - /* - $_REQUEST['page'] = -2; - $result = api_statuses_public_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_public_timeline() function with an unallowed user. - * - * @return void - */ - public function testApiStatusesPublicTimelineWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_statuses_public_timeline('json'); - } - - /** - * Test the api_statuses_public_timeline() function with an RSS result. - * - * @return void - */ - public function testApiStatusesPublicTimelineWithRss() - { - // $result = api_statuses_public_timeline('rss'); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_statuses_networkpublic_timeline() function. - * - * @return void - */ - public function testApiStatusesNetworkpublicTimeline() - { - /* - $_REQUEST['max_id'] = 10; - $result = api_statuses_networkpublic_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_networkpublic_timeline() function with a negative page parameter. - * - * @return void - */ - public function testApiStatusesNetworkpublicTimelineWithNegativePage() - { - /* - $_REQUEST['page'] = -2; - $result = api_statuses_networkpublic_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_networkpublic_timeline() function with an unallowed user. - * - * @return void - */ - public function testApiStatusesNetworkpublicTimelineWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_statuses_networkpublic_timeline('json'); - } - - /** - * Test the api_statuses_networkpublic_timeline() function with an RSS result. - * - * @return void - */ - public function testApiStatusesNetworkpublicTimelineWithRss() - { - // $result = api_statuses_networkpublic_timeline('rss'); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_statuses_show() function. - * - * @return void - */ - public function testApiStatusesShow() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_statuses_show('json'); - } - - /** - * Test the api_statuses_show() function with an ID. - * - * @return void - */ - public function testApiStatusesShowWithId() - { - // DI::args()->setArgv(['', '', '', 1]); - // $result = api_statuses_show('json'); - // self::assertStatus($result['status']); - } - - /** - * Test the api_statuses_show() function with the conversation parameter. - * - * @return void - */ - public function testApiStatusesShowWithConversation() - { - /* - DI::args()->setArgv(['', '', '', 1]); - $_REQUEST['conversation'] = 1; - $result = api_statuses_show('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_statuses_show() function with an unallowed user. - * - * @return void - */ - public function testApiStatusesShowWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_statuses_show('json'); - } - - /** - * Test the api_conversation_show() function. - * - * @return void - */ - public function testApiConversationShow() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_conversation_show('json'); - } - - /** - * Test the api_conversation_show() function with an ID. - * - * @return void - */ - public function testApiConversationShowWithId() - { - /* - DI::args()->setArgv(['', '', '', 1]); - $_REQUEST['max_id'] = 10; - $_REQUEST['page'] = -2; - $result = api_conversation_show('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_conversation_show() function with an unallowed user. - * - * @return void - */ - public function testApiConversationShowWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_conversation_show('json'); - } - - /** - * Test the api_statuses_repeat() function. - * - * @return void - */ - public function testApiStatusesRepeat() - { - $this->expectException(\Friendica\Network\HTTPException\ForbiddenException::class); - api_statuses_repeat('json'); - } - - /** - * Test the api_statuses_repeat() function without an authenticated user. - * - * @return void - */ - public function testApiStatusesRepeatWithoutAuthenticatedUser() - { - $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - BasicAuth::setCurrentUserID(); - $_SESSION['authenticated'] = false; - api_statuses_repeat('json'); - } - - /** - * Test the api_statuses_repeat() function with an ID. - * - * @return void - */ - public function testApiStatusesRepeatWithId() - { - DI::args()->setArgv(['', '', '', 1]); - $result = api_statuses_repeat('json'); - self::assertStatus($result['status']); - - // Also test with a shared status - DI::args()->setArgv(['', '', '', 5]); - $result = api_statuses_repeat('json'); - self::assertStatus($result['status']); - } - - /** - * Test the api_statuses_destroy() function. - * - * @return void - */ - public function testApiStatusesDestroy() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_statuses_destroy('json'); - } + ] + ]; - /** - * Test the api_statuses_destroy() function without an authenticated user. - * - * @return void - */ - public function testApiStatusesDestroyWithoutAuthenticatedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // $_SESSION['authenticated'] = false; - // api_statuses_destroy('json'); + $result = api_statuses_update('json'); + self::assertStatus($result['status']); + */ } /** - * Test the api_statuses_destroy() function with an ID. + * Test the api_statuses_update() function with an HTML status. * * @return void */ - public function testApiStatusesDestroyWithId() + public function testApiStatusesUpdateWithHtml() { - // DI::args()->setArgv(['', '', '', 1]); - // $result = api_statuses_destroy('json'); - // self::assertStatus($result['status']); + /* + $_REQUEST['htmlstatus'] = 'Status content'; + + $result = api_statuses_update('json'); + self::assertStatus($result['status']); + */ } /** - * Test the api_statuses_mentions() function. + * Test the api_statuses_update() function without an authenticated user. * * @return void */ - public function testApiStatusesMentions() + public function testApiStatusesUpdateWithoutAuthenticatedUser() { /* - $this->app->setLoggedInUserNickname($this->selfUser['nick']); - $_REQUEST['max_id'] = 10; - $result = api_statuses_mentions('json'); - self::assertEmpty($result['status']); - // We should test with mentions in the database. + $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); + BasicAuth::setCurrentUserID(); + $_SESSION['authenticated'] = false; + api_statuses_update('json'); */ } /** - * Test the api_statuses_mentions() function with a negative page parameter. + * Test the api_statuses_update() function with a parent status. * * @return void */ - public function testApiStatusesMentionsWithNegativePage() + public function testApiStatusesUpdateWithParent() { - // $_REQUEST['page'] = -2; - // $result = api_statuses_mentions('json'); - // self::assertEmpty($result['status']); + $this->markTestIncomplete('This triggers an exit() somewhere and kills PHPUnit.'); } /** - * Test the api_statuses_mentions() function with an unallowed user. + * Test the api_statuses_update() function with a media_ids parameter. * * @return void */ - public function testApiStatusesMentionsWithUnallowedUser() + public function testApiStatusesUpdateWithMediaIds() { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_statuses_mentions('json'); + $this->markTestIncomplete(); } /** - * Test the api_statuses_mentions() function with an RSS result. + * Test the api_statuses_update() function with the throttle limit reached. * * @return void */ - public function testApiStatusesMentionsWithRss() + public function testApiStatusesUpdateWithDayThrottleReached() { - // $result = api_statuses_mentions('rss'); - // self::assertXml($result, 'statuses'); + $this->markTestIncomplete(); } - /** - * Test the api_statuses_user_timeline() function. - * - * @return void - */ - public function testApiStatusesUserTimeline() - { - /* - $_REQUEST['user_id'] = 42; - $_REQUEST['max_id'] = 10; - $_REQUEST['exclude_replies'] = true; - $_REQUEST['conversation_id'] = 7; - $result = api_statuses_user_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } /** - * Test the api_statuses_user_timeline() function with a negative page parameter. + * Test the api_statuses_repeat() function. * * @return void */ - public function testApiStatusesUserTimelineWithNegativePage() + public function testApiStatusesRepeat() { - /* - $_REQUEST['user_id'] = 42; - $_REQUEST['page'] = -2; - - $result = api_statuses_user_timeline('json'); - self::assertNotEmpty($result['status']); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ + // $this->expectException(\Friendica\Network\HTTPException\ForbiddenException::class); + // api_statuses_repeat('json'); } /** - * Test the api_statuses_user_timeline() function with an RSS result. + * Test the api_statuses_repeat() function without an authenticated user. * * @return void */ - public function testApiStatusesUserTimelineWithRss() + public function testApiStatusesRepeatWithoutAuthenticatedUser() { - // $result = api_statuses_user_timeline('rss'); - // self::assertXml($result, 'statuses'); + // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); + // BasicAuth::setCurrentUserID(); + // $_SESSION['authenticated'] = false; + // api_statuses_repeat('json'); } /** - * Test the api_statuses_user_timeline() function with an unallowed user. + * Test the api_statuses_repeat() function with an ID. * * @return void */ - public function testApiStatusesUserTimelineWithUnallowedUser() + public function testApiStatusesRepeatWithId() { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_statuses_user_timeline('json'); + // DI::args()->setArgv(['', '', '', 1]); + // $result = api_statuses_repeat('json'); + // self::assertStatus($result['status']); + + // Also test with a shared status + // DI::args()->setArgv(['', '', '', 5]); + // $result = api_statuses_repeat('json'); + // self::assertStatus($result['status']); } /** @@ -1792,9 +974,9 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroy() { - $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - DI::args()->setArgv(['api', '1.1', 'favorites', 'create']); - api_favorites_create_destroy('json'); + // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'create']); + // api_favorites_create_destroy('json'); } /** @@ -1804,9 +986,9 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithInvalidId() { - $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - DI::args()->setArgv(['api', '1.1', 'favorites', 'create', '12.json']); - api_favorites_create_destroy('json'); + // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'create', '12.json']); + // api_favorites_create_destroy('json'); } /** @@ -1816,10 +998,10 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithInvalidAction() { - $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - DI::args()->setArgv(['api', '1.1', 'favorites', 'change.json']); - $_REQUEST['id'] = 1; - api_favorites_create_destroy('json'); + // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'change.json']); + // $_REQUEST['id'] = 1; + // api_favorites_create_destroy('json'); } /** @@ -1829,10 +1011,10 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithCreateAction() { - DI::args()->setArgv(['api', '1.1', 'favorites', 'create.json']); - $_REQUEST['id'] = 3; - $result = api_favorites_create_destroy('json'); - self::assertStatus($result['status']); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'create.json']); + // $_REQUEST['id'] = 3; + // $result = api_favorites_create_destroy('json'); + // self::assertStatus($result['status']); } /** @@ -1842,10 +1024,10 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithCreateActionAndRss() { - DI::args()->setArgv(['api', '1.1', 'favorites', 'create.rss']); - $_REQUEST['id'] = 3; - $result = api_favorites_create_destroy('rss'); - self::assertXml($result, 'status'); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'create.rss']); + // $_REQUEST['id'] = 3; + // $result = api_favorites_create_destroy('rss'); + // self::assertXml($result, 'status'); } /** @@ -1855,10 +1037,10 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithDestroyAction() { - DI::args()->setArgv(['api', '1.1', 'favorites', 'destroy.json']); - $_REQUEST['id'] = 3; - $result = api_favorites_create_destroy('json'); - self::assertStatus($result['status']); + // DI::args()->setArgv(['api', '1.1', 'favorites', 'destroy.json']); + // $_REQUEST['id'] = 3; + // $result = api_favorites_create_destroy('json'); + // self::assertStatus($result['status']); } /** @@ -1868,52 +1050,16 @@ class ApiTest extends FixtureTest */ public function testApiFavoritesCreateDestroyWithoutAuthenticatedUser() { + /* $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); DI::args()->setArgv(['api', '1.1', 'favorites', 'create.json']); BasicAuth::setCurrentUserID(); $_SESSION['authenticated'] = false; api_favorites_create_destroy('json'); - } - - /** - * Test the api_favorites() function. - * - * @return void - */ - public function testApiFavorites() - { - /* - $_REQUEST['page'] = -1; - $_REQUEST['max_id'] = 10; - $result = api_favorites('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } */ } - /** - * Test the api_favorites() function with an RSS result. - * - * @return void - */ - public function testApiFavoritesWithRss() - { - // $result = api_favorites('rss'); - // self::assertXml($result, 'statuses'); - } - /** - * Test the api_favorites() function with an unallowed user. - * - * @return void - */ - public function testApiFavoritesWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_favorites('json'); - } /** * Test the api_format_messages() function. @@ -2250,92 +1396,6 @@ class ApiTest extends FixtureTest api_lists_ownerships('json'); } - /** - * Test the api_lists_statuses() function. - * - * @return void - */ - public function testApiListsStatuses() - { - // $this->expectException(\Friendica\Network\HTTPException\BadRequestException::class); - // api_lists_statuses('json'); - } - - /** - * Test the api_lists_statuses() function with a list ID. - * @doesNotPerformAssertions - */ - public function testApiListsStatusesWithListId() - { - /* - $_REQUEST['list_id'] = 1; - $_REQUEST['page'] = -1; - $_REQUEST['max_id'] = 10; - $result = api_lists_statuses('json'); - foreach ($result['status'] as $status) { - self::assertStatus($status); - } - */ - } - - /** - * Test the api_lists_statuses() function with a list ID and a RSS result. - * - * @return void - */ - public function testApiListsStatusesWithListIdAndRss() - { - // $_REQUEST['list_id'] = 1; - // $result = api_lists_statuses('rss'); - // self::assertXml($result, 'statuses'); - } - - /** - * Test the api_lists_statuses() function with an unallowed user. - * - * @return void - */ - public function testApiListsStatusesWithUnallowedUser() - { - // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class); - // BasicAuth::setCurrentUserID(); - // api_lists_statuses('json'); - } - - /** - * Test the api_statuses_f() function. - * - * @return void - */ - public function testApiStatusesFWithFriends() - { - $_GET['page'] = -1; - $result = api_statuses_f('friends'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_statuses_f() function. - * - * @return void - */ - public function testApiStatusesFWithFollowers() - { - $result = api_statuses_f('followers'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_statuses_f() function. - * - * @return void - */ - public function testApiStatusesFWithBlocks() - { - $result = api_statuses_f('blocks'); - self::assertArrayHasKey('user', $result); - } - /** * Test the api_statuses_f() function. * @@ -2343,130 +1403,10 @@ class ApiTest extends FixtureTest */ public function testApiStatusesFWithIncoming() { - $result = api_statuses_f('incoming'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_statuses_f() function an undefined cursor GET variable. - * - * @return void - */ - public function testApiStatusesFWithUndefinedCursor() - { - $_GET['cursor'] = 'undefined'; - self::assertFalse(api_statuses_f('friends')); - } - - /** - * Test the api_statuses_friends() function. - * - * @return void - */ - public function testApiStatusesFriends() - { - $result = api_statuses_friends('json'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_statuses_friends() function an undefined cursor GET variable. - * - * @return void - */ - public function testApiStatusesFriendsWithUndefinedCursor() - { - $_GET['cursor'] = 'undefined'; - self::assertFalse(api_statuses_friends('json')); - } - - /** - * Test the api_statuses_followers() function. - * - * @return void - */ - public function testApiStatusesFollowers() - { - $result = api_statuses_followers('json'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_statuses_followers() function an undefined cursor GET variable. - * - * @return void - */ - public function testApiStatusesFollowersWithUndefinedCursor() - { - $_GET['cursor'] = 'undefined'; - self::assertFalse(api_statuses_followers('json')); - } - - /** - * Test the api_blocks_list() function. - * - * @return void - */ - public function testApiBlocksList() - { - $result = api_blocks_list('json'); - self::assertArrayHasKey('user', $result); - } - - /** - * Test the api_blocks_list() function an undefined cursor GET variable. - * - * @return void - */ - public function testApiBlocksListWithUndefinedCursor() - { - $_GET['cursor'] = 'undefined'; - self::assertFalse(api_blocks_list('json')); - } - - /** - * Test the api_friendships_incoming() function. - * - * @return void - */ - public function testApiFriendshipsIncoming() - { - $result = api_friendships_incoming('json'); - self::assertArrayHasKey('id', $result); - } - - /** - * Test the api_friendships_incoming() function an undefined cursor GET variable. - * - * @return void - */ - public function testApiFriendshipsIncomingWithUndefinedCursor() - { - $_GET['cursor'] = 'undefined'; - self::assertFalse(api_friendships_incoming('json')); + // $result = api_statuses_f('incoming'); + // self::assertArrayHasKey('user', $result); } - /** - * Test the api_statusnet_config() function. - * - * @return void - */ - public function testApiStatusnetConfig() - { - /* - $result = api_statusnet_config('json'); - self::assertEquals('localhost', $result['config']['site']['server']); - self::assertEquals('default', $result['config']['site']['theme']); - self::assertEquals(DI::baseUrl() . '/images/friendica-64.png', $result['config']['site']['logo']); - self::assertTrue($result['config']['site']['fancy']); - self::assertEquals('en', $result['config']['site']['language']); - self::assertEquals('UTC', $result['config']['site']['timezone']); - self::assertEquals(200000, $result['config']['site']['textlimit']); - self::assertEquals('false', $result['config']['site']['private']); - self::assertEquals('false', $result['config']['site']['ssl']); - self::assertEquals(30, $result['config']['site']['shorturllength']); - */ - } /** * Test the api_direct_messages_new() function. @@ -2513,9 +1453,9 @@ class ApiTest extends FixtureTest public function testApiDirectMessagesNewWithScreenName() { $this->app->setLoggedInUserNickname($this->selfUser['nick']); - $_POST['text'] = 'message_text'; - $_POST['user_id'] = $this->friendUser['id']; - $result = api_direct_messages_new('json'); + $_POST['text'] = 'message_text'; + $_REQUEST['user_id'] = $this->friendUser['id']; + $result = api_direct_messages_new('json'); self::assertStringContainsString('message_text', $result['direct_message']['text']); self::assertEquals('selfcontact', $result['direct_message']['sender_screen_name']); self::assertEquals(1, $result['direct_message']['friendica_seen']); @@ -2529,9 +1469,9 @@ class ApiTest extends FixtureTest public function testApiDirectMessagesNewWithTitle() { $this->app->setLoggedInUserNickname($this->selfUser['nick']); - $_POST['text'] = 'message_text'; - $_POST['user_id'] = $this->friendUser['id']; - $_REQUEST['title'] = 'message_title'; + $_POST['text'] = 'message_text'; + $_REQUEST['user_id'] = $this->friendUser['id']; + $_REQUEST['title'] = 'message_title'; $result = api_direct_messages_new('json'); self::assertStringContainsString('message_text', $result['direct_message']['text']); self::assertStringContainsString('message_title', $result['direct_message']['text']); @@ -2547,9 +1487,9 @@ class ApiTest extends FixtureTest public function testApiDirectMessagesNewWithRss() { $this->app->setLoggedInUserNickname($this->selfUser['nick']); - $_POST['text'] = 'message_text'; - $_POST['user_id'] = $this->friendUser['id']; - $result = api_direct_messages_new('rss'); + $_POST['text'] = 'message_text'; + $_REQUEST['user_id'] = $this->friendUser['id']; + $result = api_direct_messages_new('rss'); self::assertXml($result, 'direct-messages'); } @@ -2952,27 +1892,6 @@ class ApiTest extends FixtureTest $this->markTestIncomplete(); } - - /** - * Test the api_account_update_profile() function. - * - * @return void - */ - public function testApiAccountUpdateProfile() - { - /* - $_POST['name'] = 'new_name'; - $_POST['description'] = 'new_description'; - $result = api_account_update_profile('json'); - // We can't use assertSelfUser() here because the user object is missing some properties. - self::assertEquals($this->selfUser['id'], $result['user']['cid']); - self::assertEquals('DFRN', $result['user']['location']); - self::assertEquals($this->selfUser['nick'], $result['user']['screen_name']); - self::assertEquals('new_name', $result['user']['name']); - self::assertEquals('new_description', $result['user']['description']); - */ - } - /** * Test the check_acl_input() function. *