Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
a7d00c20
Commit
a7d00c20
authored
May 16, 2015
by
Serhiy Storchaka
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reverted issue #24134 changes (except new tests).
parent
75fb816c
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
27 deletions
+11
-27
Lib/unittest/case.py
Lib/unittest/case.py
+11
-13
Lib/unittest/test/test_case.py
Lib/unittest/test/test_case.py
+0
-11
Misc/NEWS
Misc/NEWS
+0
-3
No files found.
Lib/unittest/case.py
View file @
a7d00c20
...
...
@@ -129,17 +129,15 @@ class _BaseTestCaseContext:
msg
=
self
.
test_case
.
_formatMessage
(
self
.
msg
,
standardMsg
)
raise
self
.
test_case
.
failureException
(
msg
)
def
_sentinel
(
*
args
,
**
kwargs
):
raise
AssertionError
(
'Should never be called'
)
class
_AssertRaisesBaseContext
(
_BaseTestCaseContext
):
def
__init__
(
self
,
expected
,
test_case
,
callable_obj
=
_sentinel
,
def
__init__
(
self
,
expected
,
test_case
,
callable_obj
=
None
,
expected_regex
=
None
):
_BaseTestCaseContext
.
__init__
(
self
,
test_case
)
self
.
expected
=
expected
self
.
test_case
=
test_case
if
callable_obj
is
not
_sentinel
:
if
callable_obj
is
not
None
:
try
:
self
.
obj_name
=
callable_obj
.
__name__
except
AttributeError
:
...
...
@@ -153,11 +151,11 @@ class _AssertRaisesBaseContext(_BaseTestCaseContext):
def
handle
(
self
,
name
,
callable_obj
,
args
,
kwargs
):
"""
If callable_obj is
_sentinel
, assertRaises/Warns is being used as a
If callable_obj is
None
, assertRaises/Warns is being used as a
context manager, so check for a 'msg' kwarg and return self.
If callable_obj is not
_sentinel
, call it passing args and kwargs.
If callable_obj is not
None
, call it passing args and kwargs.
"""
if
callable_obj
is
_sentinel
:
if
callable_obj
is
None
:
self
.
msg
=
kwargs
.
pop
(
'msg'
,
None
)
return
self
with
self
:
...
...
@@ -676,7 +674,7 @@ class TestCase(object):
except
UnicodeDecodeError
:
return
'%s : %s'
%
(
safe_repr
(
standardMsg
),
safe_repr
(
msg
))
def
assertRaises
(
self
,
excClass
,
callableObj
=
_sentinel
,
*
args
,
**
kwargs
):
def
assertRaises
(
self
,
excClass
,
callableObj
=
None
,
*
args
,
**
kwargs
):
"""Fail unless an exception of class excClass is raised
by callableObj when invoked with arguments args and keyword
arguments kwargs. If a different type of exception is
...
...
@@ -684,7 +682,7 @@ class TestCase(object):
deemed to have suffered an error, exactly as for an
unexpected exception.
If called with callableObj omitted, will return a
If called with callableObj omitted
or None
, will return a
context object used like this::
with self.assertRaises(SomeException):
...
...
@@ -705,7 +703,7 @@ class TestCase(object):
context
=
_AssertRaisesContext
(
excClass
,
self
,
callableObj
)
return
context
.
handle
(
'assertRaises'
,
callableObj
,
args
,
kwargs
)
def
assertWarns
(
self
,
expected_warning
,
callable_obj
=
_sentinel
,
*
args
,
**
kwargs
):
def
assertWarns
(
self
,
expected_warning
,
callable_obj
=
None
,
*
args
,
**
kwargs
):
"""Fail unless a warning of class warnClass is triggered
by callable_obj when invoked with arguments args and keyword
arguments kwargs. If a different type of warning is
...
...
@@ -713,7 +711,7 @@ class TestCase(object):
warning filtering rules in effect, it might be silenced, printed
out, or raised as an exception.
If called with callable_obj omitted, will return a
If called with callable_obj omitted
or None
, will return a
context object used like this::
with self.assertWarns(SomeWarning):
...
...
@@ -1221,7 +1219,7 @@ class TestCase(object):
self
.
fail
(
self
.
_formatMessage
(
msg
,
standardMsg
))
def
assertRaisesRegex
(
self
,
expected_exception
,
expected_regex
,
callable_obj
=
_sentinel
,
*
args
,
**
kwargs
):
callable_obj
=
None
,
*
args
,
**
kwargs
):
"""Asserts that the message in a raised exception matches a regex.
Args:
...
...
@@ -1240,7 +1238,7 @@ class TestCase(object):
return
context
.
handle
(
'assertRaisesRegex'
,
callable_obj
,
args
,
kwargs
)
def
assertWarnsRegex
(
self
,
expected_warning
,
expected_regex
,
callable_obj
=
_sentinel
,
*
args
,
**
kwargs
):
callable_obj
=
None
,
*
args
,
**
kwargs
):
"""Asserts that the message in a triggered warning matches a regexp.
Basic functioning is similar to assertWarns() with the addition
that only warnings whose messages also match the regular expression
...
...
Lib/unittest/test/test_case.py
View file @
a7d00c20
...
...
@@ -1147,9 +1147,6 @@ test case
# Failure when no exception is raised
with
self
.
assertRaises
(
self
.
failureException
):
self
.
assertRaises
(
ExceptionMock
,
lambda
:
0
)
# Failure when the function is None
with
self
.
assertRaises
(
TypeError
):
self
.
assertRaises
(
ExceptionMock
,
None
)
# Failure when another exception is raised
with
self
.
assertRaises
(
ExceptionMock
):
self
.
assertRaises
(
ValueError
,
Stub
)
...
...
@@ -1187,8 +1184,6 @@ test case
self
.
assertRaisesRegex
(
ExceptionMock
,
re
.
compile
(
'expect$'
),
Stub
)
self
.
assertRaisesRegex
(
ExceptionMock
,
'expect$'
,
Stub
)
with
self
.
assertRaises
(
TypeError
):
self
.
assertRaisesRegex
(
ExceptionMock
,
'expect$'
,
None
)
def
testAssertNotRaisesRegex
(
self
):
self
.
assertRaisesRegex
(
...
...
@@ -1256,9 +1251,6 @@ test case
# Failure when no warning is triggered
with
self
.
assertRaises
(
self
.
failureException
):
self
.
assertWarns
(
RuntimeWarning
,
lambda
:
0
)
# Failure when the function is None
with
self
.
assertRaises
(
TypeError
):
self
.
assertWarns
(
RuntimeWarning
,
None
)
# Failure when another warning is triggered
with
warnings
.
catch_warnings
():
# Force default filter (in case tests are run with -We)
...
...
@@ -1320,9 +1312,6 @@ test case
with
self
.
assertRaises
(
self
.
failureException
):
self
.
assertWarnsRegex
(
RuntimeWarning
,
"o+"
,
lambda
:
0
)
# Failure when the function is None
with
self
.
assertRaises
(
TypeError
):
self
.
assertWarnsRegex
(
RuntimeWarning
,
"o+"
,
None
)
# Failure when another warning is triggered
with
warnings
.
catch_warnings
():
# Force default filter (in case tests are run with -We)
...
...
Misc/NEWS
View file @
a7d00c20
...
...
@@ -48,9 +48,6 @@ Library
- Issue #23796: peak and read1 methods of BufferedReader now raise ValueError
if they called on a closed object. Patch by John Hergenroeder.
- Issue #24134: assertRaises(), assertRaisesRegex(), assertWarns() and
assertWarnsRegex() checks are not longer successful if the callable is None.
- Issue #24094: Fix possible crash in json.encode with poorly behaved dict
subclasses.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment