protein-similarity-api / tests /utils /test_compare_embeddings.py
babilonczyk's picture
Upload 14 files
1cab606 verified
raw
history blame
1.41 kB
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)"