aboutsummaryrefslogtreecommitdiff
path: root/tests/FeedParserTest.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/FeedParserTest.php79
1 files changed, 79 insertions, 0 deletions
diff --git a/tests/FeedParserTest.php b/tests/FeedParserTest.php
index 45dc1234..458bdb53 100644
--- a/tests/FeedParserTest.php
+++ b/tests/FeedParserTest.php
@@ -183,4 +183,83 @@ class FeedParserTest extends TestCase
];
$this->assertEquals($expected, $feed);
}
+
+ public function testYoutubeMediaModule()
+ {
+ $xml = <<<XML
+ <?xml version="1.0" encoding="UTF-8"?>
+ <feed xmlns:yt="http://www.youtube.com/xml/schemas/2015" xmlns:media="http://search.yahoo.com/mrss/" xmlns="http://www.w3.org/2005/Atom">
+ <link rel="self" href="http://www.youtube.com/feeds/videos.xml?channel_id=UCuCkxoKLYO_EQ2GeFtbM_bw"/>
+ <id>yt:channel:uCkxoKLYO_EQ2GeFtbM_bw</id>
+ <yt:channelId>uCkxoKLYO_EQ2GeFtbM_bw</yt:channelId>
+ <title>Half as Interesting</title>
+ <link rel="alternate" href="https://www.youtube.com/channel/UCuCkxoKLYO_EQ2GeFtbM_bw"/>
+ <author>
+ <name>Half as Interesting</name>
+ <uri>https://www.youtube.com/channel/UCuCkxoKLYO_EQ2GeFtbM_bw</uri>
+ </author>
+ <published>2017-08-26T20:06:05+00:00</published>
+ <entry>
+ <id>yt:video:Upjg7F28DJw</id>
+ <yt:videoId>Upjg7F28DJw</yt:videoId>
+ <yt:channelId>UCuCkxoKLYO_EQ2GeFtbM_bw</yt:channelId>
+ <title>The Nuke-Proof US Military Base in a Mountain</title>
+ <link rel="alternate" href="https://www.youtube.com/watch?v=Upjg7F28DJw"/>
+ <author>
+ <name>Half as Interesting</name>
+ <uri>https://www.youtube.com/channel/UCuCkxoKLYO_EQ2GeFtbM_bw</uri>
+ </author>
+ <published>2025-01-24T15:44:18+00:00</published>
+ <updated>2025-01-25T06:55:19+00:00</updated>
+ <media:group>
+ <media:title>The Nuke-Proof US Military Base in a Mountain</media:title>
+ <media:content url="https://www.youtube.com/v/Upjg7F28DJw?version=3" type="application/x-shockwave-flash" width="640" height="390"/>
+ <media:thumbnail url="https://i2.ytimg.com/vi/Upjg7F28DJw/hqdefault.jpg" width="480" height="360"/>
+ <media:description>Receive 10% off anything on bellroy.com: https://bit.ly/3HdOWu9</media:description>
+ <media:community>
+ <media:starRating count="10157" average="5.00" min="1" max="5"/>
+ <media:statistics views="228462"/>
+ </media:community>
+ </media:group>
+ </entry>
+ </feed>
+ XML;
+
+ $feed = $this->sut->parseFeed($xml);
+ $expected = [
+ 'title' => 'Half as Interesting',
+ 'uri' => 'https://www.youtube.com/channel/UCuCkxoKLYO_EQ2GeFtbM_bw',
+ 'icon' => null,
+ 'items' => [
+ [
+ 'uri' => 'https://www.youtube.com/watch?v=Upjg7F28DJw',
+ 'title' => 'The Nuke-Proof US Military Base in a Mountain',
+ 'content' => '',
+ 'timestamp' => 1737788119,
+ 'author' => 'Half as Interesting',
+ 'id' => 'yt:video:Upjg7F28DJw',
+ 'published' => '2025-01-24T15:44:18+00:00',
+ 'updated' => '2025-01-25T06:55:19+00:00',
+ 'link' => '',
+ 'yt' => [
+ 'videoId' => 'Upjg7F28DJw',
+ 'channelId' => 'UCuCkxoKLYO_EQ2GeFtbM_bw',
+ ],
+ 'media' => [
+ 'group' => [
+ 'title' => 'The Nuke-Proof US Military Base in a Mountain',
+ 'content' => '',
+ 'thumbnail' => '',
+ 'description' => 'Receive 10% off anything on bellroy.com: https://bit.ly/3HdOWu9',
+ 'community' => [
+ 'starRating' => '',
+ 'statistics' => '',
+ ],
+ ],
+ ],
+ ]
+ ],
+ ];
+ $this->assertEquals($expected, $feed);
+ }
}
option> Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/src/feature_flags.zig (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2023-07-19fix `make headers`Gravatar Dylan Conway 1-7/+15
2023-07-20Better error for workspace dependency not found (#3678)Gravatar Jarred Sumner 2-21/+85
2023-07-18Fix crash in postMessage that repro'd after ~100,000 messagesGravatar Jarred Sumner 6-21/+57
2023-07-18more progress on fixing gc issueGravatar Jarred Sumner 6-61/+162
2023-07-18add padding bytesGravatar Dylan Conway 1-1/+1
2023-07-18feature(constants) add constants/node:constants module and tests(prisma) use ...Gravatar Ciro Spaciari 16-20/+529
2023-07-18patch checkServerIdentity (#3671)Gravatar Ciro Spaciari 3-3/+9
2023-07-18Update workers.mdGravatar Jarred Sumner 1-2/+2
2023-07-18[jest] execute lifecycle hooks on empty blocks (#3663)Gravatar Alex Lam S.L 2-19/+79
2023-07-18ClarifyGravatar Jarred Sumner 1-0/+2
2023-07-18Fixes #3669Gravatar Jarred Sumner 4-13/+35
2023-07-18zig upgrade (#3667)Gravatar Dylan Conway 154-4894/+4857
2023-07-17Enable postgres prisma testGravatar Jarred Sumner 1-1/+1
2023-07-17Emit writeBarrier in `napi_module_register`Gravatar Jarred Sumner 1-6/+14
2023-07-17Fix potential crash in process.dlopen()Gravatar Jarred Sumner 2-5/+27
2023-07-17Implement `process.{stdout, stderr}.{columns, rows, getWindowSize}`Gravatar Jarred Sumner 4-32/+108
2023-07-17[tls] General compatibility improvements (#3596)Gravatar Ciro Spaciari 23-298/+2907
2023-07-17package json `main` field extension order (#3664)Gravatar Dylan Conway 3-3/+96
2023-07-17[install] handle duplicated workspace declarations gracefully (#3662)Gravatar Alex Lam S.L 2-6/+197
2023-07-17Clean up worker docsGravatar Colin McDonnell 1-65/+69
2023-07-17Tweak test docsGravatar Colin McDonnell 2-4/+3
2023-07-17workaround `readable-stream` compatibility (#3626)Gravatar Alex Lam S.L 3-4/+5
2023-07-17Fix flaky process testGravatar Jarred SUmner 1-2/+2
2023-07-17Fix test with incorrect textGravatar Jarred Sumner 1-3/+3
2023-07-17Fix incorrect nameGravatar Jarred Sumner 2-4/+4
2023-07-17Fix speculative crashes in console.log(formData) and console.log(headers)Gravatar Jarred Sumner 2-30/+24
2023-07-17Fix crash in console.log(urlSearchParams) on a URLSearchParams object with a ...Gravatar Jarred Sumner 2-4/+99
2023-07-17Fix memory leak in `await new Response(latin1String).arrayBuffer()` and `awai...Gravatar Jarred Sumner 16-102/+361
2023-07-1720% faster `deserialize` (#3655)Gravatar Jarred Sumner 2-12/+197
2023-07-16Document `--smol`Gravatar Jarred Sumner 1-70/+59
2023-07-16Add `--smol` to bunfigGravatar Jarred Sumner 1-0/+12
2023-07-16Document serialize/deserializeGravatar Jarred Sumner 1-0/+14