Code Duplication    Length = 21-22 lines in 3 locations

tests/unit/test_main.py 3 locations

@@ 23-44 (lines=22) @@
20
        self.api_client = get_test_client(controller, self.napp)
21
        self.base_endpoint = "kytos/telemetry_int/v1"
22
23
    async def test_enable_telemetry(self, monkeypatch) -> None:
24
        """Test enable telemetry."""
25
        api_mock, flow = AsyncMock(), MagicMock()
26
        flow.cookie = 0xA800000000000001
27
        monkeypatch.setattr(
28
            "napps.kytos.telemetry_int.main.api",
29
            api_mock,
30
        )
31
32
        evc_id = utils.get_id_from_cookie(flow.cookie)
33
        api_mock.get_evcs.return_value = {
34
            evc_id: {"metadata": {"telemetry": {"enabled": False}}}
35
        }
36
37
        self.napp.int_manager = AsyncMock()
38
39
        endpoint = f"{self.base_endpoint}/evc/enable"
40
        response = await self.api_client.post(endpoint, json={"evc_ids": [evc_id]})
41
        assert self.napp.int_manager.enable_int.call_count == 1
42
        assert self.napp.int_manager._remove_int_flows.call_count == 1
43
        assert response.status_code == 201
44
        assert response.json() == [evc_id]
45
46
    async def test_redeploy_telemetry(self, monkeypatch) -> None:
47
        """Test redeploy telemetry."""
@@ 77-97 (lines=21) @@
74
        assert response.status_code == 400
75
        assert "evc_ids" in response.json()["description"]
76
77
    async def test_disable_telemetry(self, monkeypatch) -> None:
78
        """Test disable telemetry."""
79
        api_mock, flow = AsyncMock(), MagicMock()
80
        flow.cookie = 0xA800000000000001
81
        monkeypatch.setattr(
82
            "napps.kytos.telemetry_int.main.api",
83
            api_mock,
84
        )
85
86
        evc_id = utils.get_id_from_cookie(flow.cookie)
87
        api_mock.get_evcs.return_value = {
88
            evc_id: {"metadata": {"telemetry": {"enabled": True}}}
89
        }
90
91
        self.napp.int_manager = AsyncMock()
92
93
        endpoint = f"{self.base_endpoint}/evc/disable"
94
        response = await self.api_client.post(endpoint, json={"evc_ids": [evc_id]})
95
        assert self.napp.int_manager.disable_int.call_count == 1
96
        assert response.status_code == 200
97
        assert response.json() == [evc_id]
98
99
    async def test_get_enabled_evcs(self, monkeypatch) -> None:
100
        """Test get enabled evcs."""
@@ 46-66 (lines=21) @@
43
        assert response.status_code == 201
44
        assert response.json() == [evc_id]
45
46
    async def test_redeploy_telemetry(self, monkeypatch) -> None:
47
        """Test redeploy telemetry."""
48
        api_mock, flow = AsyncMock(), MagicMock()
49
        flow.cookie = 0xA800000000000001
50
        monkeypatch.setattr(
51
            "napps.kytos.telemetry_int.main.api",
52
            api_mock,
53
        )
54
55
        evc_id = utils.get_id_from_cookie(flow.cookie)
56
        api_mock.get_evcs.return_value = {
57
            evc_id: {"metadata": {"telemetry": {"enabled": False}}}
58
        }
59
60
        self.napp.int_manager = AsyncMock()
61
62
        endpoint = f"{self.base_endpoint}/evc/redeploy"
63
        response = await self.api_client.patch(endpoint, json={"evc_ids": [evc_id]})
64
        assert self.napp.int_manager.redeploy_int.call_count == 1
65
        assert response.status_code == 201
66
        assert response.json() == [evc_id]
67
68
    @pytest.mark.parametrize("route", ["/evc/enable", "/evc/disable"])
69
    async def test_en_dis_openapi_validation(self, route: str) -> None: