From f3d718d9c096ed953c87820a6481e65e23abc30d Mon Sep 17 00:00:00 2001 From: Jonathan Date: Fri, 10 Jul 2026 21:33:05 +0200 Subject: [PATCH] test: verify real YouTubeAdapter flows through the pipeline --- worker/tests/test_youtube_pipeline.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 worker/tests/test_youtube_pipeline.py diff --git a/worker/tests/test_youtube_pipeline.py b/worker/tests/test_youtube_pipeline.py new file mode 100644 index 0000000..9b55a72 --- /dev/null +++ b/worker/tests/test_youtube_pipeline.py @@ -0,0 +1,19 @@ +from lyra_worker.adapters.youtube import YouTubeAdapter +from lyra_worker.claim import claim_next +from lyra_worker.pipeline import run_pipeline +from tests.conftest import insert_request +from tests.test_youtube_adapter import FakeYtClient + + +def test_youtube_adapter_flows_through_pipeline(conn): + job_id = insert_request(conn, artist="Radiohead", album="In Rainbows") + claim_next(conn) + run_pipeline(conn, job_id, [YouTubeAdapter(FakeYtClient())], dest_root="/tmp/lib") + + with conn.cursor() as cur: + cur.execute('SELECT state, "currentStage" FROM "Job" WHERE id = %s', (job_id,)) + assert cur.fetchone() == ("imported", "import") + cur.execute('SELECT source FROM "Candidate" WHERE "jobId" = %s AND chosen = true', (job_id,)) + assert cur.fetchone()[0] == "youtube" + cur.execute('SELECT source FROM "LibraryItem" WHERE artist = %s', ("Radiohead",)) + assert cur.fetchone()[0] == "youtube"