SIENTIAPDE-988
Add temporary functiontal tests, that must be removed soon. Refactor tests: Remove outdated resource manager tests and add functional tests with Docker and Kafka integration - Deleted existing unit tests for ResourceManager. - Introduced new functional tests for single node operations with Redis and Kafka. - Added Docker Compose setup for test environment. - Implemented fixtures for Redis and Kafka consumers. - Created comprehensive tests for data publishing and slot management. - Added unit tests for DataManager and IngestorManager with mocked dependencies. - Included tests for OpcManager covering connection, subscription, and data change notifications.
This commit is contained in:
@@ -11,7 +11,6 @@ class IngestorManager():
|
||||
def __init__(self,
|
||||
kafka_servers: str, redis_host: str, redis_port: int,
|
||||
lease_ttl: int, heartbeat_ttl: int, pod_id: str,
|
||||
number_of_ingestors: int,
|
||||
poll_interval: int, logger: Logger):
|
||||
|
||||
self.data_manager = DataManager(kafka_servers, logger)
|
||||
@@ -19,7 +18,7 @@ class IngestorManager():
|
||||
self.resource_manager = ResourceManager(
|
||||
redis_host, redis_port, lease_ttl, heartbeat_ttl, pod_id
|
||||
)
|
||||
self.number_of_ingestors = number_of_ingestors
|
||||
self.number_of_slots = 0
|
||||
self.poll_interval = poll_interval
|
||||
self.logger = logger
|
||||
self.managed_tags = {}
|
||||
@@ -98,9 +97,14 @@ class IngestorManager():
|
||||
ingestors = self.resource_manager.get_all_ingestors()
|
||||
return ingestors if ingestors else []
|
||||
|
||||
def get_number_of_slots(self) -> int:
|
||||
slots = self.resource_manager.get_all_slots()
|
||||
self.number_of_slots = len(slots) if slots else 0
|
||||
return self.number_of_slots
|
||||
|
||||
def get_slot_leases(self, max_slots: int = 1) -> Dict:
|
||||
acquired = {}
|
||||
for i in range(1, self.number_of_ingestors + 1):
|
||||
for i in range(1, self.number_of_slots + 1):
|
||||
if self.resource_manager.lease_tag(str(i)):
|
||||
self.logger.info(f"Leased slot {i}")
|
||||
slots = self.resource_manager.get_tag_slot(str(i))
|
||||
|
||||
Reference in New Issue
Block a user