Add regression corpus and opt-in catalog test route
This commit is contained in:
1 parent
476cbb0116
commit
c7b19d1310
7 files changed
+491
-13
No files matched your search
@@ -436,7 +436,7 @@ Elasticsearch или другой поисковый кластер имеет
|
||||
python -m pytest -q
|
||||
```
|
||||
|
||||
В текущем наборе 67 тестов:
|
||||
Набор тестов покрывает:
|
||||
|
||||
- точные совпадения;
|
||||
- алиасы и разговорные названия;
|
||||
@@ -453,6 +453,20 @@ python -m pytest -q
|
||||
- строгий формат request/response;
|
||||
- единственный endpoint `/match`.
|
||||
|
||||
`tests/test_message_corpus.py` автоматически читает все непустые строки из
|
||||
`messages.txt` и `more_messages.txt`, прогоняет их через matcher и строго
|
||||
сравнивает статус и SKU с таблицей `EXPECTED_RESULTS`. Ключом служит сам текст
|
||||
сообщения, поэтому добавление строки не сдвигает остальные ожидания:
|
||||
|
||||
```python
|
||||
"бур sds 10х210": ("matched", ("BIT-0080",)),
|
||||
"диск": ("ambiguous", ("DSK-0011", "DSK-0012", "DSK-0013")),
|
||||
```
|
||||
|
||||
Для `ambiguous` SKU перечисляются в ожидаемом порядке. Confidence намеренно не
|
||||
фиксируется точным числом: тест проверяет только допустимый диапазон, чтобы
|
||||
изменение формулы оценки не ломало проверенные статус и состав кандидатов.
|
||||
|
||||
## Структура
|
||||
|
||||
```text
|
||||
@@ -472,6 +486,7 @@ app/
|
||||
tests/
|
||||
├── conftest.py
|
||||
├── test_api.py
|
||||
├── test_message_corpus.py
|
||||
├── test_matcher.py
|
||||
└── test_normalization.py
|
||||
```
|
||||
|
||||
Reference in new issue
Block a user