Spaces:
Sleeping
Sleeping
import pytest | |
import wikipedia | |
def test_get_wikipedia_table_of_contents_happy(): | |
# use the function defined earlier | |
url = "https://en.wikipedia.org/wiki/Mercedes_Sosa" | |
toc = wikipedia.get_wikipedia_article_sections(url) | |
expect = """Sections within article: | |
- Life | |
- Awards | |
- Death | |
- Tributes | |
- Discography | |
- Studio_albums | |
- EPs | |
- Live_albums | |
- Compilation_albums | |
- Filmography | |
- Further_reading | |
- References | |
- External_links""" | |
assert toc == expect | |
def test_get_wikipedia_table_of_contents_404(): | |
# Test with an invalid url | |
bad_url = "https://en.wikipedia.org/wiki/ThisArticleDoesNotExist123456" | |
toc_bad = wikipedia.get_wikipedia_article_sections(bad_url) | |
assert "could not extract table of contents" in toc_bad or "error" in toc_bad.lower() | |
def test_get_wikipedia_table_of_contents_not_wikipedia(): | |
# Test with a non-Wikipedia url | |
not_wiki = "https://www.google.com" | |
toc_not_wiki = wikipedia.get_wikipedia_article_sections(not_wiki) | |
assert "the provided url does not appear to be a valid wikipedia page." in toc_not_wiki.lower() | |
def test_extract_wikipedia_section_1(): | |
section = wikipedia.extract_wikipedia_section("https://en.wikipedia.org/wiki/Mercedes_Sosa", "Discography") | |
assert "Sosa in 2005, with Argentina's then-First Lady (later president from 2007 to 2015), Cristina Fernández de Kirchner" in section | |
assert "Con Sabor A Mercedes Sosa * Label: Philips " in section | |
assert "Niño De Mañana * Label: Philips" in section | |
assert section.endswith("| 2013 | Siempre En Ti * Label: Universal Music |") | |
def test_extract_wikipedia_section(): | |
section = wikipedia.extract_wikipedia_section("https://en.wikipedia.org/wiki/Mercedes_Sosa", "Studio_albums") | |
assert section.endswith("| 2015 | Lucerito * Label: RCA |") | |
assert section.startswith("| Year | Album details |") | |
assert """| 1962 | [La Voz De La Zafra](/wiki/La_Voz_De_La_Zafra "La Voz De La Zafra") * Label: [RCA](/wiki/RCA_Records "RCA Records") |""" in section |