René's URL Explorer Experiment


Title: bpo-37555: Update _CallList.__contains__ to respect ANY by ElizabethU · Pull Request #14700 · python/cpython · GitHub

Open Graph Title: bpo-37555: Update _CallList.__contains__ to respect ANY by ElizabethU · Pull Request #14700 · python/cpython

X Title: bpo-37555: Update _CallList.__contains__ to respect ANY by ElizabethU · Pull Request #14700 · python/cpython

Description: Greetings! Long time fan of the language, first time submitting a pull request to it. I have a test on another project that goes something like: @patch('a.place.to.patch') def test_a_thing_calls_what_it_should(self, my_mock): # Set up logic here my_mock.assert_has_calls([ call( ANY, Decimal('20') ), call( ANY, Decimal('10') ) ]) Which fails, where my_mock.call_args_list looks like [(, Decimal('20')), (, Decimal('10'))] This seems like wrong behavior. ANY should be happy to be compared to anything, even a random object. I've added a test showing the behavior that fails on master. Doing some digging, I found that in mock.py _CallList is overriding __contains__ and comparing each item in the tuples with what I'd passed in to assert_has_calls on the right, which means that instead of using ANY.__eq__, it's calling the Django model's __eq__ with ANY as an argument. Django first checks if the thing it's comparing to is another Django model, and returns False if not. So, == ANY is False, but ANY == is True. I know that this could also be considered a bug with Django, and I plan to file one with them too, but I don't see any downside to improving the mock library to be more defensive in honoring ANY over any other custom class's overridden __eq__ method. More digging and I realized the reason this was only a problem on a mock with a spec. Specifically, when a mock is instantiated with a spec, the _spec_signature attribute gets assigned, and when _spec_signature is not none, _call_matcher, which is used to prep the calls for comparison, returns a tuple of a string and a BoundArguments object instead of a _Call (link here). When _call_matcher returns _Call objects, they use _Call's __eq__ method, which flips the compared calls around, putting ANY on the left. When _call_matcher returns tuples, it doesn't use this logic, and ANY remains on the right, not being used for comparison. The simplest fix seemed to be to ensure _call_matcher always returned a _Call object. I have verified that there are several tests covering the use of spec signature, which make sure that things continue to match regardless of if they are args or kwargs and break when that logic is broken, and none of them break with my change. https://bugs.python.org/issue37555

Open Graph Description: Greetings! Long time fan of the language, first time submitting a pull request to it. I have a test on another project that goes something like: @patch('a.place.to.patch') def test_a_thing_...

X Description: Greetings! Long time fan of the language, first time submitting a pull request to it. I have a test on another project that goes something like: @patch('a.place.to.patch') def test_...

