diff options
Diffstat (limited to 'tests/unit/Lib/ActivityTest.php')
-rw-r--r-- | tests/unit/Lib/ActivityTest.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/unit/Lib/ActivityTest.php b/tests/unit/Lib/ActivityTest.php index 1857487c8..456a7535e 100644 --- a/tests/unit/Lib/ActivityTest.php +++ b/tests/unit/Lib/ActivityTest.php @@ -274,4 +274,50 @@ class ActivityTest extends UnitTestCase { ]; } + public function testBuildPacketWithEmptyChannel(): void { + $data = [ 'aKey' => 'aValue' ]; + $packet = json_decode(Activity::build_packet($data, []), true); + + $this->assertArrayHasKey('aKey', $packet); + $this->assertEquals('aValue', $packet['aKey']); + } + + /** + * Test get protocols from an activitystreams actor object + * + * @dataProvider get_actor_protocols_provider + */ + public function test_get_actor_protocols(array $actor, array $expected): void { + $this->assertEquals($expected, Activity::get_actor_protocols($actor)); + } + + /** + * Dataprovider for test_get_actor_protocols. + */ + public static function get_actor_protocols_provider(): array { + return [ + 'none' => [ + ['tag' => [['type' => 'Note', 'name' => 'Website', 'content' => 'https://example.com']]], + [] + ], + 'legacy' => [ + ['tag' => [ + ['type' => 'PropertyValue', 'name' => 'Protocol', 'value' => 'zot6'], + ['type' => 'PropertyValue', 'name' => 'Protocol', 'value' => 'activitypub'], + ['type' => 'PropertyValue', 'name' => 'Protocol', 'value' => 'diaspora'] + ]], + ['zot6', 'activitypub', 'diaspora'] + ], + 'fep-fb2a' => [ + ['tag' => [['type' => 'Note', 'name' => 'Protocols', 'content' => 'zot6,activitypub,diaspora']]], + ['zot6', 'activitypub', 'diaspora'] + ], + 'fep-fb2a with spaces' => [ + ['tag' => [['type' => 'Note', 'name' => 'Protocols', 'content' => 'zot6, activitypub, diaspora']]], + ['zot6', 'activitypub', 'diaspora'] + ], + ]; + + + } } |