Merge "make test non executable, otherwise nose skips it"
diff --git a/tempest/test.py b/tempest/test.py
index de255d5..9d6c2d3 100644
--- a/tempest/test.py
+++ b/tempest/test.py
@@ -37,13 +37,12 @@
     """
 
     def decorator(f):
-        testtool_attributes = ('smoke')
-
-        if 'type' in kwargs and kwargs['type'] in testtool_attributes:
-            return nose.plugins.attrib.attr(*args, **kwargs)(
-                testtools.testcase.attr(kwargs['type'])(f))
-        else:
-            return nose.plugins.attrib.attr(*args, **kwargs)(f)
+        if 'type' in kwargs and isinstance(kwargs['type'], str):
+            f = testtools.testcase.attr(kwargs['type'])(f)
+        elif 'type' in kwargs and isinstance(kwargs['type'], list):
+            for attr in kwargs['type']:
+                f = testtools.testcase.attr(attr)(f)
+        return nose.plugins.attrib.attr(*args, **kwargs)(f)
 
     return decorator
 
diff --git a/tempest/tests/identity/admin/v3/test_users.py b/tempest/tests/identity/admin/v3/test_users.py
index 7118241..39b8ca1 100644
--- a/tempest/tests/identity/admin/v3/test_users.py
+++ b/tempest/tests/identity/admin/v3/test_users.py
@@ -74,6 +74,8 @@
         fetched_project_ids = list()
         _, u_project = self.v3_client.create_project(
             rand_name('project-'), description=rand_name('project-desc-'))
+        # Delete the Project at the end of this method
+        self.addCleanup(self.v3_client.delete_project, u_project['id'])
         #Create a user.
         u_name = rand_name('user-')
         u_desc = u_name + 'description'