Revert "Switch to unittest.mock from mock"

This reverts commit ffdf6f10be.

Switching oslotest to unittest.mock has broken a bunch of other
projects because they were (incorrectly) relying on oslotest to
pull in third-party mock for them. Until we get everyone migrated,
let's hold off on doing this for oslotest.

Change-Id: I0bdca39686f3653a56f9e4a554662727e2dbaafd
This commit is contained in:
Ben Nemec 2020-04-03 14:22:14 +00:00
parent ffdf6f10be
commit cdee551ae6
9 changed files with 25 additions and 31 deletions

View File

@ -15,6 +15,7 @@ keystoneauth1==3.4.0
linecache2==1.0.0
MarkupSafe==1.0
mccabe==0.2.1
mock==2.0.0
netaddr==0.7.18
openstackdocstheme==1.18.1
oslo.config==5.2.0

View File

@ -16,7 +16,6 @@
"""Common utilities used in testing"""
import logging
from unittest import mock
import fixtures
from oslotest import createfile
@ -24,6 +23,7 @@ from oslotest import log
from oslotest import output
from oslotest import timeout
from six.moves import mock
import testtools
LOG = logging.getLogger(__name__)

View File

@ -15,9 +15,9 @@
# under the License.
import functools
from unittest import mock
import fixtures
import mock
def _lazy_autospec_method(mocked_method, original_method, eat_self):
@ -72,10 +72,8 @@ class _AutospecMockMixin(object):
original_attr = getattr(original_spec, name)
if callable(original_attr):
# lazily autospec callable attribute.
eat_self = mock._must_skip(
original_spec, name,
isinstance(original_spec, type)
)
eat_self = mock.mock._must_skip(original_spec, name,
isinstance(original_spec, type))
_lazy_autospec_method(attr, original_attr, eat_self)
@ -112,17 +110,15 @@ class MockAutospecFixture(fixtures.Fixture):
super(MockAutospecFixture, self).setUp()
# patch both external and internal usage of Mock / MagicMock.
self.useFixture(
fixtures.MonkeyPatch(
'unittest.mock.Mock',
_AutospecMock))
self.useFixture(
fixtures.MonkeyPatch(
'unittest.mock.MagicMock',
_AutospecMagicMock))
self.useFixture(fixtures.MonkeyPatch('mock.Mock', _AutospecMock))
self.useFixture(fixtures.MonkeyPatch('mock.mock.Mock', _AutospecMock))
self.useFixture(fixtures.MonkeyPatch('mock.MagicMock',
_AutospecMagicMock))
self.useFixture(fixtures.MonkeyPatch('mock.mock.MagicMock',
_AutospecMagicMock))
class _patch(mock._patch):
class _patch(mock.mock._patch):
"""Patch class with working autospec functionality.
Currently, mock.patch functionality doesn't handle the autospec parameter
@ -163,11 +159,8 @@ class _patch(mock._patch):
if autospec:
target = self.getter()
original_attr = getattr(target, self.attribute)
eat_self = mock._must_skip(
target,
self.attribute,
isinstance(target, type)
)
eat_self = mock.mock._must_skip(target, self.attribute,
isinstance(target, type))
new = super(_patch, self).__enter__()
@ -193,11 +186,11 @@ def _safe_attribute_error_wrapper(func):
def patch_mock_module():
"""Replaces the mock.patch class."""
mock._patch = _patch
mock.mock._patch = _patch
# NOTE(claudiub): mock cannot autospec partial functions properly,
# especially those created by LazyLoader objects (scheduler client),
# as it will try to copy the partial function's __name__ (which they do
# not have).
mock._copy_func_details = _safe_attribute_error_wrapper(
mock._copy_func_details)
mock.mock._copy_func_details = _safe_attribute_error_wrapper(
mock.mock._copy_func_details)

View File

@ -17,10 +17,10 @@
import logging
import os
import unittest
from unittest import mock
import fixtures
import six
from six.moves import mock
import testtools
from oslotest import base

View File

@ -15,8 +15,8 @@
# under the License.
import logging
from unittest import mock
from six.moves import mock
import testtools
from oslotest import log

View File

@ -13,8 +13,8 @@
# License for the specific language governing permissions and limitations
# under the License.
import mock
import testtools
from unittest import mock
from oslotest import mock_fixture

View File

@ -13,12 +13,12 @@
# under the License.
import sys
from unittest import mock
import testtools
from oslotest import output
from six.moves import mock
import testtools
class CaptureOutputTest(testtools.TestCase):

View File

@ -12,8 +12,7 @@
# License for the specific language governing permissions and limitations
# under the License.
from unittest import mock
from six.moves import mock
import testtools
from oslotest import timeout

View File

@ -6,3 +6,4 @@ fixtures>=3.0.0 # Apache-2.0/BSD
python-subunit>=1.0.0 # Apache-2.0/BSD
six>=1.10.0 # MIT
testtools>=2.2.0 # MIT
mock>=2.0.0 # BSD