diff options
author | Mario <mario@mariovavti.com> | 2020-11-26 08:43:03 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2020-11-26 08:43:03 +0000 |
commit | 21cd4a1b4845858c3421dbd5f2673eceee421f5d (patch) | |
tree | 56d80b7e16f99d8037e8ff48431aa9d191ff39dd /Tests/Unit/includes/FeedutilsTest.php | |
parent | e9a50371f5dd4cffb0ba4894f2286b28e8f535b9 (diff) | |
download | volse-hubzilla-21cd4a1b4845858c3421dbd5f2673eceee421f5d.tar.gz volse-hubzilla-21cd4a1b4845858c3421dbd5f2673eceee421f5d.tar.bz2 volse-hubzilla-21cd4a1b4845858c3421dbd5f2673eceee421f5d.zip |
psr-4 autoloading standard
Diffstat (limited to 'Tests/Unit/includes/FeedutilsTest.php')
-rw-r--r-- | Tests/Unit/includes/FeedutilsTest.php | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/Tests/Unit/includes/FeedutilsTest.php b/Tests/Unit/includes/FeedutilsTest.php new file mode 100644 index 000000000..e9826a73d --- /dev/null +++ b/Tests/Unit/includes/FeedutilsTest.php @@ -0,0 +1,89 @@ +<?php + +namespace Zotlabs\Tests\Unit\includes; + +use Zotlabs\Tests\Unit\UnitTestCase; + +/** + * @brief Unit Test case for include/feedutils.php file. + */ +class FeedutilsTest extends UnitTestCase { + + public function test_normalise_id() { + $this->assertEquals('id', normalise_id('id')); + $this->assertEquals('id', normalise_id('X-ZOT:id')); + $this->assertEquals('id id2', normalise_id('X-ZOT:id X-ZOT:id2')); + $this->assertEmpty(normalise_id('')); + } + + public function test_encode_rel_links() { + // invalid params return empty array + $this->assertEquals([], encode_rel_links('string')); + $this->assertEquals([], encode_rel_links([])); + + $b = ['attribs' => ['' => [ + 'rel' => 'rel_value', + 'type' => 'type_value', + 'href' => 'href_value', + 'length' => 'length_value', + 'title' => 'title_value' + ]]]; + $blink1 = ['link1' => $b]; + $bresult[] = $b['attribs']['']; + $this->assertEquals($bresult, encode_rel_links($blink1)); + } + +/* public function test_encode_rel_links_fail() { + $a = [ 'key' => 'value']; + $this->assertFalse(encode_rel_links($a)); + //Illegal string offset 'attribs' + }*/ + + /** + * @uses ::xmlify + */ + public function test_atom_author() { + $this->assertEquals('', atom_author('', 'nick', 'name', 'uri', 72, 72, 'png', 'photourl')); + + $a = '<tag> + <id>uri</id> + <name>nick</name> + <uri>uri</uri> + <link rel="photo" type="png" media:width="72" media:height="72" href="http://photourl" /> + <link rel="avatar" type="png" media:width="72" media:height="72" href="http://photourl" /> + <poco:preferredUsername>nick</poco:preferredUsername> + <poco:displayName>name</poco:displayName> +</tag>'; + + $this->assertXmlStringEqualsXmlString($a, atom_author('tag', 'nick', 'name', 'uri', 72, 72, 'png', 'http://photourl')); + } + + /** + * @uses ::xmlify + */ + public function test_atom_render_author() { + $xchan = [ + 'xchan_addr' => 'chan@hub', + 'xchan_url' => 'http://hub', + 'xchan_name' => 'Chan', + 'xchan_photo_l' => 'http://hub/img', + 'xchan_photo_mimetype' => 'mimetype' + ]; + // There is no input validation in atom_render_author + //$this->assertEquals('', atom_render_author('', $xchan)); + + $a = '<tag> + <as:object-type>http://activitystrea.ms/schema/1.0/person</as:object-type> + <id>http://hub</id> + <name>chan</name> + <uri>http://hub</uri> + <link rel="alternate" type="text/html" href="http://hub" /> + <link rel="photo" type="mimetype" media:width="300" media:height="300" href="http://hub/img" /> + <link rel="avatar" type="mimetype" media:width="300" media:height="300" href="http://hub/img" /> + <poco:preferredUsername>chan</poco:preferredUsername> + <poco:displayName>Chan</poco:displayName> +</tag>'; + + $this->assertXmlStringEqualsXmlString($a, atom_render_author('tag', $xchan)); + } +} |