Coverage for tests/integration/test_basic_data_streams.py: 100%
33 statements
« prev ^ index » next coverage.py v7.4.4, created at 2024-04-25 19:21 -0600
« prev ^ index » next coverage.py v7.4.4, created at 2024-04-25 19:21 -0600
1"""Test functions in es_testbed.TestBed"""
2# pylint: disable=redefined-outer-name,missing-function-docstring,missing-class-docstring
3import pytest
4from es_testbed import PlanBuilder, TestBed
5from es_testbed.defaults import NAMEMAPPER
6from es_testbed.helpers.es_api import get_ds_current
8@pytest.fixture(scope='module')
9def settings(prefix, uniq):
10 return {
11 'type': 'data_stream',
12 'prefix': prefix,
13 'rollover_alias': False,
14 'uniq': uniq,
15 'ilm': {}, # use defaults
16 }
18class TestBasicDataStreams:
19 @pytest.fixture(scope="class")
20 def tb(self, client, settings):
21 theplan = PlanBuilder(settings=settings).plan
22 teebee = TestBed(client, plan=theplan)
23 teebee.setup()
24 yield teebee
25 teebee.teardown()
27 def test_entity_count(self, tb):
28 assert len(tb.tracker.entities.entity_list) == 1
30 def test_name(self, tb, prefix, uniq):
31 value = f'{prefix}-{NAMEMAPPER['data_stream']}-{uniq}'
32 assert tb.tracker.entities.last == value
34 def test_write_index(self, tb, prefix, uniq):
35 ds = f'{prefix}-{NAMEMAPPER['data_stream']}-{uniq}'
36 assert tb.tracker.entities.indexlist[-1] == get_ds_current(tb.client, ds)
38 def test_index_template(self, tb, prefix, uniq):
39 components = []
40 components.append(f'{prefix}-{NAMEMAPPER['component']}-{uniq}-000001')
41 components.append(f'{prefix}-{NAMEMAPPER['component']}-{uniq}-000002')
42 assert tb.tracker.components.entity_list == components
43 template = f'{prefix}-{NAMEMAPPER['template']}-{uniq}-000001'
44 assert tb.tracker.templates.last == template
45 result = tb.client.indices.get_index_template(name=template)['index_templates']
46 assert len(result) == 1
47 assert result[0]['index_template']['composed_of'] == components