Merged revisions 67030-67031 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r67030 | benjamin.peterson | 2008-10-26 15:21:13 -0500 (Sun, 26 Oct 2008) | 1 line fix __future__ imports when multiple features are given ........ r67031 | benjamin.peterson | 2008-10-26 15:33:19 -0500 (Sun, 26 Oct 2008) | 1 line add forgotten test for r67030 ........
This commit is contained in:
parent
cff882ce21
commit
9aebc61ad8
|
@ -89,19 +89,23 @@ class FutureTest(unittest.TestCase):
|
|||
# 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 division, with_statement; with = 0")
|
||||
exec("from __future__ import print_function; print 0")
|
||||
except SyntaxError:
|
||||
pass
|
||||
else:
|
||||
self.fail("syntax error didn't occur")
|
||||
|
||||
try:
|
||||
exec("from __future__ import (with_statement, division); with = 0")
|
||||
exec("from __future__ import (print_function); print 0")
|
||||
except SyntaxError:
|
||||
pass
|
||||
else:
|
||||
self.fail("syntax error didn't occur")
|
||||
|
||||
def test_multiple_features(self):
|
||||
support.unload("test.test_future5")
|
||||
from test import test_future5
|
||||
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(FutureTest)
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
# Check that multiple features can be enabled.
|
||||
from __future__ import unicode_literals, print_function
|
||||
|
||||
import sys
|
||||
import unittest
|
||||
from . import support
|
||||
|
||||
|
||||
class TestMultipleFeatures(unittest.TestCase):
|
||||
|
||||
def test_unicode_literals(self):
|
||||
self.assertTrue(isinstance("", str))
|
||||
|
||||
def test_print_function(self):
|
||||
with support.captured_output("stderr") as s:
|
||||
print("foo", file=sys.stderr)
|
||||
self.assertEqual(s.getvalue(), "foo\n")
|
||||
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(TestMultipleFeatures)
|
|
@ -210,13 +210,10 @@ future_hack(parser_state *ps)
|
|||
char *str_ch = STR(CHILD(cch, 0));
|
||||
if (strcmp(str_ch, FUTURE_WITH_STATEMENT) == 0) {
|
||||
ps->p_flags |= CO_FUTURE_WITH_STATEMENT;
|
||||
break;
|
||||
} else if (strcmp(str_ch, FUTURE_PRINT_FUNCTION) == 0) {
|
||||
ps->p_flags |= CO_FUTURE_PRINT_FUNCTION;
|
||||
break;
|
||||
} else if (strcmp(str_ch, FUTURE_UNICODE_LITERALS) == 0) {
|
||||
ps->p_flags |= CO_FUTURE_UNICODE_LITERALS;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue