mirror of
https://github.com/deepset-ai/haystack.git
synced 2025-12-18 10:38:36 +00:00
Add coverage reports and more tests (#78)
This commit is contained in:
parent
747f402544
commit
54d32d4f1f
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,6 +2,7 @@
|
|||||||
qa.db
|
qa.db
|
||||||
**/qa.db
|
**/qa.db
|
||||||
**/*qa*.db
|
**/*qa*.db
|
||||||
|
**/test-reports
|
||||||
|
|
||||||
# Byte-compiled / optimized / DLL files
|
# Byte-compiled / optimized / DLL files
|
||||||
__pycache__/
|
__pycache__/
|
||||||
|
|||||||
@ -72,6 +72,8 @@ class TfidfRetriever(BaseRetriever):
|
|||||||
# get scores
|
# get scores
|
||||||
indices_and_scores = self._calc_scores(query)
|
indices_and_scores = self._calc_scores(query)
|
||||||
|
|
||||||
|
print(indices_and_scores)
|
||||||
|
|
||||||
# rank paragraphs
|
# rank paragraphs
|
||||||
df_sliced = self.df.loc[indices_and_scores.keys()]
|
df_sliced = self.df.loc[indices_and_scores.keys()]
|
||||||
df_sliced = df_sliced[:top_k]
|
df_sliced = df_sliced[:top_k]
|
||||||
|
|||||||
@ -9,4 +9,5 @@ sklearn
|
|||||||
elasticsearch
|
elasticsearch
|
||||||
elastic-apm
|
elastic-apm
|
||||||
tox
|
tox
|
||||||
|
coverage
|
||||||
# optional: sentence-transformers
|
# optional: sentence-transformers
|
||||||
|
|||||||
7
test/test_document.py
Normal file
7
test/test_document.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
from haystack.database.base import Document
|
||||||
|
|
||||||
|
|
||||||
|
def test_document_data_access():
|
||||||
|
doc = Document(id=1, text="test")
|
||||||
|
assert doc.text == "test"
|
||||||
|
assert doc['text'] == "test"
|
||||||
9
test/test_farm_reader.py
Normal file
9
test/test_farm_reader.py
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import pytest
|
||||||
|
|
||||||
|
from haystack.reader.farm import FARMReader
|
||||||
|
|
||||||
|
|
||||||
|
def test_farm_reader():
|
||||||
|
reader = FARMReader(model_name_or_path="deepset/bert-base-cased-squad2", use_gpu=False)
|
||||||
|
assert reader is not None
|
||||||
|
assert isinstance(reader, FARMReader)
|
||||||
19
test/test_tfidf_retriever.py
Normal file
19
test/test_tfidf_retriever.py
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
from haystack.database.base import Document
|
||||||
|
|
||||||
|
|
||||||
|
def test_tfidf_retriever():
|
||||||
|
from haystack.retriever.tfidf import TfidfRetriever
|
||||||
|
|
||||||
|
test_docs = [
|
||||||
|
{"name": "testing the finder 1", "text": "godzilla says hello"},
|
||||||
|
{"name": "testing the finder 2", "text": "optimus prime says bye"},
|
||||||
|
{"name": "testing the finder 3", "text": "alien says arghh"}
|
||||||
|
]
|
||||||
|
|
||||||
|
from haystack.database.memory import InMemoryDocumentStore
|
||||||
|
document_store = InMemoryDocumentStore()
|
||||||
|
document_store.write_documents(test_docs)
|
||||||
|
|
||||||
|
retriever = TfidfRetriever(document_store)
|
||||||
|
retriever.fit()
|
||||||
|
assert retriever.retrieve("godzilla", top_k=1) == [Document(id='0', text='godzilla says hello', external_source_id=None, question=None, query_score=None, meta=None)]
|
||||||
16
tox.ini
16
tox.ini
@ -5,6 +5,16 @@ envlist = py36,py37
|
|||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
changedir = test
|
changedir = test
|
||||||
deps = pytest
|
deps =
|
||||||
pandas
|
coverage
|
||||||
commands = pytest --basetemp="{envtmpdir}" {posargs}
|
pytest
|
||||||
|
pandas
|
||||||
|
setenv =
|
||||||
|
COVERAGE_FILE = test-reports/.coverage
|
||||||
|
PYTEST_ADDOPTS = --junitxml=test-reports/{envname}/junit.xml -vv
|
||||||
|
commands =
|
||||||
|
coverage run --source haystack --parallel-mode -m pytest {posargs}
|
||||||
|
coverage combine
|
||||||
|
coverage report -m
|
||||||
|
coverage html -d test-reports/coverage-html
|
||||||
|
coverage xml -o test-reports/coverage.xml
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user