diff options
author | John Estabrook <jestabro@vyos.io> | 2023-11-28 14:19:00 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-28 14:19:00 -0600 |
commit | 7ec55fca91f2fd606e16325166b96a18dcb3d2c5 (patch) | |
tree | d81255ceabf5fcb32761fb0c3f9985d99c0b4654 /smoketest/scripts | |
parent | 6d9feb9df38bfcad7c68c2cbbdba7868a715ccef (diff) | |
parent | 3fbb1c602bb5a5003f218e437b83401664e02227 (diff) | |
download | vyos-1x-7ec55fca91f2fd606e16325166b96a18dcb3d2c5.tar.gz vyos-1x-7ec55fca91f2fd606e16325166b96a18dcb3d2c5.zip |
Merge pull request #2542 from jestabro/single-owner-https-config
http-api: T5782: use single config-mode script for https and http-api
Diffstat (limited to 'smoketest/scripts')
-rwxr-xr-x | smoketest/scripts/cli/test_service_https.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_service_https.py b/smoketest/scripts/cli/test_service_https.py index 24e1f1299..6cb91bcf1 100755 --- a/smoketest/scripts/cli/test_service_https.py +++ b/smoketest/scripts/cli/test_service_https.py @@ -254,6 +254,35 @@ class TestHTTPSService(VyOSUnitTestSHIM.TestCase): self.assertTrue(success) @ignore_warning(InsecureRequestWarning) + def test_api_add_delete(self): + address = '127.0.0.1' + key = 'VyOS-key' + url = f'https://{address}/retrieve' + payload = {'data': '{"op": "showConfig", "path": []}', 'key': f'{key}'} + headers = {} + + self.cli_set(base_path) + self.cli_commit() + + r = request('POST', url, verify=False, headers=headers, data=payload) + # api not configured; expect 503 + self.assertEqual(r.status_code, 503) + + self.cli_set(base_path + ['api', 'keys', 'id', 'key-01', 'key', key]) + self.cli_commit() + + r = request('POST', url, verify=False, headers=headers, data=payload) + # api configured; expect 200 + self.assertEqual(r.status_code, 200) + + self.cli_delete(base_path + ['api']) + self.cli_commit() + + r = request('POST', url, verify=False, headers=headers, data=payload) + # api deleted; expect 503 + self.assertEqual(r.status_code, 503) + + @ignore_warning(InsecureRequestWarning) def test_api_show(self): address = '127.0.0.1' key = 'VyOS-key' |