Get auth token when checking deployment 39/49339/2
authorLinda Wang <wangwulin@huawei.com>
Wed, 20 Dec 2017 07:51:17 +0000 (07:51 +0000)
committerLinda Wang <wangwulin@huawei.com>
Wed, 20 Dec 2017 08:10:21 +0000 (08:10 +0000)
JIRA: FUNCTEST-900

Change-Id: Ie313d273a357a35b176b3918de108d85164776fa
Signed-off-by: Linda Wang <wangwulin@huawei.com>
functest/ci/check_deployment.py
functest/tests/unit/ci/test_check_deployment.py

index ffea6be..9453c6d 100644 (file)
@@ -52,6 +52,16 @@ def verify_connectivity(endpoint):
     return False
 
 
+def get_auth_token(os_creds):
+    """ Get auth token """
+    sess = keystone_utils.keystone_session(os_creds)
+    try:
+        return sess.get_token()
+    except Exception as error:
+        LOGGER.error("Got token ...FAILED")
+        raise error
+
+
 class CheckDeployment(object):
     """ Check deployment class."""
 
@@ -69,12 +79,15 @@ class CheckDeployment(object):
                               format(self.rc_file))
 
     def check_auth_endpoint(self):
-        """ Verifies connectivity to the OS_AUTH_URL given in the RC file """
+        """ Verifies connectivity to the OS_AUTH_URL given in the RC file
+        and get auth token"""
         rc_endpoint = self.os_creds.auth_url
         if not verify_connectivity(rc_endpoint):
             raise Exception("OS_AUTH_URL {} is not reachable.".
                             format(rc_endpoint))
         LOGGER.info("Connectivity to OS_AUTH_URL %s ...OK", rc_endpoint)
+        if get_auth_token(self.os_creds):
+            LOGGER.info("Got token ...OK")
 
     def check_public_endpoint(self):
         """ Gets the public endpoint and verifies connectivity to it """
index fa2f213..fc6368e 100644 (file)
@@ -63,9 +63,12 @@ class CheckDeploymentTesting(unittest.TestCase):
 
     def test_check_auth_endpoint(self):
         with mock.patch('functest.ci.check_deployment.verify_connectivity',
-                        return_value=True) as m:
+                        return_value=True) as m,\
+                mock.patch('functest.ci.check_deployment.get_auth_token',
+                           return_value='gAAAAABaOhXGS') as mock_token:
             self.deployment.check_auth_endpoint()
             self.assertTrue(m.called)
+            self.assertTrue(mock_token.called)
 
     def test_check_auth_endpoint_not_reachable(self):
         with mock.patch('functest.ci.check_deployment.verify_connectivity',