@@ 24-45 (lines=22) @@ | ||
21 | self.api_client = get_test_client(controller, self.napp) |
|
22 | self.base_endpoint = "kytos/telemetry_int/v1" |
|
23 | ||
24 | async def test_enable_telemetry(self, monkeypatch) -> None: |
|
25 | """Test enable telemetry.""" |
|
26 | api_mock, flow = AsyncMock(), MagicMock() |
|
27 | flow.cookie = 0xA800000000000001 |
|
28 | monkeypatch.setattr( |
|
29 | "napps.kytos.telemetry_int.main.api", |
|
30 | api_mock, |
|
31 | ) |
|
32 | ||
33 | evc_id = utils.get_id_from_cookie(flow.cookie) |
|
34 | api_mock.get_evcs.return_value = { |
|
35 | evc_id: {"metadata": {"telemetry": {"enabled": False}}} |
|
36 | } |
|
37 | ||
38 | self.napp.int_manager = AsyncMock() |
|
39 | ||
40 | endpoint = f"{self.base_endpoint}/evc/enable" |
|
41 | response = await self.api_client.post(endpoint, json={"evc_ids": [evc_id]}) |
|
42 | assert self.napp.int_manager.enable_int.call_count == 1 |
|
43 | assert self.napp.int_manager._remove_int_flows_by_cookies.call_count == 1 |
|
44 | assert response.status_code == 201 |
|
45 | assert response.json() == [evc_id] |
|
46 | ||
47 | async def test_redeploy_telemetry_enabled(self, monkeypatch) -> None: |
|
48 | """Test redeploy telemetry enabled.""" |
|
@@ 104-124 (lines=21) @@ | ||
101 | assert response.status_code == 400 |
|
102 | assert "evc_ids" in response.json()["description"] |
|
103 | ||
104 | async def test_disable_telemetry(self, monkeypatch) -> None: |
|
105 | """Test disable telemetry.""" |
|
106 | api_mock, flow = AsyncMock(), MagicMock() |
|
107 | flow.cookie = 0xA800000000000001 |
|
108 | monkeypatch.setattr( |
|
109 | "napps.kytos.telemetry_int.main.api", |
|
110 | api_mock, |
|
111 | ) |
|
112 | ||
113 | evc_id = utils.get_id_from_cookie(flow.cookie) |
|
114 | api_mock.get_evcs.return_value = { |
|
115 | evc_id: {"metadata": {"telemetry": {"enabled": True}}} |
|
116 | } |
|
117 | ||
118 | self.napp.int_manager = AsyncMock() |
|
119 | ||
120 | endpoint = f"{self.base_endpoint}/evc/disable" |
|
121 | response = await self.api_client.post(endpoint, json={"evc_ids": [evc_id]}) |
|
122 | assert self.napp.int_manager.disable_int.call_count == 1 |
|
123 | assert response.status_code == 200 |
|
124 | assert response.json() == [evc_id] |
|
125 | ||
126 | async def test_get_enabled_evcs(self, monkeypatch) -> None: |
|
127 | """Test get enabled evcs.""" |
|
@@ 47-67 (lines=21) @@ | ||
44 | assert response.status_code == 201 |
|
45 | assert response.json() == [evc_id] |
|
46 | ||
47 | async def test_redeploy_telemetry_enabled(self, monkeypatch) -> None: |
|
48 | """Test redeploy telemetry enabled.""" |
|
49 | api_mock, flow = AsyncMock(), MagicMock() |
|
50 | flow.cookie = 0xA800000000000001 |
|
51 | monkeypatch.setattr( |
|
52 | "napps.kytos.telemetry_int.main.api", |
|
53 | api_mock, |
|
54 | ) |
|
55 | ||
56 | evc_id = utils.get_id_from_cookie(flow.cookie) |
|
57 | api_mock.get_evc.return_value = { |
|
58 | evc_id: {"metadata": {"telemetry": {"enabled": True}}} |
|
59 | } |
|
60 | ||
61 | self.napp.int_manager = AsyncMock() |
|
62 | ||
63 | endpoint = f"{self.base_endpoint}/evc/redeploy" |
|
64 | response = await self.api_client.patch(endpoint, json={"evc_ids": [evc_id]}) |
|
65 | assert self.napp.int_manager.redeploy_int.call_count == 1 |
|
66 | assert response.status_code == 201 |
|
67 | assert response.json() == [evc_id] |
|
68 | ||
69 | async def test_redeploy_telemetry_not_enabled(self, monkeypatch) -> None: |
|
70 | """Test redeploy telemetry not enabled.""" |