from memory_vector import MemoryVectorIndex def test_memory_vector_basic(): idx = MemoryVectorIndex(embedding_dim=16) idx.add('a', 'The quick brown fox') idx.add('b', 'A slow turtle') idx.add('c', 'Brown fox jumps high') idx.build() results = idx.search('fast brown fox', top_k=3) # should return some results and 'a' or 'c' should score higher than 'b' assert len(results) >= 2 ids = [r[0] for r in results] assert 'b' in ids # ensure top result is one of the fox texts assert results[0][0] in ('a', 'c') def test_search_empty_index(): idx = MemoryVectorIndex(embedding_dim=8) # no build called and no entries results = idx.search('anything', top_k=5) assert results == []