Initial separating unit and functional tests
Currently we run tests which uses real backend or real daemons with other unit tests. This CR is initial for sequence of functional tests implementation. It contains only moving files and modules to right directories and fixing tox.ini. This approach allows to avoid constantly rebase conflicts, because git handles file removing correct. Next step - separate classes and functions from moved files to right test types. Depends-On: Ifdb0de150b2c738117308b2aae6c0c197e162821 Change-Id: I16b84ed83ac075658626f3ec6a35a24e228b61e7 Partialy-Implement: blueprint ceilometer-functional-tests
This commit is contained in:
parent
e16c0ddd9d
commit
49f53f35a5
|
@ -13,7 +13,7 @@
|
|||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from ceilometer.tests import api
|
||||
from ceilometer.tests.functional import api
|
||||
|
||||
|
||||
class FunctionalTest(api.FunctionalTest):
|
|
@ -24,9 +24,9 @@ import webtest
|
|||
from ceilometer.api import app
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests import api as acl
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional import api as acl
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
VALID_TOKEN = '4562138218392831'
|
||||
VALID_TOKEN2 = '4562138218392832'
|
|
@ -21,15 +21,16 @@ import mock
|
|||
import oslo_messaging.conffixture
|
||||
from oslo_serialization import jsonutils
|
||||
import requests
|
||||
|
||||
import six
|
||||
from six import moves
|
||||
import six.moves.urllib.parse as urlparse
|
||||
|
||||
from ceilometer.alarm.storage import models
|
||||
from ceilometer import messaging
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import constants
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestListEmptyAlarms(v2.FunctionalTest,
|
|
@ -15,7 +15,7 @@ from keystoneclient import exceptions
|
|||
import mock
|
||||
from oslotest import mockpatch
|
||||
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestAPIUpgradePath(v2.FunctionalTest):
|
|
@ -22,7 +22,7 @@ import six
|
|||
import wsme
|
||||
|
||||
from ceilometer import i18n
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestPecanApp(v2.FunctionalTest):
|
|
@ -17,8 +17,8 @@
|
|||
|
||||
import testscenarios
|
||||
|
||||
from ceilometer.tests.api import v2 as tests_api
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2 as tests_api
|
||||
|
||||
load_tests = testscenarios.load_tests_apply_scenarios
|
||||
|
|
@ -25,8 +25,8 @@ from oslo_utils import timeutils
|
|||
from ceilometer.alarm.storage import models
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.api import v2 as tests_api
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2 as tests_api
|
||||
|
||||
|
||||
admin_header = {"X-Roles": "admin",
|
|
@ -21,8 +21,8 @@ import mock
|
|||
from oslo_utils import timeutils
|
||||
|
||||
from ceilometer.storage import models
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestComputeDurationByResource(v2.FunctionalTest,
|
|
@ -20,8 +20,8 @@ import uuid
|
|||
import webtest.app
|
||||
|
||||
from ceilometer.event.storage import models
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
headers = {"X-Roles": "admin"}
|
||||
|
|
@ -23,8 +23,8 @@ import six
|
|||
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestListEvents(v2.FunctionalTest,
|
|
@ -25,8 +25,8 @@ import webtest.app
|
|||
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestListEmptyMeters(v2.FunctionalTest,
|
|
@ -23,8 +23,8 @@ import webtest.app
|
|||
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestListResources(v2.FunctionalTest,
|
|
@ -22,8 +22,8 @@ import mock
|
|||
from oslo_utils import timeutils
|
||||
from oslotest import mockpatch
|
||||
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestPostSamples(v2.FunctionalTest,
|
|
@ -18,8 +18,8 @@ import datetime
|
|||
|
||||
from ceilometer.publisher import utils
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.api import v2
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.functional.api import v2
|
||||
|
||||
|
||||
class TestMaxProjectVolume(v2.FunctionalTest,
|
|
@ -23,8 +23,7 @@ import os
|
|||
from gabbi import driver
|
||||
|
||||
from ceilometer.api import app
|
||||
from ceilometer.tests.gabbi import fixtures as fixture_module
|
||||
|
||||
from ceilometer.tests.functional.gabbi import fixtures as fixture_module
|
||||
|
||||
TESTS_DIR = 'gabbits'
|
||||
|
|
@ -20,8 +20,7 @@ import os
|
|||
from gabbi import driver
|
||||
|
||||
from ceilometer.api import app
|
||||
from ceilometer.tests.gabbi import fixtures as fixture_module
|
||||
|
||||
from ceilometer.tests.functional.gabbi import fixtures as fixture_module
|
||||
|
||||
TESTS_DIR = 'gabbits_prefix'
|
||||
|
|
@ -31,14 +31,18 @@ export CEILOMETER_DIR="$BASE/new/ceilometer"
|
|||
# Go to the ceilometer dir
|
||||
cd $CEILOMETER_DIR
|
||||
|
||||
sudo chown -R jenkins:stack $CEILOMETER_DIR
|
||||
if [[ -z "$STACK_USER" ]]; then
|
||||
export STACK_USER=stack
|
||||
fi
|
||||
|
||||
sudo chown -R $STACK_USER:stack $CEILOMETER_DIR
|
||||
|
||||
# Run tests
|
||||
echo "Running ceilometer functional test suite"
|
||||
set +e
|
||||
|
||||
# NOTE(ityaptin) Expected a script param which contains a backend name
|
||||
CEILOMETER_TEST_BACKEND="$1" sudo -E -H -u jenkins tox -efunctional
|
||||
CEILOMETER_TEST_BACKEND="$1" sudo -E -H -u ${STACK_USER:-${USER}} tox -efunctional
|
||||
EXIT_CODE=$?
|
||||
set -e
|
||||
|
||||
|
|
|
@ -19,10 +19,10 @@
|
|||
"""
|
||||
|
||||
import datetime
|
||||
from six.moves import reprlib
|
||||
|
||||
import mock
|
||||
from oslo_utils import timeutils
|
||||
from six.moves import reprlib
|
||||
|
||||
from ceilometer.alarm.storage import impl_sqlalchemy as impl_sqla_alarm
|
||||
from ceilometer.event.storage import impl_sqlalchemy as impl_sqla_event
|
||||
|
@ -31,7 +31,8 @@ from ceilometer.storage import impl_sqlalchemy
|
|||
from ceilometer.storage.sqlalchemy import models as sql_models
|
||||
from ceilometer.tests import base as test_base
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.storage import test_storage_scenarios as scenarios
|
||||
from ceilometer.tests.functional.storage \
|
||||
import test_storage_scenarios as scenarios
|
||||
|
||||
|
||||
@tests_db.run_with('sqlite', 'mysql', 'pgsql')
|
|
@ -21,7 +21,7 @@ from ceilometer.publisher import utils
|
|||
from ceilometer import sample
|
||||
from ceilometer.tests import constants
|
||||
from ceilometer.tests import db as tests_db
|
||||
from ceilometer.tests.storage import test_storage_scenarios
|
||||
from ceilometer.tests.functional.storage import test_storage_scenarios
|
||||
|
||||
|
||||
@tests_db.run_with('mongodb', 'db2')
|
|
@ -1,23 +0,0 @@
|
|||
#
|
||||
# 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.
|
||||
|
||||
""" This test is written to avoid failing running the functional test job
|
||||
caused by `subunit-trace -f` with empty testr output
|
||||
in ./tools/pretty-tox.sh"""
|
||||
|
||||
from oslotest import base
|
||||
|
||||
|
||||
class TestEmpty(base.BaseTestCase):
|
||||
def test_empty(self):
|
||||
pass
|
|
@ -32,7 +32,7 @@ from ceilometer.agent import base as agent_base
|
|||
from ceilometer.agent import manager
|
||||
from ceilometer.agent import plugin_base
|
||||
from ceilometer import pipeline
|
||||
from ceilometer.tests.agent import agentbase
|
||||
from ceilometer.tests.unit.agent import agentbase
|
||||
|
||||
|
||||
class PollingException(Exception):
|
|
@ -29,8 +29,8 @@ import pytz
|
|||
|
||||
from ceilometer.alarm.evaluator import combination
|
||||
from ceilometer.alarm.storage import models
|
||||
from ceilometer.tests.alarm.evaluator import base
|
||||
from ceilometer.tests import constants
|
||||
from ceilometer.tests.unit.alarm.evaluator import base
|
||||
|
||||
|
||||
class TestEvaluate(base.TestEvaluatorBase):
|
|
@ -27,8 +27,8 @@ from six import moves
|
|||
|
||||
from ceilometer.alarm.evaluator import gnocchi
|
||||
from ceilometer.alarm.storage import models
|
||||
from ceilometer.tests.alarm.evaluator import base
|
||||
from ceilometer.tests import constants
|
||||
from ceilometer.tests.unit.alarm.evaluator import base
|
||||
|
||||
|
||||
class FakeResponse(object):
|
|
@ -27,8 +27,8 @@ from six import moves
|
|||
|
||||
from ceilometer.alarm.evaluator import threshold
|
||||
from ceilometer.alarm.storage import models
|
||||
from ceilometer.tests.alarm.evaluator import base
|
||||
from ceilometer.tests import constants
|
||||
from ceilometer.tests.unit.alarm.evaluator import base
|
||||
|
||||
|
||||
class TestEvaluate(base.TestEvaluatorBase):
|
|
@ -13,7 +13,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from ceilometer.tests import api
|
||||
from ceilometer.tests.functional import api
|
||||
|
||||
V2_MEDIA_TYPES = [
|
||||
{
|
|
@ -21,7 +21,7 @@ import mock
|
|||
from ceilometer.agent import manager
|
||||
from ceilometer.compute.pollsters import cpu
|
||||
from ceilometer.compute.virt import inspector as virt_inspector
|
||||
from ceilometer.tests.compute.pollsters import base
|
||||
from ceilometer.tests.unit.compute.pollsters import base
|
||||
|
||||
|
||||
class TestCPUPollster(base.TestPollsterBase):
|
|
@ -19,7 +19,7 @@ from oslo_config import fixture as fixture_config
|
|||
|
||||
from ceilometer.agent import manager
|
||||
from ceilometer.compute.pollsters import instance as pollsters_instance
|
||||
from ceilometer.tests.compute.pollsters import base
|
||||
from ceilometer.tests.unit.compute.pollsters import base
|
||||
|
||||
|
||||
class TestInstancePollster(base.TestPollsterBase):
|
|
@ -18,7 +18,7 @@ import mock
|
|||
from ceilometer.agent import manager
|
||||
from ceilometer.compute.pollsters import memory
|
||||
from ceilometer.compute.virt import inspector as virt_inspector
|
||||
from ceilometer.tests.compute.pollsters import base
|
||||
from ceilometer.tests.unit.compute.pollsters import base
|
||||
|
||||
|
||||
class TestMemoryPollster(base.TestPollsterBase):
|
|
@ -20,7 +20,7 @@ from ceilometer.agent import manager
|
|||
from ceilometer.compute.pollsters import net
|
||||
from ceilometer.compute.virt import inspector as virt_inspector
|
||||
from ceilometer import sample
|
||||
from ceilometer.tests.compute.pollsters import base
|
||||
from ceilometer.tests.unit.compute.pollsters import base
|
||||
|
||||
|
||||
class FauxInstance(object):
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue