Coverage for /Users/buh/.pyenv/versions/3.12.9/envs/es-testbed/lib/python3.12/site-packages/es_testbed/entities/data_stream.py: 100%
30 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-31 12:31 -0600
« prev ^ index » next coverage.py v7.6.12, created at 2025-03-31 12:31 -0600
1"""data_stream Entity Class"""
3# pylint: disable=C0115,C0116,R0902,R0904,R0913,R0917
4import typing as t
5import logging
6import tiered_debug as debug
7from es_testbed.entities.alias import Alias
8from es_testbed.helpers.es_api import get_backing_indices
10if t.TYPE_CHECKING:
11 from elasticsearch8 import Elasticsearch
13logger = logging.getLogger(__name__)
16class DataStream(Alias):
17 """data_stream Entity Class"""
19 def __init__(
20 self,
21 client: 'Elasticsearch',
22 name: t.Union[str, None] = None,
23 ):
24 debug.lv2('Initializing DataStream entity object...')
25 super().__init__(client=client, name=name)
26 self.index_tracker = []
27 self.alias = None
28 debug.lv3('DataStream entity object initialized')
30 @property
31 def backing_indices(self):
32 """Return the list of backing indices for the data_stream"""
33 debug.lv2('Starting method...')
34 retval = get_backing_indices(self.client, self.name)
35 debug.lv3('Exiting method, returning value')
36 debug.lv5(f'Value = {retval}')
37 return retval
39 def verify(self, index_list: t.Sequence[str]) -> bool:
40 """Verify that the backing indices match ``index_list``"""
41 debug.lv2('Starting method...')
42 retval = False
43 if self.backing_indices == index_list:
44 debug.lv3(f'Confirm match of data_stream "{self.name}" backing indices')
45 retval = True
46 debug.lv3('Exiting method, returning value')
47 debug.lv5(f'Value = {retval}')
48 return retval