File size: 1,089 Bytes
0fb3eb2 | 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 | """Tests for the shared vocabulary module."""
from signbridge.vocab import VOCAB, VOCAB_SET, ALPHABET, DIGITS, WLASL_TOP50
def test_vocab_is_tuple_of_strings():
assert isinstance(VOCAB, tuple)
assert all(isinstance(t, str) for t in VOCAB)
assert len(VOCAB) == len(set(VOCAB)) # no duplicates
def test_vocab_set_matches_tuple():
assert VOCAB_SET == frozenset(VOCAB)
def test_alphabet_subset():
assert all(letter in VOCAB_SET for letter in ALPHABET)
assert len(ALPHABET) == 26
def test_digits_subset():
assert all(d in VOCAB_SET for d in DIGITS)
assert len(DIGITS) == 10
def test_wlasl_top50_subset():
assert all(sign in VOCAB_SET for sign in WLASL_TOP50)
assert len(WLASL_TOP50) >= 49
def test_unknown_sentinel_present():
assert "unknown" in VOCAB_SET
def test_recognizer_uses_shared_vocab():
from signbridge.recognizer.vlm import _VLM_VOCAB_SET
assert _VLM_VOCAB_SET is VOCAB_SET
def test_classifier_uses_shared_vocab():
from signbridge.recognizer.classifier import VOCABULARY
assert tuple(VOCABULARY) == VOCAB
|