Skip to content

Conversation

@sobolevn
Copy link
Member

@sobolevnsobolevn commented Jan 19, 2022

There was a problem with direct invocation of test_contextlib. The best way to illustrate it is:

» ./python.exe Lib/test/test_contextlib.py ................................................................................... ---------------------------------------------------------------------- Ran 83 tests in 0.046s OK 

But, when a path starts with ./, we have a problem:

» ./python.exe ./Lib/test/test_contextlib.py ............................FFF.................................................... ====================================================================== FAIL: test_exception (__main__.TestChdir) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/sobolev/Desktop/cpython/./Lib/test/test_contextlib.py", line 1159, in test_exception self.assertEqual(os.getcwd(), target) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: '/Users/sobolev/Desktop/cpython/Lib/test/data' != '/Users/sobolev/Desktop/cpython/./Lib/test/data' - /Users/sobolev/Desktop/cpython/Lib/test/data + /Users/sobolev/Desktop/cpython/./Lib/test/data ? ++ ====================================================================== FAIL: test_reentrant (__main__.TestChdir) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/sobolev/Desktop/cpython/./Lib/test/test_contextlib.py", line 1143, in test_reentrant self.assertEqual(os.getcwd(), target1) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: '/Users/sobolev/Desktop/cpython/Lib/test/data' != '/Users/sobolev/Desktop/cpython/./Lib/test/data' - /Users/sobolev/Desktop/cpython/Lib/test/data + /Users/sobolev/Desktop/cpython/./Lib/test/data ? ++ ====================================================================== FAIL: test_simple (__main__.TestChdir) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/sobolev/Desktop/cpython/./Lib/test/test_contextlib.py", line 1132, in test_simple self.assertEqual(os.getcwd(), target) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: '/Users/sobolev/Desktop/cpython/Lib/test/data' != '/Users/sobolev/Desktop/cpython/./Lib/test/data' - /Users/sobolev/Desktop/cpython/Lib/test/data + /Users/sobolev/Desktop/cpython/./Lib/test/data ? ++ ---------------------------------------------------------------------- Ran 83 tests in 0.050s FAILED (failures=3) 

When __file__ is normalized - the error is gone. Now we can use both styles to call this module.

https://bugs.python.org/issue46425

CC @corona10 as my mentor.

@miss-islington
Copy link
Contributor

Thanks @sobolevn for the PR, and @serhiy-storchaka for merging it 🌮🎉.. I'm working now to backport this PR to: 3.9, 3.10.
🐍🍒⛏🤖

@miss-islington
Copy link
Contributor

Sorry, @sobolevn and @serhiy-storchaka, I could not cleanly backport this to 3.10 due to a conflict.
Please backport using cherry_picker on command line.
cherry_picker 22f73bd9f1fc573d5c998f345b66c29f7ca6614d 3.10

@miss-islington
Copy link
Contributor

Sorry @sobolevn and @serhiy-storchaka, I had trouble checking out the 3.9 backport branch.
Please backport using cherry_picker on command line.
cherry_picker 22f73bd9f1fc573d5c998f345b66c29f7ca6614d 3.9

@sobolevn
Copy link
MemberAuthor

Thank you, @serhiy-storchaka! I will backport them manually.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip newstestsTests in the Lib/test dir

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

@sobolevn@miss-islington@serhiy-storchaka@terryjreedy@kumaraditya303@the-knights-who-say-ni@bedevere-bot