Changeset View
Changeset View
Standalone View
Standalone View
swh/search/tests/test_cli.py
Show All 15 Lines | |||||
from swh.search import get_search | from swh.search import get_search | ||||
from swh.search.cli import search_cli_group | from swh.search.cli import search_cli_group | ||||
CLI_CONFIG = """ | CLI_CONFIG = """ | ||||
search: | search: | ||||
cls: elasticsearch | cls: elasticsearch | ||||
hosts: | hosts: | ||||
- '%(elasticsearch_host)s' | - '%(elasticsearch_host)s' | ||||
index_prefix: test | indexes: | ||||
origin: | |||||
index: test | |||||
read_alias: test-read | |||||
write_alias: test-write | |||||
""" | """ | ||||
JOURNAL_OBJECTS_CONFIG_TEMPLATE = """ | JOURNAL_OBJECTS_CONFIG_TEMPLATE = """ | ||||
journal: | journal: | ||||
brokers: | brokers: | ||||
- {broker} | - {broker} | ||||
prefix: {prefix} | prefix: {prefix} | ||||
group_id: {group_id} | group_id: {group_id} | ||||
▲ Show 20 Lines • Show All 354 Lines • ▼ Show 20 Lines | with pytest.raises(ValueError, match="object_types"): | ||||
False, | False, | ||||
# Missing --object-types (and no config key) will make the cli raise | # Missing --object-types (and no config key) will make the cli raise | ||||
["journal-client", "objects", "--stop-after-objects", "1"], | ["journal-client", "objects", "--stop-after-objects", "1"], | ||||
journal_cfg, | journal_cfg, | ||||
elasticsearch_host=elasticsearch_host, | elasticsearch_host=elasticsearch_host, | ||||
) | ) | ||||
def test__initialize__with_prefix(elasticsearch_host): | def test__initialize__with_index_name(elasticsearch_host): | ||||
"""Initializing the index with a prefix should create an <prefix>_origin index""" | """Initializing the index with an index name should create the right index""" | ||||
search = get_search( | search = get_search( | ||||
"elasticsearch", hosts=[elasticsearch_host], index_prefix="test" | "elasticsearch", | ||||
hosts=[elasticsearch_host], | |||||
indexes={"origin": {"index": "test"}}, | |||||
) | ) | ||||
assert search.origin_index == "test_origin" | assert search._get_origin_index() == "test" | ||||
assert search._get_origin_read_alias() == "origin-read" | |||||
assert search._get_origin_write_alias() == "origin-write" | |||||
def test__initialize__without_prefix(elasticsearch_host): | def test__initialize__with_read_alias(elasticsearch_host): | ||||
"""Initializing the index without a prefix should create an origin index""" | """Initializing the index with a search alias name should create | ||||
the right search alias""" | |||||
search = get_search("elasticsearch", hosts=[elasticsearch_host]) | search = get_search( | ||||
"elasticsearch", | |||||
hosts=[elasticsearch_host], | |||||
indexes={"origin": {"read_alias": "test"}}, | |||||
) | |||||
assert search._get_origin_index() == "origin" | |||||
assert search._get_origin_read_alias() == "test" | |||||
assert search._get_origin_write_alias() == "origin-write" | |||||
def test__initialize__with_write_alias(elasticsearch_host): | |||||
"""Initializing the index with an indexing alias name should create | |||||
the right indexing alias""" | |||||
search = get_search( | |||||
"elasticsearch", | |||||
hosts=[elasticsearch_host], | |||||
indexes={"origin": {"write_alias": "test"}}, | |||||
) | |||||
assert search.origin_index == "origin" | assert search._get_origin_index() == "origin" | ||||
assert search._get_origin_read_alias() == "origin-read" | |||||
assert search._get_origin_write_alias() == "test" |