def setUp(self): self.archiver = StationPlaylistArchiveCreator(station="rmf", page="radioarchiwum") self.src_testdata = r"tests\data\test_offline_radioarchiwum_20160101.html" self.test_soup = StationPlaylistArchiveCreator.file_to_soup( self.src_testdata) self.last_url = "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/340"
def test_initiation_archive_creator(self): exp_station = "rmf" exp_page = "radioarchiwum" exp_base_url = r"https://radioarchiwum.net/radio/{station_id}/{station_name}/date/{archive_date}" exp_sub_url = r"/page/{start_row}" exp_rstation_dict = {'station_id': 13, 'station_name': 'rmf-fm'} arch = StationPlaylistArchiveCreator(station=exp_station, page=exp_page) self.assertEqual(arch.station, exp_station) self.assertEqual(arch.page, exp_page) self.assertEqual(arch.page_metadata["base_url"], exp_base_url) self.assertEqual(arch.page_metadata["subpage_url"], exp_sub_url) self.assertEqual(arch.rstation_adrs, exp_rstation_dict)
def setUp(self): self.archiver = StationPlaylistArchiveCreator(station="rmf", page="radioarchiwum") self.src_testdata = r"tests\data\test_offline_radioarchiwum_20160101.html" self.test_soup = StationPlaylistArchiveCreator.file_to_soup(self.src_testdata) self.last_url = "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/340"
class TestStationPlaylistArchiveCreator(unittest.TestCase): def setUp(self): self.archiver = StationPlaylistArchiveCreator(station="rmf", page="radioarchiwum") self.src_testdata = r"tests\data\test_offline_radioarchiwum_20160101.html" self.test_soup = StationPlaylistArchiveCreator.file_to_soup(self.src_testdata) self.last_url = "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/340" def test_initiation_archive_creator(self): exp_station = "rmf" exp_page = "radioarchiwum" exp_base_url = r"https://radioarchiwum.net/radio/{station_id}/{station_name}/date/{archive_date}" exp_sub_url = r"/page/{start_row}" exp_rstation_dict = {'station_id': 13, 'station_name': 'rmf-fm'} arch = StationPlaylistArchiveCreator(station=exp_station, page=exp_page) self.assertEqual(arch.station, exp_station) self.assertEqual(arch.page, exp_page) self.assertEqual(arch.page_metadata["base_url"], exp_base_url) self.assertEqual(arch.page_metadata["subpage_url"], exp_sub_url) self.assertEqual(arch.rstation_adrs, exp_rstation_dict) @unittest.skip("skip") def test_archive_data(self): self.archiver.archive_data(date(2016, 1, 1), date(2016, 1, 1)) raise def test_gen_date_range(self): date_range = self.archiver.generate_date_range(date(2015, 1, 30), date(2015, 2, 1)) exp_date_range = [date(2015, 1, 30), date(2015, 1, 31), date(2015, 2, 1)] self.assertEqual(date_range, exp_date_range) @unittest.skip("skip") def test_get_all_urls(self): url_list = self.archiver.get_all_urls_from_date(date(2016, 1, 1)) exp_url_list = None self.assertEqual(url_list, exp_url_list) def test_get_base_url(self): url = self.archiver.get_base_url_for_date(date(2016, 1, 1)) exp_url = r"https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016" self.assertEqual(url, exp_url) def test_to_file_to_soup(self): file_path = self.src_testdata soup = self.archiver.file_to_soup(file_path) self.assertEqual(type(soup), BeautifulSoup) @unittest.skip("skip") def test_get_subpages_urls(self): sub_urls = self.archiver.get_subpages_urls(self.test_soup) exp_sub_urls = [""] self.assertEqual(sub_urls, exp_sub_urls) def test_get_subpages_urls(self): soup = self.archiver.file_to_soup(r"tests/data/test_offline_radioarchiwum_20160101_6subpages.html") sub_urls = self.archiver.get_subpages_urls(soup) exp_sub_urls = ["https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/20", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/40", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/60", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/80", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/100", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/120"] self.assertEqual(sub_urls, exp_sub_urls) def test_extract_last_url(self): last_url = self.archiver.extract_last_url(self.test_soup) exp_last_url = self.last_url self.assertEqual(last_url, exp_last_url) def test_get_last_row(self): last_raw = self.archiver.get_last_row(self.last_url) exp_last_raw = 340 self.assertEqual(last_raw, exp_last_raw) @unittest.skip("skip") def test_to_sqlite(self): self.archiver.to_sqllite() @unittest.skip("skip") def test_to_hdf5(self): self.test_to_hdf5()
class TestStationPlaylistArchiveCreator(unittest.TestCase): def setUp(self): self.archiver = StationPlaylistArchiveCreator(station="rmf", page="radioarchiwum") self.src_testdata = r"tests\data\test_offline_radioarchiwum_20160101.html" self.test_soup = StationPlaylistArchiveCreator.file_to_soup( self.src_testdata) self.last_url = "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/340" def test_initiation_archive_creator(self): exp_station = "rmf" exp_page = "radioarchiwum" exp_base_url = r"https://radioarchiwum.net/radio/{station_id}/{station_name}/date/{archive_date}" exp_sub_url = r"/page/{start_row}" exp_rstation_dict = {'station_id': 13, 'station_name': 'rmf-fm'} arch = StationPlaylistArchiveCreator(station=exp_station, page=exp_page) self.assertEqual(arch.station, exp_station) self.assertEqual(arch.page, exp_page) self.assertEqual(arch.page_metadata["base_url"], exp_base_url) self.assertEqual(arch.page_metadata["subpage_url"], exp_sub_url) self.assertEqual(arch.rstation_adrs, exp_rstation_dict) @unittest.skip("skip") def test_archive_data(self): self.archiver.archive_data(date(2016, 1, 1), date(2016, 1, 1)) raise def test_gen_date_range(self): date_range = self.archiver.generate_date_range(date(2015, 1, 30), date(2015, 2, 1)) exp_date_range = [ date(2015, 1, 30), date(2015, 1, 31), date(2015, 2, 1) ] self.assertEqual(date_range, exp_date_range) @unittest.skip("skip") def test_get_all_urls(self): url_list = self.archiver.get_all_urls_from_date(date(2016, 1, 1)) exp_url_list = None self.assertEqual(url_list, exp_url_list) def test_get_base_url(self): url = self.archiver.get_base_url_for_date(date(2016, 1, 1)) exp_url = r"https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016" self.assertEqual(url, exp_url) def test_to_file_to_soup(self): file_path = self.src_testdata soup = self.archiver.file_to_soup(file_path) self.assertEqual(type(soup), BeautifulSoup) @unittest.skip("skip") def test_get_subpages_urls(self): sub_urls = self.archiver.get_subpages_urls(self.test_soup) exp_sub_urls = [""] self.assertEqual(sub_urls, exp_sub_urls) def test_get_subpages_urls(self): soup = self.archiver.file_to_soup( r"tests/data/test_offline_radioarchiwum_20160101_6subpages.html") sub_urls = self.archiver.get_subpages_urls(soup) exp_sub_urls = [ "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/20", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/40", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/60", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/80", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/100", "https://radioarchiwum.net/radio/13/rmf-fm/date/01-01-2016/page/120" ] self.assertEqual(sub_urls, exp_sub_urls) def test_extract_last_url(self): last_url = self.archiver.extract_last_url(self.test_soup) exp_last_url = self.last_url self.assertEqual(last_url, exp_last_url) def test_get_last_row(self): last_raw = self.archiver.get_last_row(self.last_url) exp_last_raw = 340 self.assertEqual(last_raw, exp_last_raw) @unittest.skip("skip") def test_to_sqlite(self): self.archiver.to_sqllite() @unittest.skip("skip") def test_to_hdf5(self): self.test_to_hdf5()