2017-08-05 16:15:36 +02:00
package org.schabi.newpipe.extractor.services.youtube ;
2017-08-05 10:03:56 +02:00
import org.junit.Before ;
import org.junit.Test ;
import org.schabi.newpipe.Downloader ;
2017-08-12 22:19:56 +02:00
import org.schabi.newpipe.extractor.ListExtractor ;
2017-08-05 10:03:56 +02:00
import org.schabi.newpipe.extractor.NewPipe ;
2017-08-11 03:23:09 +02:00
import org.schabi.newpipe.extractor.channel.ChannelExtractor ;
2017-08-05 10:03:56 +02:00
2017-08-08 17:01:50 +02:00
import static org.junit.Assert.* ;
2017-08-07 18:12:51 +02:00
import static org.schabi.newpipe.extractor.ServiceList.YouTube ;
2017-08-06 22:20:15 +02:00
/ *
2017-08-05 10:03:56 +02:00
* Created by Christian Schabesberger on 12 . 09 . 16 .
*
* Copyright ( C ) Christian Schabesberger 2015 < chris . schabesberger @mailbox.org >
* YoutubeSearchEngineStreamTest . java is part of NewPipe .
*
* NewPipe is free software : you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* NewPipe is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with NewPipe . If not , see < http : //www.gnu.org/licenses/>.
* /
/ * *
2017-08-11 03:23:09 +02:00
* Test for { @link ChannelExtractor }
2017-08-05 10:03:56 +02:00
* /
2017-08-11 03:23:09 +02:00
public class YoutubeChannelExtractorTest {
2017-08-05 10:03:56 +02:00
2017-08-11 03:23:09 +02:00
ChannelExtractor extractor ;
2017-08-05 10:03:56 +02:00
@Before
public void setUp ( ) throws Exception {
NewPipe . init ( Downloader . getInstance ( ) ) ;
2017-08-07 18:12:51 +02:00
extractor = YouTube . getService ( )
2017-08-11 03:23:09 +02:00
. getChannelExtractor ( " https://www.youtube.com/channel/UCYJ61XIK64sp6ZFFS8sctxw " ) ;
2017-08-05 10:03:56 +02:00
}
@Test
2017-08-08 17:01:50 +02:00
public void testGetDownloader ( ) throws Exception {
2017-08-05 10:03:56 +02:00
assertNotNull ( NewPipe . getDownloader ( ) ) ;
}
@Test
2017-08-11 03:23:09 +02:00
public void testGetName ( ) throws Exception {
assertEquals ( extractor . getName ( ) , " Gronkh " ) ;
2017-08-05 10:03:56 +02:00
}
2017-08-07 19:00:36 +02:00
@Test
public void testGetDescription ( ) throws Exception {
assertEquals ( extractor . getDescription ( ) , " ★ ★ ★ KLICK MICH HART, DU SAU! :D ★ ★ ★ Zart im Schmelz und süffig im Abgang. Ungebremster Spieltrieb seit 1896. Tägliche Folgen nonstop seit dem 01.04.2010!... " ) ;
}
2017-08-05 10:03:56 +02:00
@Test
public void testGetAvatarUrl ( ) throws Exception {
assertTrue ( extractor . getAvatarUrl ( ) , extractor . getAvatarUrl ( ) . contains ( " yt3 " ) ) ;
}
@Test
2017-08-06 22:20:15 +02:00
public void testGetBannerUrl ( ) throws Exception {
2017-08-05 10:03:56 +02:00
assertTrue ( extractor . getBannerUrl ( ) , extractor . getBannerUrl ( ) . contains ( " yt3 " ) ) ;
}
@Test
public void testGetFeedUrl ( ) throws Exception {
assertTrue ( extractor . getFeedUrl ( ) , extractor . getFeedUrl ( ) . contains ( " feed " ) ) ;
}
@Test
public void testGetStreams ( ) throws Exception {
assertTrue ( " no streams are received " , ! extractor . getStreams ( ) . getItemList ( ) . isEmpty ( ) ) ;
}
@Test
public void testGetStreamsErrors ( ) throws Exception {
assertTrue ( " errors during stream list extraction " , extractor . getStreams ( ) . getErrors ( ) . isEmpty ( ) ) ;
}
@Test
2017-08-06 22:20:15 +02:00
public void testHasMoreStreams ( ) throws Exception {
// Setup the streams
extractor . getStreams ( ) ;
assertTrue ( " don't have more streams " , extractor . hasMoreStreams ( ) ) ;
2017-08-05 10:03:56 +02:00
}
@Test
public void testGetSubscriberCount ( ) throws Exception {
assertTrue ( " wrong subscriber count " , extractor . getSubscriberCount ( ) > = 0 ) ;
}
@Test
2017-08-06 22:20:15 +02:00
public void testGetNextStreams ( ) throws Exception {
// Setup the streams
extractor . getStreams ( ) ;
2017-08-12 22:19:56 +02:00
ListExtractor . NextItemsResult nextItemsResult = extractor . getNextStreams ( ) ;
assertTrue ( " extractor didn't have next streams " , ! nextItemsResult . nextItemsList . isEmpty ( ) ) ;
assertTrue ( " errors occurred during extraction of the next streams " , nextItemsResult . errors . isEmpty ( ) ) ;
2017-08-06 22:20:15 +02:00
assertTrue ( " extractor didn't have more streams after getNextStreams " , extractor . hasMoreStreams ( ) ) ;
2017-08-05 10:03:56 +02:00
}
}