Merge remote-tracking branch 'origin/master' into merge-qos

Change-Id: I373e1bf2d9b0efc9b1aff01695405f7a70ca6bef
diff --git a/neutron/tests/tempest/common/accounts.py b/neutron/tests/tempest/common/accounts.py
index 1fcef11..1a50e3c 100644
--- a/neutron/tests/tempest/common/accounts.py
+++ b/neutron/tests/tempest/common/accounts.py
@@ -271,7 +271,7 @@
                 return getattr(user, cred_arg) != getattr(alt_user, cred_arg)
             except exceptions.InvalidCredentials as ic:
                 msg = "At least one of the configured credentials is " \
-                      "not valid: %s" % ic.message
+                      "not valid: %s" % ic
                 raise exceptions.InvalidConfiguration(msg)
         else:
             # TODO(andreaf) Add a uniqueness check here
diff --git a/neutron/tests/tempest/common/glance_http.py b/neutron/tests/tempest/common/glance_http.py
index 6cdbadc..0a6f985 100644
--- a/neutron/tests/tempest/common/glance_http.py
+++ b/neutron/tests/tempest/common/glance_http.py
@@ -367,7 +367,7 @@
 
     def __iter__(self):
         while True:
-            yield self.next()
+            yield next(self)
 
     def next(self):
         chunk = self.resp.read(CHUNKSIZE)
@@ -375,3 +375,5 @@
             return chunk
         else:
             raise StopIteration()
+
+    __next__ = next
diff --git a/neutron/tests/tempest/common/isolated_creds.py b/neutron/tests/tempest/common/isolated_creds.py
index b4de93b..5da24a9 100644
--- a/neutron/tests/tempest/common/isolated_creds.py
+++ b/neutron/tests/tempest/common/isolated_creds.py
@@ -369,7 +369,7 @@
         if not self.isolated_creds:
             return
         self._clear_isolated_net_resources()
-        for creds in self.isolated_creds.itervalues():
+        for creds in self.isolated_creds.values():
             try:
                 self._delete_user(creds.user_id)
             except lib_exc.NotFound: