]> git.mxchange.org Git - friendica.git/commitdiff
Re-enable AccountVerifyCredentials test
authorPhilipp <admin@philipp.info>
Sat, 4 Dec 2021 21:34:51 +0000 (22:34 +0100)
committerPhilipp <admin@philipp.info>
Sun, 5 Dec 2021 19:33:59 +0000 (20:33 +0100)
src/Module/Api/Mastodon/Accounts/VerifyCredentials.php
tests/datasets/api.fixture.php
tests/src/Module/Api/Mastodon/Accounts/StatusesTest.php
tests/src/Module/Api/Mastodon/Accounts/VerifyCredentialsTest.php

index 472ca7f5656e502f6f7350088b6cd73324789c7a..4318fac7b5b29debb53ffc5eb0b7617f09da2403 100644 (file)
@@ -52,6 +52,6 @@ class VerifyCredentials extends BaseApi
 
                // @todo Support the source property,
                $account = DI::mstdnAccount()->createFromContactId($cdata['user'], $uid);
-               System::jsonExit($account);
+               $this->response->exit('account', ['account' => $account->toArray()]);
        }
 }
index 9e0174c029009cf0d29cf2b7107567ff6a1ffa2d..014692ccd155f987499d49071a32b9f2b5818533 100644 (file)
@@ -36,7 +36,7 @@ return [
        'mail',
        'post-delivery-data',
        // Base test config to avoid notice messages
-       'config'  => [
+       'config' => [
                [
                        'cat' => 'system',
                        'k'   => 'url',
@@ -63,7 +63,7 @@ return [
                        'v'   => '1',
                ],
        ],
-       'user'    => [
+       'user' => [
                [
                        'uid'      => 42,
                        'username' => 'Test user',
@@ -73,7 +73,7 @@ return [
                        'theme'    => 'frio',
                ],
        ],
-       'item-uri'    => [
+       'item-uri' => [
                [
                        'id'   => 1,
                        'uri'  => '1',
@@ -128,100 +128,149 @@ return [
        ],
        'contact' => [
                [
-                       'id'      => 42,
-                       'uid'     => 42,
-                       'uri-id'  => 42,
-                       'name'    => 'Self contact',
-                       'nick'    => 'selfcontact',
-                       'self'    => 1,
-                       'nurl'    => 'http://localhost/profile/selfcontact',
-                       'url'     => 'http://localhost/profile/selfcontact',
-                       'about'   => 'User used in tests',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::FOLLOWER,
-                       'network' => Protocol::DFRN,
+                       'id'       => 42,
+                       'uid'      => 42,
+                       'uri-id'   => 42,
+                       'name'     => 'Self contact',
+                       'nick'     => 'selfcontact',
+                       'self'     => 1,
+                       'nurl'     => 'http://localhost/profile/selfcontact',
+                       'url'      => 'http://localhost/profile/selfcontact',
+                       'about'    => 'User used in tests',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::FOLLOWER,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
                // Having the same name and nick allows us to test
                // the fallback to api_get_nick() in api_get_user()
                [
-                       'id'      => 43,
-                       'uid'     => 0,
-                       'uri-id'  => 43,
-                       'name'    => 'othercontact',
-                       'nick'    => 'othercontact',
-                       'self'    => 0,
-                       'nurl'    => 'http://localhost/profile/othercontact',
-                       'url'     => 'http://localhost/profile/othercontact',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::NOTHING,
-                       'network' => Protocol::DFRN, 
+                       'id'       => 43,
+                       'uid'      => 0,
+                       'uri-id'   => 43,
+                       'name'     => 'othercontact',
+                       'nick'     => 'othercontact',
+                       'self'     => 0,
+                       'nurl'     => 'http://localhost/profile/othercontact',
+                       'url'      => 'http://localhost/profile/othercontact',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::NOTHING,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
                [
-                       'id'      => 44,
-                       'uid'     => 42,
-                       'uri-id'  => 44,
-                       'name'    => 'Friend contact',
-                       'nick'    => 'friendcontact',
-                       'self'    => 0,
-                       'nurl'    => 'http://localhost/profile/friendcontact',
-                       'url'     => 'http://localhost/profile/friendcontact',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::SHARING,
-                       'network' => Protocol::DFRN,
+                       'id'       => 44,
+                       'uid'      => 42,
+                       'uri-id'   => 44,
+                       'name'     => 'Friend contact',
+                       'nick'     => 'friendcontact',
+                       'self'     => 0,
+                       'nurl'     => 'http://localhost/profile/friendcontact',
+                       'url'      => 'http://localhost/profile/friendcontact',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::SHARING,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
                [
-                       'id'      => 45,
-                       'uid'     => 0,
-                       'uri-id'  => 44,
-                       'name'    => 'Friend contact',
-                       'nick'    => 'friendcontact',
-                       'self'    => 0,
-                       'nurl'    => 'http://localhost/profile/friendcontact',
-                       'url'     => 'http://localhost/profile/friendcontact',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::SHARING,
-                       'network' => Protocol::DFRN,
+                       'id'       => 45,
+                       'uid'      => 0,
+                       'uri-id'   => 44,
+                       'name'     => 'Friend contact',
+                       'nick'     => 'friendcontact',
+                       'self'     => 0,
+                       'nurl'     => 'http://localhost/profile/friendcontact',
+                       'url'      => 'http://localhost/profile/friendcontact',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::SHARING,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
                [
-                       'id'      => 46,
-                       'uid'     => 42,
-                       'uri-id'  => 46,
-                       'name'    => 'Mutual contact',
-                       'nick'    => 'mutualcontact',
-                       'self'    => 0,
-                       'nurl'    => 'http://localhost/profile/mutualcontact',
-                       'url'     => 'http://localhost/profile/mutualcontact',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::FRIEND,
-                       'network' => Protocol::DFRN,
+                       'id'       => 46,
+                       'uid'      => 42,
+                       'uri-id'   => 46,
+                       'name'     => 'Mutual contact',
+                       'nick'     => 'mutualcontact',
+                       'self'     => 0,
+                       'nurl'     => 'http://localhost/profile/mutualcontact',
+                       'url'      => 'http://localhost/profile/mutualcontact',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::FRIEND,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
                [
-                       'id'      => 47,
-                       'uid'     => 0,
-                       'uri-id'  => 46,
-                       'name'    => 'Mutual contact',
-                       'nick'    => 'mutualcontact',
-                       'self'    => 0,
-                       'nurl'    => 'http://localhost/profile/mutualcontact',
-                       'url'     => 'http://localhost/profile/mutualcontact',
-                       'pending' => 0,
-                       'blocked' => 0,
-                       'rel'     => Contact::SHARING,
-                       'network' => Protocol::DFRN,
+                       'id'       => 47,
+                       'uid'      => 0,
+                       'uri-id'   => 46,
+                       'name'     => 'Mutual contact',
+                       'nick'     => 'mutualcontact',
+                       'self'     => 0,
+                       'nurl'     => 'http://localhost/profile/mutualcontact',
+                       'url'      => 'http://localhost/profile/mutualcontact',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::SHARING,
+                       'network'  => Protocol::DFRN,
                        'location' => 'DFRN',
                ],
+               [
+                       'id'       => 42,
+                       'uid'      => 0,
+                       'uri-id'   => 42,
+                       'name'     => 'Self contact',
+                       'nick'     => 'selfcontact',
+                       'self'     => 1,
+                       'nurl'     => 'http://localhost/profile/selfcontact',
+                       'url'      => 'http://localhost/profile/selfcontact',
+                       'about'    => 'User used in tests',
+                       'pending'  => 0,
+                       'blocked'  => 0,
+                       'rel'      => Contact::FOLLOWER,
+                       'network'  => Protocol::DFRN,
+                       'location' => 'DFRN',
+               ],
+       ],
+       'apcontact' => [
+               [
+                       "url"              => "http://localhost/profile/selfcontact",
+                       "uri-id"           => 1,
+                       "uuid"             => "42",
+                       "type"             => "Person",
+                       "following"        => "http://localhost/following/selfcontact",
+                       "followers"        => "http://localhost/followers/selfcontact",
+                       "inbox"            => "http://localhost/inbox/selfcontact",
+                       "outbox"           => "http://localhost/outbox/selfcontact",
+                       "sharedinbox"      => "http://localhost/inbox",
+                       "manually-approve" => 1,
+                       "discoverable"     => 0,
+                       "nick"             => "selfcontact",
+                       "name"             => "Self contact",
+                       "about"            => "User used in tests",
+                       "xmpp"             => null,
+                       "matrix"           => null,
+                       "photo"            => "http://localhost/photo/profile/admin.jpeg",
+                       "header"           => null,
+                       "addr"             => "selfcontact@localhost",
+                       "alias"            => null,
+                       "pubkey"           => "-----BEGIN PUBLIC KEY-----\nMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAzLquDFnFxNYZZFQNbA9f\nkgtUJpC+MPrhxhEsjxme1ivvE4itdPnCueBHifknUkwfmqormyeqr4TdoVbNuKRg\nj2QRBdtaGbUJLQVdbiTKFOmJIYMtV05WIIHEhUW84fwIXmF+6u3kbOw+sIjWY3OW\nwC/2+54HiYS2n8cddfwoZBim6Na8yyQI8pQSKqJ+I4gDfkGuoVex0svNPEv9liLE\nykpQ3PuoeLJV2Wex0Cy6FYPgcfH6xvvUVxh6e8w0w22jC3DJInfDrmbw5H7aUbf+\nMMwV3TVI6/CqTO0cLEOZUjsUwdm6lIV0O0fTsrkjU9G0bc0sLJl7n9i9ICDOKOMf\nCLaK2Pj2sVbpkzXJoufLUDf0oSftdVvN9jR9WYxRdnwsyF8N/xVTw8AsyHhkXawR\n3YDgi6i2uZj5kvG7GPBf7EPZ/MpbGhEZB+/GQuZuyhLdgFDSi/uX8STBmn1jI/zY\nTLZ8JCwMzFKAXAtYaBPklZBbcRyz9O1893MsAXO8d6ODTOkD324gAjRUtuOMscYc\nWV98NZIUSbqQrznmMoJn1fiMNVgx+UXOPkiZuDxnrr1T3vynKnl5LXmadx2YeoAf\nxPeCoDb0eJtCDLcsTZ9qlztaEaohPV+H3HBSpdItea7LgAbccILHPssk9tUgmHVl\na5yV8uFenhKKQ9g93Pt63LsCAwEAAQ==\n-----END PUBLIC KEY-----",
+                       "subscribe"        => "/follow?url={uri}",
+                       "baseurl"          => null,
+                       "gsid"             => null,
+                       "generator"        => "Friendica 'Siberian Iris' 2021.12-dev-1443",
+                       "following_count"  => 0,
+                       "followers_count"  => 0,
+                       "statuses_count"   => 0,
+                       "updated"          => "2021-11-19 19:17:59",
+               ],
        ],
-       'verb'    => [
+       'verb' => [
                [
                        'id'   => 0,
                        'name' => '',
@@ -291,7 +340,7 @@ return [
                        'plink'  => 'http://localhost/display/6',
                ],
        ],
-       'post'    => [
+       'post' => [
                [
                        'uri-id'        => 1,
                        'parent-uri-id' => 1,
@@ -636,135 +685,135 @@ return [
                        'wall'          => 0,
                ],
        ],
-       'post-thread'  => [
+       'post-thread' => [
                [
-                       'uri-id'     => 1,
-                       'author-id'  => 42,
-                       'owner-id'   => 42,
-                       'causer-id'  => 42,
-                       'network'    => Protocol::DFRN,
+                       'uri-id'    => 1,
+                       'author-id' => 42,
+                       'owner-id'  => 42,
+                       'causer-id' => 42,
+                       'network'   => Protocol::DFRN,
                ],
                [
-                       'uri-id'     => 3,
-                       'author-id'  => 43,
-                       'owner-id'   => 43,
-                       'causer-id'  => 43,
-                       'network'    => Protocol::DFRN,
+                       'uri-id'    => 3,
+                       'author-id' => 43,
+                       'owner-id'  => 43,
+                       'causer-id' => 43,
+                       'network'   => Protocol::DFRN,
                ],
                [
-                       'uri-id'     => 6,
-                       'author-id'  => 44,
-                       'owner-id'   => 44,
-                       'causer-id'  => 44,
-                       'network'    => Protocol::DFRN,
+                       'uri-id'    => 6,
+                       'author-id' => 44,
+                       'owner-id'  => 44,
+                       'causer-id' => 44,
+                       'network'   => Protocol::DFRN,
                ],
        ],
-       'post-thread-user'  => [
+       'post-thread-user' => [
                [
-                       'uri-id'     => 1,
-                       'uid'        => 42,
-                       'wall'       => 1,
+                       'uri-id'       => 1,
+                       'uid'          => 42,
+                       'wall'         => 1,
                        'post-user-id' => 1,
-                       'author-id'  => 42,
-                       'owner-id'   => 42,
-                       'causer-id'  => 42,
-                       'contact-id' => 42,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 1,
-                       'origin'     => 1,
-               ],
-               [
-                       'uri-id'     => 3,
-                       'uid'        => 42,
-                       'wall'       => 1,
+                       'author-id'    => 42,
+                       'owner-id'     => 42,
+                       'causer-id'    => 42,
+                       'contact-id'   => 42,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 1,
+                       'origin'       => 1,
+               ],
+               [
+                       'uri-id'       => 3,
+                       'uid'          => 42,
+                       'wall'         => 1,
                        'post-user-id' => 3,
-                       'author-id'  => 43,
-                       'owner-id'   => 43,
-                       'causer-id'  => 43,
-                       'contact-id' => 43,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 0,
-                       'origin'     => 1,
-               ],
-               [
-                       'uri-id'     => 6,
-                       'uid'        => 42,
-                       'wall'       => 1,
+                       'author-id'    => 43,
+                       'owner-id'     => 43,
+                       'causer-id'    => 43,
+                       'contact-id'   => 43,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 0,
+                       'origin'       => 1,
+               ],
+               [
+                       'uri-id'       => 6,
+                       'uid'          => 42,
+                       'wall'         => 1,
                        'post-user-id' => 6,
-                       'author-id'  => 44,
-                       'owner-id'   => 44,
-                       'causer-id'  => 44,
-                       'contact-id' => 44,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 0,
-                       'origin'     => 1,
-               ],
-               [
-                       'uri-id'     => 1,
-                       'uid'        => 0,
-                       'wall'       => 0,
+                       'author-id'    => 44,
+                       'owner-id'     => 44,
+                       'causer-id'    => 44,
+                       'contact-id'   => 44,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 0,
+                       'origin'       => 1,
+               ],
+               [
+                       'uri-id'       => 1,
+                       'uid'          => 0,
+                       'wall'         => 0,
                        'post-user-id' => 7,
-                       'author-id'  => 42,
-                       'owner-id'   => 42,
-                       'causer-id'  => 42,
-                       'contact-id' => 42,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 0,
-                       'origin'     => 0,
-               ],
-               [
-                       'uri-id'     => 3,
-                       'uid'        => 0,
-                       'wall'       => 0,
+                       'author-id'    => 42,
+                       'owner-id'     => 42,
+                       'causer-id'    => 42,
+                       'contact-id'   => 42,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 0,
+                       'origin'       => 0,
+               ],
+               [
+                       'uri-id'       => 3,
+                       'uid'          => 0,
+                       'wall'         => 0,
                        'post-user-id' => 9,
-                       'author-id'  => 43,
-                       'owner-id'   => 43,
-                       'causer-id'  => 43,
-                       'contact-id' => 43,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 0,
-                       'origin'     => 0,
-               ],
-               [
-                       'uri-id'     => 6,
-                       'uid'        => 0,
-                       'wall'       => 0,
+                       'author-id'    => 43,
+                       'owner-id'     => 43,
+                       'causer-id'    => 43,
+                       'contact-id'   => 43,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 0,
+                       'origin'       => 0,
+               ],
+               [
+                       'uri-id'       => 6,
+                       'uid'          => 0,
+                       'wall'         => 0,
                        'post-user-id' => 12,
-                       'author-id'  => 44,
-                       'owner-id'   => 44,
-                       'causer-id'  => 44,
-                       'contact-id' => 44,
-                       'network'    => Protocol::DFRN,
-                       'starred'    => 0,
-                       'origin'     => 0,
+                       'author-id'    => 44,
+                       'owner-id'     => 44,
+                       'causer-id'    => 44,
+                       'contact-id'   => 44,
+                       'network'      => Protocol::DFRN,
+                       'starred'      => 0,
+                       'origin'       => 0,
                ],
        ],
        'notify' => [
                [
-                       'id' => 1,
-                       'type' => 8,
-                       'name' => 'Reply to',
-                       'url' => 'http://localhost/display/1',
-                       'photo' => 'http://localhost/',
-                       'date' => '2020-01-01 12:12:02',
-                       'msg' => 'A test reply from an item',
-                       'uid' => 42,
-                       'link' => 'http://localhost/notification/1',
-                       'iid' => 4,
-                       'seen' => 0,
-                       'verb' => \Friendica\Protocol\Activity::POST,
-                       'otype' => Notification\ObjectType::ITEM,
+                       'id'         => 1,
+                       'type'       => 8,
+                       'name'       => 'Reply to',
+                       'url'        => 'http://localhost/display/1',
+                       'photo'      => 'http://localhost/',
+                       'date'       => '2020-01-01 12:12:02',
+                       'msg'        => 'A test reply from an item',
+                       'uid'        => 42,
+                       'link'       => 'http://localhost/notification/1',
+                       'iid'        => 4,
+                       'seen'       => 0,
+                       'verb'       => \Friendica\Protocol\Activity::POST,
+                       'otype'      => Notification\ObjectType::ITEM,
                        'name_cache' => 'Reply to',
-                       'msg_cache' => 'A test reply from an item',
+                       'msg_cache'  => 'A test reply from an item',
                ],
        ],
        'profile' => [
                [
-                       'id' => 1,
+                       'id'  => 1,
                        'uid' => 42,
                ],
        ],
-       'group'   => [
+       'group' => [
                [
                        'id'      => 1,
                        'uid'     => 42,
@@ -778,7 +827,7 @@ return [
                        'name'    => 'Private list',
                ],
        ],
-       'search'  => [
+       'search' => [
                [
                        'id'   => 1,
                        'term' => 'Saved search',
index 885afbb3e3833dd46603ec3feba2e2f782c77a0d..0c6aab8867a4bf1e8d34fd665cedb9dbeaf51437 100644 (file)
@@ -2,6 +2,9 @@
 
 namespace Friendica\Test\src\Module\Api\Mastodon\Accounts;
 
+use Friendica\App\Router;
+use Friendica\DI;
+use Friendica\Module\Api\Mastodon\Accounts\Statuses;
 use Friendica\Test\src\Module\Api\ApiTest;
 
 class StatusesTest extends ApiTest
@@ -11,6 +14,8 @@ class StatusesTest extends ApiTest
         */
        public function testApiStatusShowWithJson()
        {
+               self::markTestIncomplete('Needs Stastuses to not set header during call (like at BaseApi::setLinkHeader');
+
                // $result = api_status_show('json', 1);
                // self::assertStatus($result['status']);
        }
@@ -20,6 +25,8 @@ class StatusesTest extends ApiTest
         */
        public function testApiStatusShowWithXml()
        {
+               self::markTestIncomplete('Needs Stastuses to not set header during call (like at BaseApi::setLinkHeader');
+
                // $result = api_status_show('xml', 1);
                // self::assertXml($result, 'statuses');
        }
index 25611b245fefde37ab6cd6b0919b47265d6f9259..c627050808976888e1928c8b4c56fe5968d3b5ac 100644 (file)
@@ -2,6 +2,9 @@
 
 namespace Friendica\Test\src\Module\Api\Mastodon\Accounts;
 
+use Friendica\App\Router;
+use Friendica\DI;
+use Friendica\Module\Api\Mastodon\Accounts\VerifyCredentials;
 use Friendica\Test\src\Module\Api\ApiTest;
 
 class VerifyCredentialsTest extends ApiTest
@@ -13,7 +16,18 @@ class VerifyCredentialsTest extends ApiTest
         */
        public function testApiAccountVerifyCredentials()
        {
-               // self::assertArrayHasKey('user', api_account_verify_credentials('json'));
+               $verifyCredentials = new VerifyCredentials(DI::app(), DI::l10n(), DI::baseUrl(), DI::args(), DI::logger(), DI::profiler(), DI::apiResponse(), ['REQUEST_METHOD' => Router::GET]);
+               $response          = $verifyCredentials->run();
+
+               $body = (string)$response->getBody();
+
+               self::assertJson($body);
+
+               $json = json_decode($body);
+
+               self::assertEquals(42, $json->id);
+               self::assertIsArray($json->emojis);
+               self::assertIsArray($json->fields);
        }
 
        /**
@@ -23,6 +37,8 @@ class VerifyCredentialsTest extends ApiTest
         */
        public function testApiAccountVerifyCredentialsWithoutAuthenticatedUser()
        {
+               self::markTestIncomplete('Needs dynamic BasicAuth first');
+
                // $this->expectException(\Friendica\Network\HTTPException\UnauthorizedException::class);
                // BasicAuth::setCurrentUserID();
                // $_SESSION['authenticated'] = false;