bitcheck-document / tests /test_text_consistency.py
AI Assistant
Update Bitcheck Document Service and test.html
37a1755
Raw
History Blame Contribute Delete
1.34 kB
from app.services.text_consistency import TextConsistencyChecker
def test_strong_match() -> None:
result = TextConsistencyChecker().compare(
"BitCheck Certificate of Completion issued to Ada Lovelace",
"bitcheck certificate of completion issued to ada lovelace",
)
assert result.status == "strong_match"
assert result.similarity_score >= 0.85
assert result.risk_score == 0.05
def test_partial_match() -> None:
result = TextConsistencyChecker().compare(
"BitCheck certificate issued to Ada Lovelace for document verification",
"BitCheck certificate issued to Grace Hopper for document review",
)
assert result.status == "partial_match"
assert 0.60 <= result.similarity_score < 0.85
assert result.risk_score == 0.35
def test_low_match() -> None:
result = TextConsistencyChecker().compare(
"University transcript for Ada Lovelace",
"Invoice payment receipt for office furniture",
)
assert result.status == "low_match"
assert result.similarity_score < 0.60
assert result.risk_score == 0.70
def test_no_text_to_compare() -> None:
result = TextConsistencyChecker().compare("", "visible text")
assert result.status == "no_text_to_compare"
assert result.similarity_score == 0.0
assert result.risk_score == 0.0