From 7528eb2bd9495f507f914f822803eeed112147c2 Mon Sep 17 00:00:00 2001 From: AudricV <74829229+AudricV@users.noreply.github.com> Date: Sun, 23 Jul 2023 19:19:02 +0200 Subject: [PATCH] [YouTube] Fix stream tests failures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix testCheckAudioStreams test of YoutubeStreamExtractorDefaultTest.AudioTrackLanguage test class, by updating the excepted audio track name test to use the updated English audio track name (audio track type info has been added on the video tested); - Fix YoutubeStreamExtractorDefaultTest.PublicBroadcasterTest test class by using a different video from a French and German public broadcast channel, as the channel Dinge Erklärt – Kurzgesagt is not affiliated with a public broadcast channel anymore; - Fix YoutubeStreamExtractorLivestreamTest test class, by updating the excepted name of the livestream to the current one. --- .../YoutubeStreamExtractorDefaultTest.java | 43 +++++++++---------- .../YoutubeStreamExtractorLivestreamTest.java | 2 +- 2 files changed, 22 insertions(+), 23 deletions(-) diff --git a/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorDefaultTest.java b/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorDefaultTest.java index 0a2583c8c..fff75450c 100644 --- a/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorDefaultTest.java +++ b/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorDefaultTest.java @@ -380,7 +380,7 @@ public class YoutubeStreamExtractorDefaultTest { } public static class PublicBroadcasterTest extends DefaultStreamExtractorTest { - private static final String ID = "q6fgbYWsMgw"; + private static final String ID = "cJ9to6EmElQ"; private static final int TIMESTAMP = 0; private static final String URL = BASE_URL + ID; private static StreamExtractor extractor; @@ -396,41 +396,39 @@ public class YoutubeStreamExtractorDefaultTest { // @formatter:off @Override public StreamExtractor extractor() { return extractor; } @Override public StreamingService expectedService() { return YouTube; } - @Override public String expectedName() { return "Was verbirgt sich am tiefsten Punkt des Ozeans?"; } + @Override public String expectedName() { return "Merci pour les 3 millions d'abonnés \uD83C\uDF89| ARTE"; } @Override public String expectedId() { return ID; } @Override public String expectedUrlContains() { return BASE_URL + ID; } @Override public String expectedOriginalUrlContains() { return URL; } @Override public StreamType expectedStreamType() { return StreamType.VIDEO_STREAM; } - @Override public String expectedUploaderName() { return "Dinge Erklärt – Kurzgesagt"; } - @Override public String expectedUploaderUrl() { return "https://www.youtube.com/channel/UCwRH985XgMYXQ6NxXDo8npw"; } - @Override public long expectedUploaderSubscriberCountAtLeast() { return 1_500_000; } - @Override public List expectedDescriptionContains() { return Arrays.asList("Lasst uns abtauchen!", "Angebot von funk", "Dinge"); } - @Override public long expectedLength() { return 631; } + @Override public String expectedUploaderName() { return "ARTE"; } + @Override public String expectedUploaderUrl() { return "https://www.youtube.com/channel/UCwI-JbGNsojunnHbFAc0M4Q"; } + @Override public long expectedUploaderSubscriberCountAtLeast() { return 3_000_000; } + @Override public List expectedDescriptionContains() { return Arrays.asList("sommets", "fans", "cadeau"); } + @Override public long expectedLength() { return 45; } @Override public long expectedTimestamp() { return TIMESTAMP; } - @Override public long expectedViewCountAtLeast() { return 1_600_000; } - @Nullable @Override public String expectedUploadDate() { return "2019-06-12 00:00:00.000"; } - @Nullable @Override public String expectedTextualUploadDate() { return "2019-06-12"; } - @Override public long expectedLikeCountAtLeast() { return 70000; } + @Override public long expectedViewCountAtLeast() { return 20_000; } + @Nullable @Override public String expectedUploadDate() { return "2023-07-07 00:00:00.000"; } + @Nullable @Override public String expectedTextualUploadDate() { return "2023-07-07"; } + @Override public long expectedLikeCountAtLeast() { return 1000; } @Override public long expectedDislikeCountAtLeast() { return -1; } @Override public List expectedMetaInfo() throws MalformedURLException { return Collections.singletonList(new MetaInfo( "", - new Description("Funk is a German public broadcast service.", Description.PLAIN_TEXT), - Collections.singletonList(new URL("https://de.wikipedia.org/wiki/Funk_(Medienangebot)?wprov=yicw1")), - Collections.singletonList("Wikipedia (German)") + new Description("Arte is a French/German public broadcast service.", + Description.PLAIN_TEXT), + List.of(new URL( + "https://en.wikipedia.org/wiki/Arte?wprov=yicw1")), + List.of("Wikipedia") )); } @Override public boolean expectedUploaderVerified() { return true; } @Override public String expectedLicence() { return YOUTUBE_LICENCE; } - @Override public String expectedCategory() { return "Education"; } + @Override public String expectedCategory() { return "News & Politics"; } @Override public List expectedTags() { - return Arrays.asList("Abgrund", "Algen", "Bakterien", "Challengertief", "Dumbooktopus", - "Dunkel", "Dunkelheit", "Fische", "Flohkrebs", "Hadal-Zone", "Kontinentalschelf", - "Licht", "Mariannengraben", "Meer", "Meeresbewohner", "Meeresschnee", "Mesopelagial", - "Ozean", "Photosynthese", "Plankton", "Plastik", "Polypen", "Pottwale", - "Staatsquelle", "Tauchen", "Tauchgang", "Tentakel", "Tiefe", "Tiefsee", "Tintenfische", - "Titanic", "Vampirtintenfisch", "Verschmutzung", "Viperfisch", "Wale"); + return Arrays.asList("arte", "arte 3 millions", "arte remerciement", + "documentaire arte", "arte documentaire", "fan d'arte", "arte youtube"); } // @formatter:on } @@ -559,7 +557,8 @@ public class YoutubeStreamExtractorDefaultTest { } assertTrue(audioStreams.stream() - .anyMatch(audioStream -> "English".equals(audioStream.getAudioTrackName()))); + .anyMatch(audioStream -> + "English original".equals(audioStream.getAudioTrackName()))); final Locale hindiLocale = LocaleCompat.forLanguageTag("hi"); assertTrue(audioStreams.stream() diff --git a/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorLivestreamTest.java b/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorLivestreamTest.java index 6b26a0d04..d76ff82ac 100644 --- a/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorLivestreamTest.java +++ b/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/stream/YoutubeStreamExtractorLivestreamTest.java @@ -40,7 +40,7 @@ public class YoutubeStreamExtractorLivestreamTest extends DefaultStreamExtractor @Override public StreamExtractor extractor() { return extractor; } @Override public StreamingService expectedService() { return YouTube; } - @Override public String expectedName() { return "lofi hip hop radio - beats to relax/study to"; } + @Override public String expectedName() { return "lofi hip hop radio \uD83D\uDCDA - beats to relax/study to"; } @Override public String expectedId() { return ID; } @Override public String expectedUrlContains() { return YoutubeStreamExtractorDefaultTest.BASE_URL + ID; } @Override public String expectedOriginalUrlContains() { return URL; }