From d6364665409efc7ad408981a2ba5c3428192e372 Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Mon, 1 Apr 2013 12:39:19 -0400 Subject: [PATCH] Add more iterations to BuildDoc coverage. Using testscenarios, construct more combinations of test options for the autodoc_index_module option. Change-Id: I96b2816be2c652478b37c03cb5755a83dfeb0894 Reviewed-on: https://review.openstack.org/25825 Reviewed-by: James E. Blair Reviewed-by: Clark Boylan Approved: Monty Taylor Tested-by: Jenkins --- pbr/tests/__init__.py | 61 ++++++++++++++++++++++++++++++++------- pbr/tests/test_version.py | 4 +-- 2 files changed, 53 insertions(+), 12 deletions(-) diff --git a/pbr/tests/__init__.py b/pbr/tests/__init__.py index f745a13..0dfd2e1 100644 --- a/pbr/tests/__init__.py +++ b/pbr/tests/__init__.py @@ -1,14 +1,55 @@ -# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010-2011 OpenStack Foundation # -# 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 +# 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 +# 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. +# 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. + +"""Common utilities used in testing""" + +import os + +import fixtures +import testresources +import testtools + +from pbr import packaging +from pbr.tests import moxstubout + + +class BaseTestCase(testtools.TestCase, testresources.ResourcedTestCase): + + def setUp(self): + super(BaseTestCase, self).setUp() + test_timeout = os.environ.get('OS_TEST_TIMEOUT', 30) + try: + test_timeout = int(test_timeout) + except ValueError: + # If timeout value is invalid, fail hard. + print("OS_TEST_TIMEOUT set to invalid value" + " defaulting to no timeout") + test_timeout = 0 + if test_timeout > 0: + self.useFixture(fixtures.Timeout(test_timeout, gentle=True)) + + if os.environ.get('OS_STDOUT_CAPTURE') in packaging.TRUE_VALUES: + stdout = self.useFixture(fixtures.StringStream('stdout')).stream + self.useFixture(fixtures.MonkeyPatch('sys.stdout', stdout)) + if os.environ.get('OS_STDERR_CAPTURE') in packaging.TRUE_VALUES: + stderr = self.useFixture(fixtures.StringStream('stderr')).stream + self.useFixture(fixtures.MonkeyPatch('sys.stderr', stderr)) + self.log_fixture = self.useFixture( + fixtures.FakeLogger('pbr')) + + self.useFixture(fixtures.NestedTempfile()) + self.useFixture(fixtures.FakeLogger()) + self.stubs = self.useFixture(moxstubout.MoxStubout()).stubs diff --git a/pbr/tests/test_version.py b/pbr/tests/test_version.py index 4a66b6b..38dd396 100644 --- a/pbr/tests/test_version.py +++ b/pbr/tests/test_version.py @@ -20,11 +20,11 @@ import sys from oslo.config import cfg -from pbr.tests import utils +from pbr import tests from pbr import version -class DeferredVersionTestCase(utils.BaseTestCase): +class DeferredVersionTestCase(tests.BaseTestCase): def setUp(self): super(DeferredVersionTestCase, self).setUp()