Files
python-openstackclient/openstackclient/tests/functional/volume/v3/common.py
Stephen Finucane aeb0c6828b typing: Add class variables to testcases
testtools was recently bumped to a version that is typed, which means we
now see type hints for that library. As a result, we now see issues with
variables defined in tests via setUpClass. Note that the issue lies with
mypy and not testtools, however: mypy doesn't adding class variables via
assignment [1].

[1] https://github.com/python/mypy/issues/8723

Change-Id: I8b09846ff8fc6ee51ba03531f5b41039282ee1c0
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2026-03-03 10:25:12 +00:00

40 lines
1.2 KiB
Python

# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from typing import ClassVar
import fixtures
from openstackclient.tests.functional.volume import base
class BaseVolumeTests(base.BaseVolumeTests):
"""Base class for Volume functional tests."""
haz_volume_v3: ClassVar[bool]
@classmethod
def setUpClass(cls):
super().setUpClass()
cls.haz_volume_v3 = cls.is_service_enabled('block-storage', '3.0')
def setUp(self):
super().setUp()
if not self.haz_volume_v3:
self.skipTest("No Volume v3 service present")
ver_fixture = fixtures.EnvironmentVariable(
'OS_VOLUME_API_VERSION', '3'
)
self.useFixture(ver_fixture)