File size: 1,411 Bytes
1cab606 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | import numpy as np
from utils import compare_embeddings
def test_very_high_similarity():
emb1 = np.array([0.1, 0.2, 0.3])
emb2 = np.array([0.1, 0.2, 0.3])
similarity, classification = compare_embeddings(emb1, emb2)
assert similarity >= 0.85
assert classification == "very high similarity (clear homology)"
def test_high_similarity():
emb1 = np.array([1, 0, 0])
emb2 = np.array([0.8, 0.6, 0])
similarity, classification = compare_embeddings(emb1, emb2)
assert 0.70 <= similarity < 0.85
assert classification == "high similarity (likely homologous)"
def test_moderate_similarity():
emb1 = np.array([1, 0, 0])
emb2 = np.array([0.6, 0.6, 0.6])
similarity, classification = compare_embeddings(emb1, emb2)
assert 0.50 <= similarity < 0.70
assert classification == "moderate similarity (possible remote homolog)"
def test_low_similarity():
emb1 = np.array([1, 0, 0])
emb2 = np.array([0.3, 0.95, 0])
similarity, classification = compare_embeddings(emb1, emb2)
assert 0.30 <= similarity < 0.50
assert classification == "low similarity (likely not homologous)"
def test_very_low_similarity():
emb1 = np.array([1, 0, 0])
emb2 = np.array([0, 1, 0])
similarity, classification = compare_embeddings(emb1, emb2)
assert similarity < 0.30
assert classification == "very low similarity (unrelated / random match)"
|