Basic object store container functional tests
Basic object store container functional tests along with some changes so that setUp and tearDown can create and destroy the test object. The group_regex gets each class to run on one process. Change-Id: Ibffb3cd61976e7db3c4199c627b30af2fa15f652
This commit is contained in:
@@ -5,3 +5,4 @@ test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
|
|||||||
${PYTHON:-python} -m subunit.run discover -t ./ ${OS_TEST_PATH:-./openstack/tests/unit} $LISTOPT $IDOPTION
|
${PYTHON:-python} -m subunit.run discover -t ./ ${OS_TEST_PATH:-./openstack/tests/unit} $LISTOPT $IDOPTION
|
||||||
test_id_option=--load-list $IDFILE
|
test_id_option=--load-list $IDFILE
|
||||||
test_list_option=--list
|
test_list_option=--list
|
||||||
|
group_regex=([^\.]+\.)+
|
||||||
|
@@ -16,16 +16,24 @@ import os_client_config
|
|||||||
|
|
||||||
from openstack import connection
|
from openstack import connection
|
||||||
from openstack import user_preference
|
from openstack import user_preference
|
||||||
|
from openstack import utils
|
||||||
|
|
||||||
|
|
||||||
class BaseFunctionalTest(unittest.TestCase):
|
class BaseFunctionalTest(unittest.TestCase):
|
||||||
def setUp(self):
|
@classmethod
|
||||||
|
def setUpClass(cls):
|
||||||
test_cloud = os_client_config.OpenStackConfig().get_one_cloud(
|
test_cloud = os_client_config.OpenStackConfig().get_one_cloud(
|
||||||
'test_cloud')
|
'test_cloud')
|
||||||
|
|
||||||
pref = user_preference.UserPreference()
|
pref = user_preference.UserPreference()
|
||||||
pref.set_region(pref.ALL, test_cloud.region)
|
pref.set_region(pref.ALL, test_cloud.region)
|
||||||
|
if test_cloud.debug:
|
||||||
|
utils.enable_logging(True)
|
||||||
|
|
||||||
self.conn = connection.Connection(
|
auth = test_cloud.config['auth']
|
||||||
preference=pref,
|
cls.conn = connection.Connection(preference=pref, **auth)
|
||||||
**test_cloud.config['auth'])
|
|
||||||
|
@classmethod
|
||||||
|
def assertIs(cls, expected, actual):
|
||||||
|
if expected != actual:
|
||||||
|
raise Exception(expected + ' != ' + actual)
|
||||||
|
0
openstack/tests/functional/object/__init__.py
Normal file
0
openstack/tests/functional/object/__init__.py
Normal file
0
openstack/tests/functional/object/v1/__init__.py
Normal file
0
openstack/tests/functional/object/v1/__init__.py
Normal file
39
openstack/tests/functional/object/v1/test_container.py
Normal file
39
openstack/tests/functional/object/v1/test_container.py
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
# 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.
|
||||||
|
|
||||||
|
import uuid
|
||||||
|
|
||||||
|
from openstack.object_store.v1 import container
|
||||||
|
from openstack.tests.functional import base
|
||||||
|
|
||||||
|
|
||||||
|
class TestContainer(base.BaseFunctionalTest):
|
||||||
|
|
||||||
|
NAME = uuid.uuid4().hex
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def setUpClass(cls):
|
||||||
|
super(TestContainer, cls).setUpClass()
|
||||||
|
tainer = cls.conn.object_store.create_container(name=cls.NAME)
|
||||||
|
assert isinstance(tainer, container.Container)
|
||||||
|
cls.assertIs(cls.NAME, tainer.name)
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def tearDownClass(cls):
|
||||||
|
pass
|
||||||
|
# TODO(thowe): uncomment this when bug/1451211 fixed
|
||||||
|
# tainer = cls.conn.object_store.delete_container(cls.NAME)
|
||||||
|
# cls.assertIs(None, tainer)
|
||||||
|
|
||||||
|
def test_list(self):
|
||||||
|
names = [o.name for o in self.conn.object_store.containers()]
|
||||||
|
self.assertIn(self.NAME, names)
|
Reference in New Issue
Block a user