23 lines
867 B
Python
23 lines
867 B
Python
from lyra_worker.adapters.fakes import FakeMbBrowser
|
|
from lyra_worker.browser import ReleaseGroupInfo
|
|
from lyra_worker.monitor import MonitorConfig, sweep
|
|
from tests.conftest import insert_watched_artist
|
|
|
|
CFG = MonitorConfig(enabled=True)
|
|
|
|
|
|
def test_sweep_discovers_then_enqueues(conn):
|
|
insert_watched_artist(conn, mbid="a1", name="John Mayer", auto_monitor_future=True)
|
|
browser = FakeMbBrowser(
|
|
releases={"a1": [ReleaseGroupInfo("rg-new", "New", "Album", (), "2999-01-01")]}
|
|
)
|
|
sweep(conn, browser, CFG)
|
|
with conn.cursor() as cur:
|
|
cur.execute(
|
|
'SELECT count(*) FROM "Request" r '
|
|
'JOIN "MonitoredRelease" mr ON mr.id = r."monitoredReleaseId" '
|
|
'WHERE mr."rgMbid" = %s',
|
|
("rg-new",),
|
|
)
|
|
assert cur.fetchone()[0] == 1 # the newly-discovered monitored release got a job
|