コード例 #1
0
class MockTest(unittest.TestCase):
    def setUp(self):
        self.parser = Parser()

    def test_current_season(self):
        with HTTMock(current_season_mock):
            current = self.parser.current_shows
            self.assertEqual(list(current),
                             ["Test 1", "Test 2", "Test 3", "Test 4"])

    def test_shows_list(self):
        with HTTMock(shows_mock):
            shows = self.parser.shows
            self.assertEqual(
                shows, {
                    'Test 1': 'test-1',
                    'Test 2': 'test-2',
                    'Test 3': 'test-3',
                    'Test 4': 'test-4'
                })

    def test_get_episodes(self):
        with HTTMock(api_mock):
            episodes = self.parser.get_episodes("test", limit=4)
            self.assertEqual(len(episodes), 4)
            batch = self.parser.get_batches("test")
            self.assertEqual(batch[0]["title"].lower(), "one-punch man")

    def test_show_id(self):
        with HTTMock(showid_mock):
            showid = self.parser._get_show_id("doesn't matter")
            self.assertTrue(showid, 123456789)
コード例 #2
0
def test_get_episodes():
    # without mocking, we'll do live testing on the website.
    parser = Parser()
    for limit in 0, 3, 12, 24, 28:
        title = parser.get_proper_title("one piece")
        showid = parser._get_show_id(title)
        shows_html = parser._get_html(showid, limit, "show")
        episodes = list(parser._parse_html(shows_html))
        assert len(episodes) == 12 * round(limit / 12)

        proper_get_episodes = parser.get_episodes("one piece", limit=limit)
        for index, episode in enumerate(proper_get_episodes):
            episode.pop("title")
            proper = episode.keys()
            non_proper = episodes[index].keys()
            error_msg = f"proper: {proper} \nnon proper: {non_proper}"
            assert episode == episodes[index], error_msg
コード例 #3
0
def test_show_id():
    parser = Parser()
    assert parser._get_show_id("no way this will ever be an anime") == -1