Coverage for tests/integration/test_basic_data_streams.py: 100%

35 statements  

« prev     ^ index     » next       coverage.py v7.4.4, created at 2024-04-27 07:35 -0600

1"""Test functions in es_testbed.TestBed""" 

2 

3# pylint: disable=redefined-outer-name,missing-docstring 

4import pytest 

5from es_testbed import PlanBuilder, TestBed 

6from es_testbed.helpers.es_api import get_ds_current 

7 

8 

9@pytest.fixture(scope='module') 

10def settings(prefix, uniq): 

11 return { 

12 'type': "data_stream", 

13 'prefix': prefix, 

14 'rollover_alias': False, 

15 'repository': None, 

16 'uniq': uniq, 

17 'ilm': {}, # use defaults 

18 } 

19 

20 

21class TestBasicDataStreams: 

22 @pytest.fixture(scope="class") 

23 def tb(self, client, settings): 

24 theplan = PlanBuilder(settings=settings).plan 

25 teebee = TestBed(client, plan=theplan) 

26 teebee.setup() 

27 yield teebee 

28 teebee.teardown() 

29 

30 def test_entity_count(self, tb): 

31 assert len(tb.tracker.entities.entity_list) == 1 

32 

33 def test_name(self, tb, namecore): 

34 value = f'{namecore("data_stream")}' 

35 assert tb.tracker.entities.last == value 

36 

37 def test_first_backing(self, namecore, ymd, tb): 

38 idx = f'.ds-{namecore("data_stream")}-{ymd}-000001' 

39 assert tb.tracker.entities.ds.backing_indices[0] == idx 

40 

41 def test_write_index(self, tb, namecore): 

42 ds = f'{namecore("data_stream")}' 

43 assert tb.tracker.entities.indexlist[-1] == get_ds_current(tb.client, ds) 

44 

45 def test_index_template(self, tb, namecore): 

46 components = [] 

47 components.append(f'{namecore("component")}-000001') 

48 components.append(f'{namecore("component")}-000002') 

49 assert tb.tracker.components.entity_list == components 

50 template = f'{namecore("template")}-000001' 

51 assert tb.tracker.templates.last == template 

52 result = tb.client.indices.get_index_template(name=template)['index_templates'] 

53 assert len(result) == 1 

54 assert result[0]['index_template']['composed_of'] == components