mirror of
https://github.com/TeamNewPipe/NewPipeExtractor.git
synced 2025-04-28 07:50:34 +05:30
YouTube 100% Mock coverage
This commit is contained in:
parent
3b34b82e0f
commit
69d5bf2a89
@ -473,7 +473,7 @@ public class YoutubeChannelExtractorTest {
|
|||||||
@BeforeAll
|
@BeforeAll
|
||||||
public static void setUp() throws Exception {
|
public static void setUp() throws Exception {
|
||||||
YoutubeTestsUtils.ensureStateless();
|
YoutubeTestsUtils.ensureStateless();
|
||||||
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "kurzgesagtAdditional"));
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "kurzgesagtAdditional1"));
|
||||||
extractor = (YoutubeChannelExtractor) YouTube.getChannelExtractor(
|
extractor = (YoutubeChannelExtractor) YouTube.getChannelExtractor(
|
||||||
"https://www.youtube.com/channel/UCsXVk37bltHxD1rDPwtNM8Q");
|
"https://www.youtube.com/channel/UCsXVk37bltHxD1rDPwtNM8Q");
|
||||||
extractor.fetchPage();
|
extractor.fetchPage();
|
||||||
@ -483,7 +483,10 @@ public class YoutubeChannelExtractorTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetPageInNewExtractor() throws Exception {
|
void testGetPageInNewExtractor() throws Exception {
|
||||||
|
// Init downloader again for mock as otherwise request confusion occurs when using Mock
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "kurzgesagtAdditional2"));
|
||||||
|
|
||||||
final ChannelExtractor newExtractor = YouTube.getChannelExtractor(extractor.getUrl());
|
final ChannelExtractor newExtractor = YouTube.getChannelExtractor(extractor.getUrl());
|
||||||
newExtractor.fetchPage();
|
newExtractor.fetchPage();
|
||||||
final ChannelTabExtractor newTabExtractor = YouTube.getChannelTabExtractor(
|
final ChannelTabExtractor newTabExtractor = YouTube.getChannelTabExtractor(
|
||||||
|
@ -13,34 +13,41 @@ import java.io.IOException;
|
|||||||
|
|
||||||
class YoutubeJavaScriptExtractorTest {
|
class YoutubeJavaScriptExtractorTest {
|
||||||
private static final String RESOURCE_PATH =
|
private static final String RESOURCE_PATH =
|
||||||
DownloaderFactory.RESOURCE_PATH + "services/youtube/extractor/js_extractor";
|
DownloaderFactory.RESOURCE_PATH + "services/youtube/extractor/js_extractor/";
|
||||||
|
|
||||||
@BeforeEach
|
@BeforeEach
|
||||||
public void setup() throws IOException {
|
public void setup() {
|
||||||
YoutubeTestsUtils.ensureStateless();
|
YoutubeTestsUtils.ensureStateless();
|
||||||
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testExtractJavaScriptUrlIframe() throws ParsingException {
|
void testExtractJavaScriptUrlIframe() throws ParsingException {
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "urlWithIframeResource"));
|
||||||
|
|
||||||
assertTrue(YoutubeJavaScriptExtractor.extractJavaScriptUrlWithIframeResource()
|
assertTrue(YoutubeJavaScriptExtractor.extractJavaScriptUrlWithIframeResource()
|
||||||
.endsWith("base.js"));
|
.endsWith("base.js"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testExtractJavaScriptUrlEmbed() throws ParsingException {
|
void testExtractJavaScriptUrlEmbed() throws ParsingException {
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "embedWatchPage"));
|
||||||
|
|
||||||
assertTrue(YoutubeJavaScriptExtractor.extractJavaScriptUrlWithEmbedWatchPage("d4IGg5dqeO8")
|
assertTrue(YoutubeJavaScriptExtractor.extractJavaScriptUrlWithEmbedWatchPage("d4IGg5dqeO8")
|
||||||
.endsWith("base.js"));
|
.endsWith("base.js"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testExtractJavaScript__success() throws ParsingException {
|
void testExtractJavaScript__success() throws ParsingException {
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "playerCode"));
|
||||||
|
|
||||||
final String playerJsCode = YoutubeJavaScriptExtractor.extractJavaScriptPlayerCode("d4IGg5dqeO8");
|
final String playerJsCode = YoutubeJavaScriptExtractor.extractJavaScriptPlayerCode("d4IGg5dqeO8");
|
||||||
assertPlayerJsCode(playerJsCode);
|
assertPlayerJsCode(playerJsCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testExtractJavaScript__invalidVideoId__success() throws ParsingException {
|
void testExtractJavaScript__invalidVideoId__success() throws ParsingException {
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "playerCodeInvalidVideoId"));
|
||||||
|
|
||||||
String playerJsCode = YoutubeJavaScriptExtractor.extractJavaScriptPlayerCode("not_a_video_id");
|
String playerJsCode = YoutubeJavaScriptExtractor.extractJavaScriptPlayerCode("not_a_video_id");
|
||||||
assertPlayerJsCode(playerJsCode);
|
assertPlayerJsCode(playerJsCode);
|
||||||
|
|
||||||
|
@ -68,14 +68,14 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
public static final String YOUTUBE_LICENCE = "YouTube licence";
|
public static final String YOUTUBE_LICENCE = "YouTube licence";
|
||||||
|
|
||||||
public static class NotAvailable {
|
public static class NotAvailable {
|
||||||
@BeforeAll
|
private static final String RESOURCE_PATH =
|
||||||
public static void setUp() throws IOException {
|
YoutubeStreamExtractorDefaultTest.RESOURCE_PATH + "notAvailable/";
|
||||||
YoutubeTestsUtils.ensureStateless();
|
|
||||||
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "notAvailable"));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void geoRestrictedContent() throws Exception {
|
void geoRestrictedContent() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "restricted"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "_PL2HJKxnOM");
|
YouTube.getStreamExtractor(BASE_URL + "_PL2HJKxnOM");
|
||||||
assertThrows(GeographicRestrictionException.class, extractor::fetchPage);
|
assertThrows(GeographicRestrictionException.class, extractor::fetchPage);
|
||||||
@ -83,6 +83,9 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void nonExistentFetch() throws Exception {
|
void nonExistentFetch() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "nonExistent"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "don-t-exist");
|
YouTube.getStreamExtractor(BASE_URL + "don-t-exist");
|
||||||
assertThrows(ContentNotAvailableException.class, extractor::fetchPage);
|
assertThrows(ContentNotAvailableException.class, extractor::fetchPage);
|
||||||
@ -90,6 +93,9 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void invalidId() throws Exception {
|
void invalidId() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "invalidId"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "INVALID_ID_INVALID_ID");
|
YouTube.getStreamExtractor(BASE_URL + "INVALID_ID_INVALID_ID");
|
||||||
assertThrows(ParsingException.class, extractor::fetchPage);
|
assertThrows(ParsingException.class, extractor::fetchPage);
|
||||||
@ -97,6 +103,9 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void paidContent() throws Exception {
|
void paidContent() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "paidContent"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "ayI2iBwGdxw");
|
YouTube.getStreamExtractor(BASE_URL + "ayI2iBwGdxw");
|
||||||
assertThrows(PaidContentException.class, extractor::fetchPage);
|
assertThrows(PaidContentException.class, extractor::fetchPage);
|
||||||
@ -104,6 +113,9 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void privateContent() throws Exception {
|
void privateContent() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "privateContent"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "8VajtrESJzA");
|
YouTube.getStreamExtractor(BASE_URL + "8VajtrESJzA");
|
||||||
assertThrows(PrivateContentException.class, extractor::fetchPage);
|
assertThrows(PrivateContentException.class, extractor::fetchPage);
|
||||||
@ -111,6 +123,9 @@ public class YoutubeStreamExtractorDefaultTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
void youtubeMusicPremiumContent() throws Exception {
|
void youtubeMusicPremiumContent() throws Exception {
|
||||||
|
YoutubeTestsUtils.ensureStateless();
|
||||||
|
NewPipe.init(DownloaderFactory.getDownloader(RESOURCE_PATH + "musicPremiumContent"));
|
||||||
|
|
||||||
final StreamExtractor extractor =
|
final StreamExtractor extractor =
|
||||||
YouTube.getStreamExtractor(BASE_URL + "sMJ8bRN2dak");
|
YouTube.getStreamExtractor(BASE_URL + "sMJ8bRN2dak");
|
||||||
assertThrows(YoutubeMusicPremiumContentException.class, extractor::fetchPage);
|
assertThrows(YoutubeMusicPremiumContentException.class, extractor::fetchPage);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user