Skip to content

Commit

Permalink
tests: add test for kissanime
Browse files Browse the repository at this point in the history
  • Loading branch information
vn-ki committed Sep 28, 2019
1 parent 7c1d4a3 commit df83d0d
Show file tree
Hide file tree
Showing 8 changed files with 3,877 additions and 6 deletions.
13 changes: 7 additions & 6 deletions anime_downloader/sites/kissanime.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

class KissanimeEpisode(AnimeEpisode, sitename='kissanime'):
"""KissanimeEpisode"""
_base_url = 'http://kissanime.ru'
_base_url = 'https://kissanime.ru'
VERIFY_HUMAN = True

def _get_sources(self):
Expand All @@ -27,13 +27,14 @@ def _scrape_episode(self, response):
class KissAnime(Anime, sitename='kissanime'):
"""KissAnime"""
sitename = 'kissanime'
_referer = 'http://kissanime.ru'
domain = 'https://kissanime.ru'
_referer = 'https://kissanime.ru'
QUALITIES = ['360p', '480p', '720p', '1080p']

@classmethod
def search(cls, query):
soup = helpers.soupify(helpers.post(
'https://kissanime.ru/Search/Anime',
cls.domain + '/Search/Anime',
data=dict(keyword=query),
referer=cls._referer,
cf=True
Expand All @@ -44,7 +45,7 @@ def search(cls, query):
if soup.title.text.strip().lower() != "find anime":
return [SearchResult(
title=soup.find('a', 'bigChar').text,
url='https://kissanime.ru' +
url=cls.domain +
soup.find('a', 'bigChar').get('href'),
poster='',
)]
Expand All @@ -55,7 +56,7 @@ def search(cls, query):
for res in searched:
res = SearchResult(
title=res.text.strip(),
url='https://kissanime.ru'+res.find('a').get('href'),
url=cls.domain + res.find('a').get('href'),
poster='',
)
logger.debug(res)
Expand All @@ -65,7 +66,7 @@ def search(cls, query):

def _scrape_episodes(self):
soup = helpers.soupify(helpers.get(self.url, cf=True))
ret = ['http://kissanime.ru'+str(a['href'])
ret = [self.domain + str(a['href'])
for a in soup.select('table.listing a')]
logger.debug('Unfiltered episodes : {}'.format(ret))
filter_list = ['opening', 'ending', 'special', 'recap']
Expand Down
28 changes: 28 additions & 0 deletions tests/test_kissanime.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import pytest

from anime_downloader.sites.kissanime import KissAnime
from test_sites.site import configure_httpretty


@pytest.fixture
def anime():
return KissAnime('https://kissanime.ru/Anime/Shingeki-no-Kyojin-Dub')

configure_httpretty('kissanime')

def test_search():
ret = KissAnime.search('shingeki no kyojin')
assert len(ret) == 16
assert ret[0].title == 'Attack on Titan (Dub)'


def test_title(anime):
assert anime.title == 'Attack on Titan (Dub)'


def test_length(anime):
assert len(anime) == 25


def test_streamurl(anime):
assert anime[0].source().stream_url == 'https://www432.playercdn.net/86/3/cf1DxUks9XeqNYTLfcQuxg/1569697960/170505/5041aQOsvZ7ekRm.mp4'
1 change: 1 addition & 0 deletions tests/test_sites/test_kissanime/data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[{"method": "POST", "url": "https://kissanime.ru/Search/Anime", "file": "tmp7yyapp_d"}, {"method": "GET", "url": "https://kissanime.ru/Anime/Shingeki-no-Kyojin-Dub", "file": "tmptgvrl9dy"}, {"method": "GET", "url": "https://kissanime.ru/Anime/Shingeki-no-Kyojin-Dub", "file": "tmpn9rftdmm"}, {"method": "GET", "url": "https://kissanime.ru/Anime/Shingeki-no-Kyojin-Dub/Episode-001?id=67457&s=rapidvideo", "file": "tmp02jns65g"}, {"method": "GET", "url": "https://www.rapidvid.to/e/FFAOT8HT3K&q=720p", "file": "tmp6dmbbbpn"}]

0 comments on commit df83d0d

Please sign in to comment.