| Total Complexity | 5 |
| Total Lines | 44 |
| Duplicated Lines | 0 % |
| Changes | 0 | ||
| 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 |