File: test_grammar_jy.py

package info (click to toggle)
jython 2.5.3-16%2Bdeb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 43,772 kB
  • ctags: 106,434
  • sloc: python: 351,322; java: 216,349; xml: 1,584; sh: 330; perl: 114; ansic: 102; makefile: 45
file content (53 lines) | stat: -rw-r--r-- 1,366 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
""" Extra grammar tests for Jython.
"""

from test import test_support
import sys
import unittest

class GrammarTest(unittest.TestCase):
    def test_triple_quote_len(self):
        s1 = r"""
        \""" 1.triple-quote
        \""" 2.triple-quote
        """

        s2 = r'''
        \""" 1.triple-quote
        \""" 2.triple-quote
        '''
        self.assert_(not '\r' in s1)
        self.assertEquals(len(s1), len(s2))

    def testStringPrefixes(self):
        self.assertEquals(u"spam",U"spam")
        self.assertEquals(r"spam", R"spam")
        self.assertEquals(uR"spam", Ur"spam")
        self.assertEquals(ur"spam", UR"spam")

    def testKeywordOperations(self):
        def foo(a=1, b=2 + 4):
            return b
        self.assertEquals(6, foo())
        self.assertEquals(6, foo(1))
        self.assertEquals(7, foo(1, 7))
        self.assertEquals(10, foo(b=10))


pep263 = """
    # verify that PEP263 encoding is only set by magic comments, not
    # by other similar looking input; seen in issue 1506
    >>> line = '"Content-Transfer-Encoding: 8bit"'
    >>> print line
    "Content-Transfer-Encoding: 8bit"
    """

__test__ = dict(pep263=pep263)


def test_main(verbose=None):
    test_support.run_unittest(GrammarTest)
    test_support.run_doctest(sys.modules[__name__], verbose)

if __name__ == '__main__':
    test_main(verbose=True)