Files
shell-history-semantic-search/tests/test_embeddings.py
7000pctAUTO c0b4b523be
Some checks failed
CI / test (push) Has been cancelled
fix: resolve CI test failures by removing unused imports and updating workflow paths
- Created models.py with HistoryEntry and SearchResult classes
- Created database.py with Database wrapper class
- Fixed test files to use actual implementation APIs
- Fixed conftest.py SearchResult fixture field names
2026-03-22 18:42:01 +00:00

31 lines
1.0 KiB
Python

import pytest
import numpy as np
from shell_history_search.core.embeddings import EmbeddingService
class TestEmbeddingService:
@pytest.fixture
def service(self):
return EmbeddingService()
def test_encode_single(self, service):
embedding = service.encode_single("test command")
assert isinstance(embedding, np.ndarray)
assert len(embedding) == 384
def test_encode_consistency(self, service):
emb1 = service.encode_single("test command")
emb2 = service.encode_single("test command")
assert np.allclose(emb1, emb2)
def test_encode_different_commands(self, service):
emb1 = service.encode_single("command one")
emb2 = service.encode_single("command two")
assert not np.allclose(emb1, emb2)
def test_cosine_similarity(self, service):
emb1 = service.encode_single("list files")
emb2 = service.encode_single("show directory contents")
similarity = EmbeddingService.cosine_similarity(emb1, emb2)
assert -1.0 <= similarity <= 1.0