- * 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- 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\ForbiddenException::class);
- $_SESSION['allow_api'] = false;
- $_GET['screen_name'] = $this->selfUser['nick'];
- BasicAuth::setCurrentUserID();
- api_conversation_show('json');
- }
-
- /**
- * Test the api_statuses_repeat() function.