[pypy-svn] r12769 - pypy/branch/pycompiler/module/recparser/test

adim at codespeak.net adim at codespeak.net
Tue May 24 15:17:52 CEST 2005


Author: adim
Date: Tue May 24 15:17:52 2005
New Revision: 12769

Modified:
   pypy/branch/pycompiler/module/recparser/test/test_pytokenizer.py
Log:
had problems to run py.test on the TestSuite class.
problems disappear when using functions rather than methods


Modified: pypy/branch/pycompiler/module/recparser/test/test_pytokenizer.py
==============================================================================
--- pypy/branch/pycompiler/module/recparser/test/test_pytokenizer.py	(original)
+++ pypy/branch/pycompiler/module/recparser/test/test_pytokenizer.py	Tue May 24 15:17:52 2005
@@ -11,69 +11,69 @@
         tokens.append((last_token, value))
     return tokens
 
-class TestSuite:
-    """Tokenizer test suite"""
-    PUNCTS = [
-        # Here should be listed each existing punctuation
-        '>=', '<>', '!=', '<', '>', '<=', '==', '*=',
-        '//=', '%=', '^=', '<<=', '**=', '|=',
-        '+=', '>>=', '=', '&=', '/=', '-=', ',', '^',
-        '>>', '&', '+', '*', '-', '/', '.', '**',
-        '%', '<<', '//', '|', ')', '(', ';', ':',
-        '@', '[', ']', '`', '{', '}',
-        ]
-
-    NUMBERS = [
-        # Here should be listed each different form of number
-        '1', '1.23', '1.', '0',
-        '1L', '1l',
-        '0x12L', '0x12l', '0X12', '0x12',
-        '1j', '1J',
-        '1e2', '1.2e4',
-        '0.1', '0.', '0.12', '.2',
-        ]
-
-    BAD_NUMBERS = [
-        'j', '0xg', '0xj', '0xJ',
-        ]
-
-    def test_empty_string(self):
-        """make sure defined regexps don't match empty string"""
-        rgxes = {'numbers' : py_number,
-                 'defsym'  : g_symdef,
-                 'strings' : g_string,
-                 'names'   : py_name,
-                 'punct'   : py_punct,
-                 }
-        for label, rgx in rgxes.items():
-            assert rgx.match('') is None, '%s matches empty string' % label
-
-    def test_several_lines_list(self):
-        """tests list definition on several lines"""
-        s = """['a'
-        ]"""
-        tokens = parse_source(s)
-        assert tokens == [('[', None), ('STRING', "'a'"), (']', None),
-                          ('NEWLINE', ''), ('ENDMARKER', None)]
-
-    def test_numbers(self):
-        """make sure all kind of numbers are correctly parsed"""
-        for number in self.NUMBERS:
-            assert parse_source(number)[0] == ('NUMBER', number)
-            neg = '-%s' % number
-            assert parse_source(neg)[:2] == [('-', None), ('NUMBER', number)]
-        for number in self.BAD_NUMBERS:
-            assert parse_source(number)[0] != ('NUMBER', number)
-
-    def test_hex_number(self):
-        """basic pasrse"""
-        tokens = parse_source("a = 0x12L")
-        assert tokens == [('NAME', 'a'), ('=', None), ('NUMBER', '0x12L'),
-                          ('NEWLINE', ''), ('ENDMARKER', None)]
-
-    def test_punct(self):
-        """make sure each punctuation is correctly parsed"""
-        for pstr in self.PUNCTS:
-            tokens = parse_source(pstr)
-            assert tokens[0][0] == pstr
+## class TestSuite:
+##     """Tokenizer test suite"""
+PUNCTS = [
+    # Here should be listed each existing punctuation
+    '>=', '<>', '!=', '<', '>', '<=', '==', '*=',
+    '//=', '%=', '^=', '<<=', '**=', '|=',
+    '+=', '>>=', '=', '&=', '/=', '-=', ',', '^',
+    '>>', '&', '+', '*', '-', '/', '.', '**',
+    '%', '<<', '//', '|', ')', '(', ';', ':',
+    '@', '[', ']', '`', '{', '}',
+    ]
+
+NUMBERS = [
+    # Here should be listed each different form of number
+    '1', '1.23', '1.', '0',
+    '1L', '1l',
+    '0x12L', '0x12l', '0X12', '0x12',
+    '1j', '1J',
+    '1e2', '1.2e4',
+    '0.1', '0.', '0.12', '.2',
+    ]
+
+BAD_NUMBERS = [
+    'j', '0xg', '0xj', '0xJ',
+    ]
+
+def test_empty_string():
+    """make sure defined regexps don't match empty string"""
+    rgxes = {'numbers' : py_number,
+             'defsym'  : g_symdef,
+             'strings' : g_string,
+             'names'   : py_name,
+             'punct'   : py_punct,
+             }
+    for label, rgx in rgxes.items():
+        assert rgx.match('') is None, '%s matches empty string' % label
+
+def test_several_lines_list():
+    """tests list definition on several lines"""
+    s = """['a'
+    ]"""
+    tokens = parse_source(s)
+    assert tokens == [('[', None), ('STRING', "'a'"), (']', None),
+                      ('NEWLINE', ''), ('ENDMARKER', None)]
+
+def test_numbers():
+    """make sure all kind of numbers are correctly parsed"""
+    for number in NUMBERS:
+        assert parse_source(number)[0] == ('NUMBER', number)
+        neg = '-%s' % number
+        assert parse_source(neg)[:2] == [('-', None), ('NUMBER', number)]
+    for number in BAD_NUMBERS:
+        assert parse_source(number)[0] != ('NUMBER', number)
+
+def test_hex_number():
+    """basic pasrse"""
+    tokens = parse_source("a = 0x12L")
+    assert tokens == [('NAME', 'a'), ('=', None), ('NUMBER', '0x12L'),
+                      ('NEWLINE', ''), ('ENDMARKER', None)]
+
+def test_punct():
+    """make sure each punctuation is correctly parsed"""
+    for pstr in PUNCTS:
+        tokens = parse_source(pstr)
+        assert tokens[0][0] == pstr
 



More information about the Pypy-commit mailing list