3 namespace Friendica\Test\src\Contact\FriendSuggest\Factory;
5 use Friendica\Contact\FriendSuggest\Factory\FriendSuggest;
6 use Friendica\Contact\FriendSuggest\Entity;
7 use Friendica\Test\MockedTest;
8 use Psr\Log\NullLogger;
10 class FriendSuggestTest extends MockedTest
12 public function dataCreate()
20 'url' => 'https://friendica.local/profile/test',
21 'request' => 'https://friendica.local/dfrn_request/test',
22 'photo' => 'https://friendica.local/photo/profile/test',
23 'note' => 'a common note',
24 'created' => '2021-10-12 12:23:00'
26 'assertion' => new Entity\FriendSuggest(
30 'https://friendica.local/profile/test',
31 'https://friendica.local/dfrn_request/test',
32 'https://friendica.local/photo/profile/test',
34 new \DateTime('2021-10-12 12:23:00', new \DateTimeZone('UTC'))
41 'assertion' => new Entity\FriendSuggest(
49 new \DateTime('now', new \DateTimeZone('UTC')),
58 'url' => 'https://friendica.local/profile/test',
59 'request' => 'https://friendica.local/dfrn_request/test',
60 'photo' => 'https://friendica.local/photo/profile/test',
61 'note' => 'a common note',
62 'created' => '2021-10-12 12:23:00',
65 'assertion' => new Entity\FriendSuggest(
69 'https://friendica.local/profile/test',
70 'https://friendica.local/dfrn_request/test',
71 'https://friendica.local/photo/profile/test',
73 new \DateTime('2021-10-12 12:23:00', new \DateTimeZone('UTC')),
80 public function assertFriendSuggest(Entity\FriendSuggest $assertion, Entity\FriendSuggest $friendSuggest)
82 self::assertEquals($assertion->id, $friendSuggest->id);
83 self::assertEquals($assertion->uid, $friendSuggest->uid);
84 self::assertEquals($assertion->cid, $friendSuggest->cid);
85 self::assertEquals($assertion->name, $friendSuggest->name);
86 self::assertEquals($assertion->url, $friendSuggest->url);
87 self::assertEquals($assertion->request, $friendSuggest->request);
88 self::assertEquals($assertion->photo, $friendSuggest->photo);
89 self::assertEquals($assertion->note, $friendSuggest->note);
92 public function testCreateNew()
94 $factory = new FriendSuggest(new NullLogger());
96 $this->assertFriendSuggest(
97 $factory->createNew(12, 13),
98 new Entity\FriendSuggest(12, 13, '', '', '', '', '',
99 new \DateTime('now', new \DateTimeZone('UTC')), null
105 * @dataProvider dataCreate
107 public function testCreateFromTableRow(array $input, Entity\FriendSuggest $assertion)
109 $factory = new FriendSuggest(new NullLogger());
111 $this->assertFriendSuggest($factory->createFromTableRow($input), $assertion);
114 public function testCreateEmpty()
116 $factory = new FriendSuggest(new NullLogger());
118 $this->assertFriendSuggest($factory->createEmpty(66), new Entity\FriendSuggest(0, 0, '', '', '', '', '',
119 new \DateTime('now', new \DateTimeZone('UTC')), 66