54 lines
2.3 KiB
Java
54 lines
2.3 KiB
Java
package org.schabi.newpipe.extractor.services.youtube;
|
|
|
|
import org.junit.jupiter.api.BeforeAll;
|
|
import org.junit.jupiter.api.Test;
|
|
import org.schabi.newpipe.downloader.DownloaderFactory;
|
|
import org.schabi.newpipe.extractor.NewPipe;
|
|
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
|
|
import org.schabi.newpipe.extractor.exceptions.ParsingException;
|
|
|
|
import java.io.IOException;
|
|
import java.util.Random;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
|
|
|
public class YoutubeParsingHelperTest {
|
|
|
|
private static final String RESOURCE_PATH = DownloaderFactory.RESOURCE_PATH + "services/youtube/";
|
|
|
|
@BeforeAll
|
|
public static void setUp() throws IOException {
|
|
YoutubeParsingHelper.resetClientVersionAndKey();
|
|
YoutubeParsingHelper.setNumberGenerator(new Random(1));
|
|
NewPipe.init(new DownloaderFactory().getDownloader(RESOURCE_PATH + "youtubeParsingHelper"));
|
|
}
|
|
|
|
@Test
|
|
public void testAreHardcodedClientVersionAndKeyValid() throws IOException, ExtractionException {
|
|
assertTrue(YoutubeParsingHelper.areHardcodedClientVersionAndKeyValid(),
|
|
"Hardcoded client version and key are not valid anymore");
|
|
}
|
|
|
|
@Test
|
|
public void testAreHardcodedYoutubeMusicKeysValid() throws IOException, ExtractionException {
|
|
assertTrue(YoutubeParsingHelper.isHardcodedYoutubeMusicKeyValid(),
|
|
"Hardcoded YouTube Music keys are not valid anymore");
|
|
}
|
|
|
|
@Test
|
|
public void testParseDurationString() throws ParsingException {
|
|
assertEquals(1162567, YoutubeParsingHelper.parseDurationString("12:34:56:07"));
|
|
assertEquals(4445767, YoutubeParsingHelper.parseDurationString("1,234:56:07"));
|
|
assertEquals(754, YoutubeParsingHelper.parseDurationString("12:34 "));
|
|
}
|
|
|
|
@Test
|
|
public void testConvertFromGoogleCacheUrl() {
|
|
assertEquals("https://mohfw.gov.in/",
|
|
YoutubeParsingHelper.extractCachedUrlIfNeeded("https://webcache.googleusercontent.com/search?q=cache:https://mohfw.gov.in/"));
|
|
assertEquals("https://www.infektionsschutz.de/coronavirus-sars-cov-2.html",
|
|
YoutubeParsingHelper.extractCachedUrlIfNeeded("https://www.infektionsschutz.de/coronavirus-sars-cov-2.html"));
|
|
}
|
|
}
|