feat(discovery): SimilaritySource protocol + FakeSimilaritySource
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
from lyra_worker.adapters.fakes import FakeSimilaritySource
|
||||
from lyra_worker.similarity.base import SimilarArtist, SimilaritySource
|
||||
|
||||
|
||||
def test_fake_conforms_to_protocol_and_returns_similar():
|
||||
src = FakeSimilaritySource(similar={"seed": [SimilarArtist("c1", "Cand", 0.9)]})
|
||||
assert isinstance(src, SimilaritySource)
|
||||
assert src.health() is True
|
||||
assert src.similar_artists("seed") == [SimilarArtist("c1", "Cand", 0.9)]
|
||||
assert src.similar_artists("unknown") == []
|
||||
|
||||
|
||||
def test_fake_can_report_unhealthy():
|
||||
assert FakeSimilaritySource(healthy=False).health() is False
|
||||
Reference in New Issue
Block a user