view pytest.ini @ 6476:8b7c0ef62427

search: make "repository:" condition work case-insensitively as expected Before this revision, "repository:" condition at searching for "Commit messages" never shows revisions in a repository, of which name uses upper case letter. Using ID for "repository" of CHGSETS_SCHEMA preserves case of repository name at indexing. On the other hand, search condition itself is forcibly lowered before parsing. - files in repository "FOO" is indexed as "FOO" in "repository" field - "repository:FOO" condition is treated as "repository:foo: Then, indexing search itself is executed case-sensitively. Therefore, "repository:FOO" condition never show revisions in repository "FOO". But just making "repository" of CHGSETS_SCHEMA case-insensitive isn't reasonable enough, because it breaks assumptions below, if there is case-insensitive name collision between repositories, even though Kallithea itself can manage such repositories at same time. - combination of "raw_id" (= revision hash ID) and "repository" is unique between all known revisions under Kallithea CHGSETS_SCHEMA assumes this. This unique-ness is required by Whoosh library to determine whether index table should be updated or not for that repository. - searching in a repository shows only revisions in that repository Before this revision, this filtering is achieve by "repository:" condition with case-preserved repository name from requested URL. To make "repository:" search condition work case-insensitively as expected (without any violation of assumptions above), this revision does: - make "repository" of CHGSETS_SCHEMA case-insensitive by "analyzer=ICASEIDANALYZER" - introduce "repository_rawname" into SCHEMA and CHGSETS_SCHEMA, to ensure assumptions described above, by preserving case of repository name "repository_rawname" of SCHEMA uses not ID but TEXT, because the former disable "positions" feature, which is required for highlight-ing file content (see previous revision for detail). This revision requires full re-building index tables, because indexing schemas are changed.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Mon, 23 Jan 2017 02:17:38 +0900
parents d88077fae3d6
children afa5e0bdb76f
line wrap: on
line source

[pytest]
# only look for tests in kallithea/tests
python_files = kallithea/tests/**/test_*.py
addopts =
    # --verbose
    # show extra test summary info as specified by chars (f)ailed, (E)error, (s)skipped, (x)failed, (X)passed, (w)warnings.
    -rfEsxXw
    # Shorter scrollbacks; less stuff to scroll through
    --tb=short