[Tempest] Fix visibility of test_quotas.py module

Commit [1] added wrong decorator to test class located in
"manila_tempest_tests/tests/api/test_quotas.py" module that
made it invisible for tempest.

It should be "ddt.ddt" instead of "ddt.data" as it is now.

Also, fix negative quota tests that were testing wrong thing.
It should have been testing "quota-sets" and "os-quota-sets", not
"services" and "os-services" as it is now.

[1] I82f00114db985b4b3bf4db0a64191559508ac600

Change-Id: Ie0eb7d32b7b032ffdb7f7dd47f68841211e7d7a6
Closes-Bug: #1635588
This commit is contained in:
Valeriy Ponomaryov 2016-10-21 13:46:47 +03:00
parent 78e500c52b
commit 4475a5ca00
4 changed files with 38 additions and 30 deletions

View File

@ -13,6 +13,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
import ddt
from tempest import config from tempest import config
from tempest.lib import exceptions as lib_exc from tempest.lib import exceptions as lib_exc
from testtools import testcase as tc from testtools import testcase as tc
@ -22,6 +23,7 @@ from manila_tempest_tests.tests.api import base
CONF = config.CONF CONF = config.CONF
@ddt.ddt
class SharesAdminQuotasNegativeTest(base.BaseSharesAdminTest): class SharesAdminQuotasNegativeTest(base.BaseSharesAdminTest):
force_tenant_isolation = True force_tenant_isolation = True
@ -176,3 +178,28 @@ class SharesAdminQuotasNegativeTest(base.BaseSharesAdminTest):
client.tenant_id, client.tenant_id,
client.user_id, client.user_id,
share_networks=bigger_value) share_networks=bigger_value)
@ddt.data(
('quota-sets', '2.0', 'show_quotas'),
('quota-sets', '2.0', 'default_quotas'),
('quota-sets', '2.0', 'reset_quotas'),
('quota-sets', '2.0', 'update_quotas'),
('quota-sets', '2.6', 'show_quotas'),
('quota-sets', '2.6', 'default_quotas'),
('quota-sets', '2.6', 'reset_quotas'),
('quota-sets', '2.6', 'update_quotas'),
('os-quota-sets', '2.7', 'show_quotas'),
('os-quota-sets', '2.7', 'default_quotas'),
('os-quota-sets', '2.7', 'reset_quotas'),
('os-quota-sets', '2.7', 'update_quotas'),
)
@ddt.unpack
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
@base.skip_if_microversion_not_supported("2.7")
def test_show_quotas_with_wrong_versions(self, url, version, method_name):
self.assertRaises(
lib_exc.NotFound,
getattr(self.shares_v2_client, method_name),
self.shares_v2_client.tenant_id,
version=version, url=url,
)

View File

@ -231,6 +231,14 @@ class BaseSharesTest(test.BaseTestCase):
super(BaseSharesTest, cls).setup_clients() super(BaseSharesTest, cls).setup_clients()
os = getattr(cls, 'os_%s' % cls.credentials[0]) os = getattr(cls, 'os_%s' % cls.credentials[0])
os.shares_client = shares_client.SharesClient(os.auth_provider) os.shares_client = shares_client.SharesClient(os.auth_provider)
if CONF.identity.auth_version == 'v3':
project_id = os.auth_provider.auth_data[1]['project']['id']
else:
project_id = os.auth_provider.auth_data[1]['token']['tenant']['id']
cls.tenant_id = project_id
cls.user_id = os.auth_provider.auth_data[1]['user']['id']
cls.shares_client = os.shares_client cls.shares_client = os.shares_client
os.shares_v2_client = shares_v2_client.SharesV2Client( os.shares_v2_client = shares_v2_client.SharesV2Client(
os.auth_provider) os.auth_provider)

View File

@ -22,7 +22,7 @@ from manila_tempest_tests.tests.api import base
CONF = config.CONF CONF = config.CONF
@ddt.data @ddt.ddt
class SharesQuotasTest(base.BaseSharesTest): class SharesQuotasTest(base.BaseSharesTest):
@classmethod @classmethod
@ -31,8 +31,8 @@ class SharesQuotasTest(base.BaseSharesTest):
msg = "Quota tests are disabled." msg = "Quota tests are disabled."
raise cls.skipException(msg) raise cls.skipException(msg)
super(SharesQuotasTest, cls).resource_setup() super(SharesQuotasTest, cls).resource_setup()
cls.user_id = cls.shares_v2_client.user_id cls.user_id = cls.shares_v2_client.user_id or cls.user_id
cls.tenant_id = cls.shares_v2_client.tenant_id cls.tenant_id = cls.shares_v2_client.tenant_id or cls.tenant_id
@tc.attr(base.TAG_POSITIVE, base.TAG_API) @tc.attr(base.TAG_POSITIVE, base.TAG_API)
@ddt.data('shares_client', 'shares_v2_client') @ddt.data('shares_client', 'shares_v2_client')

View File

@ -13,7 +13,6 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
import ddt
from tempest import config from tempest import config
from tempest.lib import exceptions as lib_exc from tempest.lib import exceptions as lib_exc
from testtools import testcase as tc from testtools import testcase as tc
@ -23,7 +22,6 @@ from manila_tempest_tests.tests.api import base
CONF = config.CONF CONF = config.CONF
@ddt.ddt
class SharesQuotasNegativeTest(base.BaseSharesTest): class SharesQuotasNegativeTest(base.BaseSharesTest):
@classmethod @classmethod
@ -50,28 +48,3 @@ class SharesQuotasNegativeTest(base.BaseSharesTest):
self.shares_v2_client.update_quotas, self.shares_v2_client.update_quotas,
self.shares_v2_client.tenant_id, self.shares_v2_client.tenant_id,
shares=9) shares=9)
@ddt.data(
('services', '2.0', 'show_quotas'),
('services', '2.0', 'default_quotas'),
('services', '2.0', 'reset_quotas'),
('services', '2.0', 'update_quotas'),
('services', '2.6', 'show_quotas'),
('services', '2.6', 'default_quotas'),
('services', '2.6', 'reset_quotas'),
('services', '2.6', 'update_quotas'),
('os-services', '2.7', 'show_quotas'),
('os-services', '2.7', 'default_quotas'),
('os-services', '2.7', 'reset_quotas'),
('os-services', '2.7', 'update_quotas'),
)
@ddt.unpack
@tc.attr(base.TAG_NEGATIVE, base.TAG_API)
@base.skip_if_microversion_not_supported("2.7")
def test_show_quotas_with_wrong_versions(self, url, version, method_name):
self.assertRaises(
lib_exc.NotFound,
getattr(self.shares_v2_client, method_name),
self.shares_v2_client.tenant_id,
version=version, url=url,
)