Skip to content

Commit bbc841a

Browse files
authored
Merge pull request #425 from Limmen/integration_test
cli test: ls containers is added.
2 parents 5ba3388 + e3e6e8c commit bbc841a

File tree

1 file changed

+32
-1
lines changed

1 file changed

+32
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
1+
from typing import List
12
from click.testing import CliRunner
23
from csle_cli.cli import ls
34

5+
from csle_cluster.cluster_manager.cluster_manager_pb2 import DockerContainerDTO
6+
47

58
class TestCSLECliSuite:
69
"""
710
Test suite for cli.py
811
"""
912

10-
def test_ls(self) -> None:
13+
def test_ls_all(self) -> None:
1114
"""
1215
Tests the ls command
1316
@@ -16,3 +19,31 @@ def test_ls(self) -> None:
1619
runner = CliRunner()
1720
result = runner.invoke(ls, ["--all"])
1821
assert result.exit_code == 0
22+
23+
def test_ls_running_containers(self) -> None:
24+
"""
25+
Tests the ls command
26+
27+
:return: None
28+
"""
29+
import csle_common.constants.constants as constants
30+
from csle_common.metastore.metastore_facade import MetastoreFacade
31+
from csle_cluster.cluster_manager.cluster_controller import ClusterController
32+
config = MetastoreFacade.get_config(id=1)
33+
running_containers: List[DockerContainerDTO] = []
34+
for node in config.cluster_config.cluster_nodes:
35+
running_containers_dto = ClusterController.list_all_running_containers(
36+
ip=node.ip, port=constants.GRPC_SERVERS.CLUSTER_MANAGER_PORT)
37+
running_containers_dtos = list(running_containers_dto.runningContainers)
38+
running_containers = running_containers + running_containers_dtos
39+
runner = CliRunner()
40+
result = runner.invoke(ls, ["containers"])
41+
cli_output = result.stdout_bytes.decode('utf-8')
42+
cli_output_lines = cli_output.strip().split('\n')
43+
number_of_containers_from_cli = 0
44+
for line in cli_output_lines:
45+
if "[running]" in line:
46+
number_of_containers_from_cli += 1
47+
48+
assert number_of_containers_from_cli == len(running_containers)
49+
assert result.exit_code == 0

0 commit comments

Comments
 (0)