. // }}} namespace App\Tests\Entity; use App\Core\Cache; use App\Core\DB; use App\Entity\Actor; use App\Util\GNUsocialTestCase; use Component\Circle\Entity\ActorTag; use Component\Tag\Tag as CompTag; use Jchook\AssertThrows\AssertThrows; class ActorTest extends GNUsocialTestCase { use AssertThrows; public function testGetAvatarUrl() { $actor = DB::findOneBy(Actor::class, ['nickname' => 'taken_user']); static::assertSame('/avatar/default', $actor->getAvatarUrl()); } // public function testSelfTags() // { // $actor = DB::findOneBy(Actor::class, ['nickname' => 'taken_user']); // // Start with no self-tags // static::assertSame( // expected: [], // actual: $actor->getSelfTags(), // ); // // Add one self-tag 'foo' // $tag = CompTag::sanitize('foo'); // DB::persist($actor_tag_foo = ActorTag::create([ // 'tagger' => $actor->getId(), // self tag means tagger = tagger in ActorTag // 'tagged' => $actor->getId(), // 'tag' => $tag, // ])); // static::assertNotNull($actor_tag_foo); // DB::flush(); // Cache::delete(Actor::cacheKeys($actor->getId())['self-tags']); // $actual = $actor->getSelfTags(); // static::assertCount(1, $actual); // static::assertObjectEquals(expected: $actor_tag_foo, actual: $actual[0]); // // Add a second self-tag 'foo' // $tag = CompTag::sanitize('bar'); // DB::persist($actor_tag_bar = ActorTag::create([ // 'tagger' => $actor->getId(), // self tag means tagger = tagger in ActorTag // 'tagged' => $actor->getId(), // 'tag' => $tag, // ])); // static::assertNotNull($actor_tag_foo); // DB::flush(); // Cache::delete(Actor::cacheKeys($actor->getId())['self-tags']); // $actual = $actor->getSelfTags(); // static::assertCount(2, $actual); // foreach ([$actor_tag_bar, $actor_tag_foo] as $expected) { // /** @var ActorTag $a */ // $a = array_shift($actual); // static::assertObjectEquals($expected, $a); // } // } }