feat(providers): add nine catalogues and the Radio Browser directory
This commit is contained in:
1 parent
a3ad693132
commit
49f7efe0d2
27 files changed
+1695
-22
No files matched your search
+23
-2
@@ -22,7 +22,22 @@ def rendered_text(app) -> str:
|
||||
|
||||
|
||||
def test_registry_lists_somafm_as_the_default() -> None:
|
||||
assert available_providers() == ("somafm", "tilderadio", "bassdrive")
|
||||
# the menu is alphabetical by name: aNONradio ... tilderadio
|
||||
assert available_providers() == (
|
||||
"anonradio",
|
||||
"bassdrive",
|
||||
"cashmere",
|
||||
"datafruits",
|
||||
"dublab",
|
||||
"lyl",
|
||||
"radiobrowser",
|
||||
"radioparadise",
|
||||
"refuge",
|
||||
"rinse",
|
||||
"somafm",
|
||||
"lot",
|
||||
"tilderadio",
|
||||
)
|
||||
assert isinstance(get_provider(), SomaFMProvider)
|
||||
assert get_provider("somafm") is get_provider()
|
||||
assert isinstance(get_provider("tilderadio"), TilderadioProvider)
|
||||
@@ -177,7 +192,13 @@ async def test_p_opens_the_picker_and_switches_catalogue() -> None:
|
||||
await pilot.pause()
|
||||
assert isinstance(app.screen, ProviderScreen)
|
||||
|
||||
await pilot.press("2") # jump straight to tilderadio
|
||||
# walk down the alphabetical menu from the current entry to tilderadio
|
||||
slugs = available_providers()
|
||||
steps = (slugs.index("tilderadio") - slugs.index("somafm")) % len(slugs)
|
||||
for _ in range(steps):
|
||||
await pilot.press("down")
|
||||
await pilot.pause()
|
||||
await pilot.press("enter")
|
||||
await pilot.pause()
|
||||
await pilot.pause()
|
||||
|
||||
|
||||
Reference in new issue
Block a user