forked from GNUsocial/gnu-social
wip
This commit is contained in:
parent
9f49fbacc9
commit
5ddc6b0c34
53
plugins/ActivityPub/tests/Objects/GroupTest.php
Normal file
53
plugins/ActivityPub/tests/Objects/GroupTest.php
Normal file
@ -0,0 +1,53 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
// {{{ License
|
||||
|
||||
// This file is part of GNU social - https://www.gnu.org/software/social
|
||||
//
|
||||
// GNU social is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// GNU social is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with GNU social. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
// }}}
|
||||
|
||||
namespace Plugin\ActivityPub\tests\Objects;
|
||||
|
||||
use App\Core\DB\DB;
|
||||
use App\Util\GNUsocialTestCase;
|
||||
use Jchook\AssertThrows\AssertThrows;
|
||||
use Plugin\ActivityPub\Entity\ActivitypubRsa;
|
||||
use Plugin\ActivityPub\Util\Model\Actor;
|
||||
|
||||
class GroupTest extends GNUsocialTestCase
|
||||
{
|
||||
use AssertThrows;
|
||||
|
||||
public function testPersonFromJson()
|
||||
{
|
||||
static::bootKernel();
|
||||
|
||||
$fixtures_path = INSTALLDIR . '/plugins/ActivityPub/tests/fixtures/gnusocial/';
|
||||
$person = Actor::fromJson(file_get_contents($fixtures_path . 'objects/group.jsonld'));
|
||||
static::assertSame('https://testv3.gnusocial.rocks/actor/2/inbox.json', $person->getInboxUri());
|
||||
static::assertSame('https://testv3.gnusocial.rocks/inbox.json', $person->getInboxSharedUri());
|
||||
DB::flush();
|
||||
$person_actor = $person->getActor();
|
||||
static::assertSame('https://testv3.gnusocial.rocks/actor/2', $person_actor->getUri());
|
||||
static::assertSame(\App\Entity\Actor::GROUP, $person_actor->getType());
|
||||
static::assertSame('hackers', $person_actor->getNickname());
|
||||
static::assertSame('Hackers!', $person_actor->getFullname());
|
||||
$public_key = ActivityPubRsa::getByActor($person_actor)->getPublicKey();
|
||||
static::assertSame("-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoZyKL+GyJbTV/ilVBlzz\n8OL/UwNi3KpfV5kQwXU0pPcBbw6y2JOfWnKUT1CfiHG3ntiOFnc+wQfHZk4hRSE8\n9Xe/G5Y215xW+gqx/kjt2GOENqzSzYXdEZ5Qsx6yumZD/yb6VZK9Og0HjX2mpRs9\nbactY76w4BQVntjZ17gSkMhYcyPFZTAIe7QDkeSPk5lkXfTwtaB3YcJSbQ3+s7La\npeEgukQDkrLUIP6cxayKrgUl4fhHdpx1Yk4Bzd/1XkZCjeBca94lP1p2M12amI+Z\nOLSTuLyEiCcku8aN+Ms9plwATmIDaGvKFVk0YVtBHdIJlYXV0yIscab3bqyhsLBK\njwIDAQAB\n-----END PUBLIC KEY-----\n", $public_key);
|
||||
}
|
||||
}
|
64
plugins/ActivityPub/tests/Objects/PersonTest.php
Normal file
64
plugins/ActivityPub/tests/Objects/PersonTest.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types = 1);
|
||||
|
||||
// {{{ License
|
||||
|
||||
// This file is part of GNU social - https://www.gnu.org/software/social
|
||||
//
|
||||
// GNU social is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// GNU social is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with GNU social. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
// }}}
|
||||
|
||||
namespace Plugin\ActivityPub\tests\Objects;
|
||||
|
||||
use App\Core\DB\DB;
|
||||
use App\Util\GNUsocialTestCase;
|
||||
use Jchook\AssertThrows\AssertThrows;
|
||||
use Plugin\ActivityPub\Entity\ActivitypubActor;
|
||||
use Plugin\ActivityPub\Entity\ActivitypubRsa;
|
||||
use Plugin\ActivityPub\Util\Explorer;
|
||||
use Plugin\ActivityPub\Util\Model\Actor;
|
||||
|
||||
class PersonTest extends GNUsocialTestCase
|
||||
{
|
||||
use AssertThrows;
|
||||
public string $fixtures_path = INSTALLDIR . '/plugins/ActivityPub/tests/fixtures/gnusocial/';
|
||||
|
||||
public function testPersonFromJson()
|
||||
{
|
||||
static::bootKernel();
|
||||
|
||||
$person = Actor::fromJson(file_get_contents($this->fixtures_path . 'objects/person.jsonld'));
|
||||
static::assertSame('https://testv3.gnusocial.rocks/actor/42/inbox.json', $person->getInboxUri());
|
||||
static::assertSame('https://testv3.gnusocial.rocks/inbox.json', $person->getInboxSharedUri());
|
||||
DB::flush();
|
||||
$person_actor = $person->getActor();
|
||||
static::assertSame('https://testv3.gnusocial.rocks/actor/42', $person_actor->getUri());
|
||||
static::assertSame(\App\Entity\Actor::PERSON, $person_actor->getType());
|
||||
static::assertSame('diogo', $person_actor->getNickname());
|
||||
static::assertSame('Diogo Cordeiro', $person_actor->getFullname());
|
||||
$public_key = ActivityPubRsa::getByActor($person_actor)->getPublicKey();
|
||||
static::assertSame("-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArBB+3ldwA2qC1hQTtIho\n9KYhvvMlPdydn8dA6OlyIQ3Jy57ADt2e144jDSY5RQ3esmzWm2QqsI8rAsZsAraO\nl2+855y7Fw35WH4GBc7PJ6MLAEvMk1YWeS/rttXaDzh2i4n/AXkMuxDjS1IBqw2w\nn0qTz2sdGcBJ+mop6AB9Qt2lseBc5IW040jSnfLEDDIaYgoc5m2yRsjGKItOh3BG\njGHDb6JB9FySToSMGIt0/tE5k06wfvAxtkxX5dfGeKtciBpC2MGT169iyMIOM8DN\nFhSl8mowtV1NJQ7nN692USrmNvSJjqe9ugPCDPPvwQ5A6A61Qrgpz5pav/o5Sz69\nzQIDAQAB\n-----END PUBLIC KEY-----\n", $public_key);
|
||||
dd(ActivitypubActor::getByPK(['uri' => 'https://testv3.gnusocial.rocks/actor/42']));
|
||||
}
|
||||
|
||||
public function testPersonToJson()
|
||||
{
|
||||
//static::bootKernel();
|
||||
//$actor = Explorer::getOneFromUri('https://testv3.gnusocial.rocks/actor/42', false);
|
||||
//$actual = Actor::toJson($actor);
|
||||
//static::assertSame(file_get_contents($this->fixtures_path . 'objects/person.jsonld'), $actual);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user