diff options
author | Thomas Duval <thomas.duval@orange.com> | 2016-09-09 10:07:21 +0200 |
---|---|---|
committer | Thomas Duval <thomas.duval@orange.com> | 2016-09-20 10:38:38 +0200 |
commit | 2a451550630dcef4ffe02610440892b60ac2f38f (patch) | |
tree | c63ec74c9d58137da765bf906e156bffd0db3b5a | |
parent | 5400372d88d618a2b015e8ae7c324c85d732ea40 (diff) |
Use curl to auth to ODL and fix a bug in moonclient test.
Change-Id: I7a3dfdcb8a7919bfc0846428a7862ecc314bc57f
(cherry picked from commit 77be911e1ed0d16626adeae2eae3563bb18b3a8e)
-rw-r--r-- | moonclient/moonclient/tests/tests_empty_policy_new_user.json | 2 | ||||
-rwxr-xr-x | tests/run_tests.py | 30 |
2 files changed, 24 insertions, 8 deletions
diff --git a/moonclient/moonclient/tests/tests_empty_policy_new_user.json b/moonclient/moonclient/tests/tests_empty_policy_new_user.json index 311f59e9..ad9d7e52 100644 --- a/moonclient/moonclient/tests/tests_empty_policy_new_user.json +++ b/moonclient/moonclient/tests/tests_empty_policy_new_user.json @@ -77,7 +77,7 @@ }, { "name": "create user demo", - "external_command": "openstack user create --password console", + "external_command": "openstack user create --password console demo", "result": "", "description": "Create user demo" }, diff --git a/tests/run_tests.py b/tests/run_tests.py index eb914a45..f4f6f542 100755 --- a/tests/run_tests.py +++ b/tests/run_tests.py @@ -79,15 +79,31 @@ def test_federation(): return False, "Not able to retrieve Moon token on {}:{} (error code: {}).".format(nhost, nport, resp.status) - # Retrieve ODL token + # Test ODL auth nhost, nport = __get_endpoint_url(name="neutron") + nport = "8181" auth_data = {'username': 'admin', 'password': 'console'} - conn = client.HTTPConnection(nhost, "8181") - headers = {"Content-type": "application/json"} - conn.request("POST", "/auth/v1/domains", json.dumps(auth_data).encode('utf-8'), headers=headers) - resp = conn.getresponse() - if resp.status not in (200, 201, 202, 204): - return False, "Not able to retrieve ODL token on {}:{} (error code: {}).".format(nhost, nport, resp.status) + + # Get basic auth with curl + proc = subprocess.Popen("curl -u {}:{} http://{}:{}/auth/v1/domains".format( + auth_data["username"], auth_data["password"], nhost, nport), + stdout=subprocess.PIPE, stderr=subprocess.PIPE) + _stdout = proc.stdout.read() + _stderr = proc.stderr.read() + if len(_stdout) > 0: + _stdout_json = json.loads(_stdout) + if _stdout_json['code'] not in (200, 201, 202, 204): + return False, "Not able to retrieve ODL auth ({}).".format(_stdout) + + # Retrieve token from ODL + # conn = client.HTTPConnection(nhost, "8181") + # headers = {"Content-type": "application/json"} + # conn.request("POST", "/auth/v1/domains", json.dumps(auth_data).encode('utf-8'), headers=headers) + # resp = conn.getresponse() + # if resp.status not in (200, 201, 202, 204): + # return False, "Not able to retrieve ODL token on {}:{} (error code: {}).".format(nhost, "8181", resp.status) + + # Retrieve basic auth from ODL # auth_handler = HTTPBasicAuthHandler() # auth_handler.add_password(realm='Moon', # uri='http://{host}:{port}/auth/v1/domains'.format(host=HOST_ODL, port=PORT_ODL), |