Skip to content

test_parserhack in test_future is outdated #116860

Closed

Description

@sobolevn

Bug report

This test is written for python2.6, which is long gone. It tests some implementation detail with is also long gone:

def test_parserhack(self):
# test that the parser.c::future_hack function works as expected
# Note: although this test must pass, it's not testing the original
# bug as of 2.6 since the with statement is not optional and
# the parser hack disabled. If a new keyword is introduced in
# 2.6, change this to refer to the new future import.
try:
exec("from __future__ import print_function; print 0")
except SyntaxError:
pass
else:
self.fail("syntax error didn't occur")
try:
exec("from __future__ import (print_function); print 0")
except SyntaxError:
pass
else:
self.fail("syntax error didn't occur")

We have new tests for print keyword in other modules:

s = '''print "old style"'''
ckmsg(s, "Missing parentheses in call to 'print'. Did you mean print(...)?")
s = '''print "old style",'''
ckmsg(s, "Missing parentheses in call to 'print'. Did you mean print(...)?")
s = 'print f(a+b,c)'
ckmsg(s, "Missing parentheses in call to 'print'. Did you mean print(...)?")

I propose to remove this test, it does not add any value and might be confusing to readers.

Linked PRs

Activity

  1. added
    type-bugAn unexpected behavior, bug, or error
    testsTests in the Lib/test dir
    on Mar 15, 2024
  2. self-assigned this
    on Mar 15, 2024
  3. added a commit that references this issue on Mar 15, 2024
  4. serhiy-storchaka commented on Mar 15, 2024

    @serhiy-storchaka
    Member

    For reference, the tested code was dead since 3.1 (e3944a5).

  5. added a commit that references this issue on May 28, 2024
  6. added 2 commits that reference this issue on May 28, 2024
  7. added 2 commits that reference this issue on May 28, 2024
  8. added a commit that references this issue on Jul 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

testsTests in the Lib/test dirtype-bugAn unexpected behavior, bug, or error

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions