tests.integration.test_deploy_and_evaluate_model_ssl   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 5
eloc 22
dl 0
loc 44
rs 10
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A TestDeployAndEvaluateModelSSL._get_transfer_protocol() 0 2 1
A TestDeployAndEvaluateModelSSL._get_key_file_name() 0 2 1
A TestDeployAndEvaluateModelSSL._get_port() 0 2 1
A TestDeployAndEvaluateModelSSL._get_certificate_file_name() 0 2 1
A TestDeployAndEvaluateModelSSL.test_deploy_and_evaluate_model_ssl() 0 26 1
1
from . import integ_test_base
2
import requests
3
4
5
class TestDeployAndEvaluateModelSSL(integ_test_base.IntegTestBase):
6
    def _get_port(self):
7
        return "9005"
8
9
    def _get_transfer_protocol(self) -> str:
10
        return "https"
11
12
    def _get_certificate_file_name(self) -> str:
13
        return "./tests/integration/resources/2019_04_24_to_3018_08_25.crt"
14
15
    def _get_key_file_name(self) -> str:
16
        return "./tests/integration/resources/2019_04_24_to_3018_08_25.key"
17
18
    def test_deploy_and_evaluate_model_ssl(self):
19
        # Uncomment the following line to preserve
20
        # test case output and other files (config, state, ect.)
21
        # in system temp folder.
22
        # self.set_delete_temp_folder(False)
23
24
        self.deploy_models(self._get_username(), self._get_password())
25
26
        payload = """{
27
                "data": { "_arg1": ["happy", "sad", "neutral"] },
28
                "script":
29
                "return tabpy.query('Sentiment%20Analysis',_arg1)['response']"
30
            }"""
31
32
        session = requests.Session()
33
        # Do not verify servers' cert to be signed by trusted CA
34
        session.verify = False
35
        # Do not warn about insecure request
36
        requests.packages.urllib3.disable_warnings()
37
        response = session.post(
38
            f"{self._get_transfer_protocol()}://"
39
            f"localhost:{self._get_port()}/evaluate",
40
            data=payload,
41
        )
42
43
        self.assertEqual(200, response.status_code)
44