Opengraph URL: https://github.com/python/cpython/pull/14700

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:2a949750-16be-0379-97f9-468412a09c0c
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idE060:220088:C3B830:10FF48F:696A88F2
html-safe-nonce7342e9302c6d09664318492cac96f0b6de83190e037a2558a0ef18c026c1a850
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFMDYwOjIyMDA4ODpDM0I4MzA6MTBGRjQ4Rjo2OTZBODhGMiIsInZpc2l0b3JfaWQiOiIyNDQ1Mzk0ODQ3ODQ1NzQ2OTMwIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac69eed86da781dd43a8151c962fd94f7613722096a0fc2ac39766b85c1da5febc
hovercard-subject-tagpull_request:296471815
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/14700/files
twitter:imagehttps://avatars.githubusercontent.com/u/5474419?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/5474419?s=400&v=4
og:image:altGreetings! Long time fan of the language, first time submitting a pull request to it. I have a test on another project that goes something like: @patch('a.place.to.patch') def test_a_thing_...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noned2aa6dedd7d97fa651b17c40401f2605f309df5ca5fb659bf0554cf34f1de825
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasec1dbca8981c5e3d6a69bce2f1d289e732b86241d
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/14700/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F14700%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F14700%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/14700/files
Reloadhttps://github.com/python/cpython/pull/14700/files
Reloadhttps://github.com/python/cpython/pull/14700/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 33.9k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 71.1k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.1k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects 31 https://github.com/python/cpython/projects
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/python/cpython/security
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
pgansslehttps://github.com/pganssle
python:masterhttps://github.com/python/cpython/tree/master
ElizabethU:fix-issue-37555https://github.com/ElizabethU/cpython/tree/fix-issue-37555
Conversation 72 https://github.com/python/cpython/pull/14700
Commits 20 https://github.com/python/cpython/pull/14700/commits
Checks 0 https://github.com/python/cpython/pull/14700/checks
Files changed https://github.com/python/cpython/pull/14700/files
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
bpo-37555: Update _CallList.__contains__ to respect ANY https://github.com/python/cpython/pull/14700/files#top
Show all changes 20 commits https://github.com/python/cpython/pull/14700/files
94ddf54 Flip equality to use mock calls' __eq__ ElizabethU Jul 11, 2019 https://github.com/python/cpython/pull/14700/commits/94ddf54c5a8aab7d00d9ab93e1cc5695c28d73e7
b4c7d78 bpo-37555: Regression test demonstrating assert_has_calls not working… ElizabethU Jul 14, 2019 https://github.com/python/cpython/pull/14700/commits/b4c7d78c8e62c5eb8ec78de44934b1fb6b107826
ad99a9d Revert "Flip equality to use mock calls' __eq__" ElizabethU Jul 14, 2019 https://github.com/python/cpython/pull/14700/commits/ad99a9d4c280c1a6ab163a279c0dc36833d29122
49c5310 bpo-37555: Add regression tests for mock ANY ordering issues ElizabethU Jul 15, 2019 https://github.com/python/cpython/pull/14700/commits/49c5310ad493c4356dd3bc58c03653cd9466c4fa
874fb69 bpo-37555: Fix _CallList and _Call order sensitivity ElizabethU Jul 18, 2019 https://github.com/python/cpython/pull/14700/commits/874fb697b8376fcea130116e56189061f944fde6
d72d6f5 bpo-37555: Ensure _call_matcher returns _Call object ElizabethU Jul 20, 2019 https://github.com/python/cpython/pull/14700/commits/d72d6f50f54330571ea36a1ce20979c95e32e0cf
f0e8411 Adding ACK and news entry ElizabethU Jul 20, 2019 https://github.com/python/cpython/pull/14700/commits/f0e841148fb7baf1782a9f855b0593408f3f9622
f295eac bpo-37555: Replacing __eq__ with == to sidestep NotImplemented ElizabethU Jul 20, 2019 https://github.com/python/cpython/pull/14700/commits/f295eaca5bceac6636c0e2b10e6c7d9a8ee8296a
18e964b bpo-37555: cleaning up changes unnecessary to the final product ElizabethU Jul 20, 2019 https://github.com/python/cpython/pull/14700/commits/18e964ba0126d8964d89842cb95534b63c2d326e
883841a bpo-37555: Fixed call on bound arguments to respect args and kwargs ElizabethU Jul 20, 2019 https://github.com/python/cpython/pull/14700/commits/883841ad3104aa009d28aa1f5feb82d957f965eb
f4844c7 Revert "bpo-37555: Add regression tests for mock ANY ordering issues" ElizabethU Jul 22, 2019 https://github.com/python/cpython/pull/14700/commits/f4844c7a7f49fc07fdfc3f6d056c22cc14283562
84489c8 Revert "bpo-37555: cleaning up changes unnecessary to the final product" ElizabethU Jul 22, 2019 https://github.com/python/cpython/pull/14700/commits/84489c8489aa7993a7603b668e390e8e0f80708d
344ef17 Revert "bpo-37555: Replacing __eq__ with == to sidestep NotImplemented" ElizabethU Jul 22, 2019 https://github.com/python/cpython/pull/14700/commits/344ef173c0daeea3ef7072aabb38aa10b05e0479
bdf430d Revert "bpo-37555: Fix _CallList and _Call order sensitivity" ElizabethU Jul 22, 2019 https://github.com/python/cpython/pull/14700/commits/bdf430de3980c0733188e1b832176395f7bae234
d3522b1 Updated NEWS.d ElizabethU Jul 22, 2019 https://github.com/python/cpython/pull/14700/commits/d3522b1e170cadca2c2afd72f9e133fe00b45087
f47699d bpo-37555: Add tests checking every function using _call_matcher both… ElizabethU Aug 4, 2019 https://github.com/python/cpython/pull/14700/commits/f47699de12ca9aa7e79ade6ea958708f5b88eab8
38650c9 bpo-37555: Ensure all assert methods using _call_matcher are actually… ElizabethU Aug 5, 2019 https://github.com/python/cpython/pull/14700/commits/38650c98c6afadf25951fa128deea3cfefd82ef7
24973c0 Remove AnyCompare and use call objects everywhere. tirkarthi Aug 19, 2019 https://github.com/python/cpython/pull/14700/commits/24973c0b32ce7d796a7f4eeaf259832222aae0f5
001d708 Revert "Remove AnyCompare and use call objects everywhere." ElizabethU Sep 13, 2019 https://github.com/python/cpython/pull/14700/commits/001d708f2fe7fe06d6a20650d26a928d296ab351
25dec66 Check for exception in assert_any_await ElizabethU Sep 13, 2019 https://github.com/python/cpython/pull/14700/commits/25dec66120f6443b5462b484844cfdc9f73f7697
Clear filters https://github.com/python/cpython/pull/14700/files
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
mock.py https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
testasync.py https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
testhelpers.py https://github.com/python/cpython/pull/14700/files#diff-fa54e9a0a4c525e77bcc623e213e14159cf08c2b3ef087a68762b718abc087ae
ACKS https://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
2019-07-19-20-13-48.bpo-37555.S5am28.rst https://github.com/python/cpython/pull/14700/files#diff-8e4fc93f84960c617aac872e3fd5e5c2906f06211cf84d7a35423967276e4347
Lib/unittest/mock.pyhttps://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
View file https://github.com/ElizabethU/cpython/blob/25dec66120f6443b5462b484844cfdc9f73f7697/Lib/unittest/mock.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/14700/{{ revealButtonHref }}
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
tirkarthihttps://github.com/tirkarthi
Sep 11, 2019https://github.com/python/cpython/pull/14700/files#r323145256
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
cpython/Lib/unittest/mock.pyhttps://github.com/python/cpython/blob/455122a0094c8cfdf7e062eccc5e5b5885c75e8b/Lib/unittest/mock.py#L340
455122ahttps://github.com/python/cpython/commit/455122a0094c8cfdf7e062eccc5e5b5885c75e8b
cpython/Lib/unittest/mock.pyhttps://github.com/python/cpython/blob/455122a0094c8cfdf7e062eccc5e5b5885c75e8b/Lib/unittest/mock.py#L2394
455122ahttps://github.com/python/cpython/commit/455122a0094c8cfdf7e062eccc5e5b5885c75e8b
@ElizabethUhttps://github.com/ElizabethU
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
ElizabethUhttps://github.com/ElizabethU
Sep 12, 2019https://github.com/python/cpython/pull/14700/files#r323592787
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
@tirkarthihttps://github.com/tirkarthi
tirkarthi/cpython@bc09989https://github.com/tirkarthi/cpython/commit/bc09989
cpython/Lib/unittest/mock.pyhttps://github.com/python/cpython/blob/455122a0094c8cfdf7e062eccc5e5b5885c75e8b/Lib/unittest/mock.py#L2394
455122ahttps://github.com/python/cpython/commit/455122a0094c8cfdf7e062eccc5e5b5885c75e8b
cpython/Lib/unittest/mock.pyhttps://github.com/python/cpython/blob/455122a0094c8cfdf7e062eccc5e5b5885c75e8b/Lib/unittest/mock.py#L2444
455122ahttps://github.com/python/cpython/commit/455122a0094c8cfdf7e062eccc5e5b5885c75e8b
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 12, 2019https://github.com/python/cpython/pull/14700/files#r323631360
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 12, 2019https://github.com/python/cpython/pull/14700/files#r323632708
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 12, 2019https://github.com/python/cpython/pull/14700/files#r323636526
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324057704
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324061076
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
@ElizabethUhttps://github.com/ElizabethU
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
ElizabethUhttps://github.com/ElizabethU
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324064171
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
ElizabethUhttps://github.com/ElizabethU
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324077578
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
@tirkarthihttps://github.com/tirkarthi
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
cjw296https://github.com/cjw296
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324077870
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
tirkarthihttps://github.com/tirkarthi
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324098854
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
ElizabethUhttps://github.com/ElizabethU
Sep 13, 2019https://github.com/python/cpython/pull/14700/files#r324183303
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
@tirkarthihttps://github.com/tirkarthi
Please reload this pagehttps://github.com/python/cpython/pull/14700/files
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
https://github.com/python/cpython/pull/14700/files#diff-347d0254250a1ab7ab8e31b405e2c35b74cd2838df4ee74f1b658a459eb91f1a
Lib/unittest/test/testmock/testasync.pyhttps://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
View file https://github.com/ElizabethU/cpython/blob/25dec66120f6443b5462b484844cfdc9f73f7697/Lib/unittest/test/testmock/testasync.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/14700/{{ revealButtonHref }}
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
https://github.com/python/cpython/pull/14700/files#diff-508b9898f44acd7e46719a7317694876c83035922a09db5f83b2236db9f34f0a
Lib/unittest/test/testmock/testhelpers.pyhttps://github.com/python/cpython/pull/14700/files#diff-fa54e9a0a4c525e77bcc623e213e14159cf08c2b3ef087a68762b718abc087ae
View file https://github.com/ElizabethU/cpython/blob/25dec66120f6443b5462b484844cfdc9f73f7697/Lib/unittest/test/testmock/testhelpers.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/14700/{{ revealButtonHref }}
https://github.com/python/cpython/pull/14700/files#diff-fa54e9a0a4c525e77bcc623e213e14159cf08c2b3ef087a68762b718abc087ae
https://github.com/python/cpython/pull/14700/files#diff-fa54e9a0a4c525e77bcc623e213e14159cf08c2b3ef087a68762b718abc087ae
Misc/ACKShttps://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
View file https://github.com/ElizabethU/cpython/blob/25dec66120f6443b5462b484844cfdc9f73f7697/Misc/ACKS
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/14700/{{ revealButtonHref }}
https://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
https://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
https://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
https://github.com/python/cpython/pull/14700/files#diff-d1243956feb505c5459fc05387e194609efb5c350cee202942be47ed30d7d7d0
Misc/NEWS.d/next/Library/2019-07-19-20-13-48.bpo-37555.S5am28.rsthttps://github.com/python/cpython/pull/14700/files#diff-8e4fc93f84960c617aac872e3fd5e5c2906f06211cf84d7a35423967276e4347
View file https://github.com/ElizabethU/cpython/blob/25dec66120f6443b5462b484844cfdc9f73f7697/Misc/NEWS.d/next/Library/2019-07-19-20-13-48.bpo-37555.S5am28.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/14700/{{ revealButtonHref }}
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.