220 lines
7.6 KiB
Java
220 lines
7.6 KiB
Java
package org.schabi.newpipe.extractor.services.peertube;
|
|
|
|
import org.junit.jupiter.api.BeforeAll;
|
|
import org.junit.jupiter.api.Test;
|
|
import org.schabi.newpipe.downloader.DownloaderTestImpl;
|
|
import org.schabi.newpipe.extractor.NewPipe;
|
|
import org.schabi.newpipe.extractor.channel.ChannelExtractor;
|
|
import org.schabi.newpipe.extractor.channel.ChannelTabExtractor;
|
|
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
|
|
import org.schabi.newpipe.extractor.exceptions.ParsingException;
|
|
import org.schabi.newpipe.extractor.linkhandler.ChannelTabs;
|
|
import org.schabi.newpipe.extractor.services.BaseListExtractorTest;
|
|
import org.schabi.newpipe.extractor.services.peertube.extractors.PeertubeChannelTabExtractor;
|
|
|
|
import java.io.IOException;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
import static org.schabi.newpipe.extractor.ServiceList.PeerTube;
|
|
import static org.schabi.newpipe.extractor.services.DefaultTests.*;
|
|
|
|
public class PeertubeChannelTabExtractorTest {
|
|
public static class Videos implements BaseListExtractorTest {
|
|
private static PeertubeChannelTabExtractor extractor;
|
|
|
|
@BeforeAll
|
|
public static void setUp() throws Exception {
|
|
NewPipe.init(DownloaderTestImpl.getInstance());
|
|
// setting instance might break test when running in parallel
|
|
PeerTube.setInstance(new PeertubeInstance("https://framatube.org", "Framatube"));
|
|
extractor = (PeertubeChannelTabExtractor) PeerTube
|
|
.getChannelTabExtractorFromId("video-channels/lqdn_channel@video.lqdn.fr", ChannelTabs.VIDEOS);
|
|
extractor.fetchPage();
|
|
}
|
|
|
|
/*//////////////////////////////////////////////////////////////////////////
|
|
// Extractor
|
|
//////////////////////////////////////////////////////////////////////////*/
|
|
|
|
@Test
|
|
@Override
|
|
public void testServiceId() {
|
|
assertEquals(PeerTube.getServiceId(), extractor.getServiceId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testName() throws ParsingException {
|
|
assertEquals(ChannelTabs.VIDEOS, extractor.getName());
|
|
}
|
|
|
|
@Test
|
|
public void testTab() throws ParsingException {
|
|
assertEquals(ChannelTabs.VIDEOS, extractor.getTab());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testId() throws ParsingException {
|
|
assertEquals("video-channels/lqdn_channel@video.lqdn.fr", extractor.getId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testUrl() throws ParsingException {
|
|
assertEquals("https://framatube.org/video-channels/lqdn_channel@video.lqdn.fr/videos", extractor.getUrl());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testOriginalUrl() throws ParsingException {
|
|
assertEquals("https://framatube.org/video-channels/lqdn_channel@video.lqdn.fr/videos", extractor.getOriginalUrl());
|
|
}
|
|
|
|
/*//////////////////////////////////////////////////////////////////////////
|
|
// ListExtractor
|
|
//////////////////////////////////////////////////////////////////////////*/
|
|
|
|
@Test
|
|
@Override
|
|
public void testRelatedItems() throws Exception {
|
|
defaultTestRelatedItems(extractor);
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testMoreRelatedItems() throws Exception {
|
|
defaultTestMoreItems(extractor);
|
|
}
|
|
|
|
/*//////////////////////////////////////////////////////////////////////////
|
|
// Additional Testing
|
|
//////////////////////////////////////////////////////////////////////////*/
|
|
|
|
@Test
|
|
public void testGetPageInNewExtractor() throws Exception {
|
|
final ChannelTabExtractor newTabExtractor = PeerTube
|
|
.getChannelTabExtractorFromId("video-channels/lqdn_channel@video.lqdn.fr", ChannelTabs.VIDEOS);
|
|
defaultTestGetPageInNewExtractor(extractor, newTabExtractor);
|
|
}
|
|
}
|
|
|
|
public static class Playlists implements BaseListExtractorTest {
|
|
private static PeertubeChannelTabExtractor extractor;
|
|
|
|
@BeforeAll
|
|
public static void setUp() throws IOException, ExtractionException {
|
|
NewPipe.init(DownloaderTestImpl.getInstance());
|
|
extractor = (PeertubeChannelTabExtractor) PeerTube
|
|
.getChannelTabExtractorFromId("video-channels/lqdn_channel@video.lqdn.fr",
|
|
ChannelTabs.PLAYLISTS, "https://framatube.org");
|
|
extractor.fetchPage();
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testServiceId() {
|
|
assertEquals(PeerTube.getServiceId(), extractor.getServiceId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testName() throws Exception {
|
|
assertEquals(ChannelTabs.PLAYLISTS, extractor.getName());
|
|
}
|
|
|
|
@Test
|
|
public void testTab() {
|
|
assertEquals(ChannelTabs.PLAYLISTS, extractor.getTab());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testId() throws ParsingException {
|
|
assertEquals("video-channels/lqdn_channel@video.lqdn.fr", extractor.getId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testUrl() throws ParsingException {
|
|
assertEquals("https://framatube.org/video-channels/lqdn_channel@video.lqdn.fr/video-playlists", extractor.getUrl());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testOriginalUrl() throws Exception {
|
|
assertEquals("https://framatube.org/video-channels/lqdn_channel@video.lqdn.fr/video-playlists", extractor.getOriginalUrl());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testRelatedItems() throws Exception {
|
|
defaultTestRelatedItems(extractor);
|
|
}
|
|
|
|
@Override
|
|
public void testMoreRelatedItems() throws Exception {
|
|
// only 1 playlists tab
|
|
}
|
|
}
|
|
|
|
public static class Channels implements BaseListExtractorTest {
|
|
private static PeertubeChannelTabExtractor extractor;
|
|
|
|
@BeforeAll
|
|
public static void setUp() throws IOException, ExtractionException {
|
|
NewPipe.init(DownloaderTestImpl.getInstance());
|
|
extractor = (PeertubeChannelTabExtractor) PeerTube
|
|
.getChannelTabExtractorFromId("accounts/framasoft",
|
|
ChannelTabs.CHANNELS, "https://framatube.org");
|
|
extractor.fetchPage();
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testServiceId() {
|
|
assertEquals(PeerTube.getServiceId(), extractor.getServiceId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testName() throws Exception {
|
|
assertEquals(ChannelTabs.CHANNELS, extractor.getName());
|
|
}
|
|
|
|
@Test
|
|
public void testTab() {
|
|
assertEquals(ChannelTabs.CHANNELS, extractor.getTab());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testId() throws ParsingException {
|
|
assertEquals("accounts/framasoft", extractor.getId());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testUrl() throws ParsingException {
|
|
assertEquals("https://framatube.org/accounts/framasoft/video-channels", extractor.getUrl());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testOriginalUrl() throws Exception {
|
|
assertEquals("https://framatube.org/accounts/framasoft/video-channels", extractor.getOriginalUrl());
|
|
}
|
|
|
|
@Test
|
|
@Override
|
|
public void testRelatedItems() throws Exception {
|
|
defaultTestRelatedItems(extractor);
|
|
}
|
|
|
|
@Override
|
|
public void testMoreRelatedItems() throws Exception {
|
|
// only 1 channels tab
|
|
}
|
|
}
|
|
}
|