Beispiel #1
0
    def test_extract_docstring_from_source(self):
        source_code = b""
        with self.assertRaises(TypeError):
            docstring, source = extract_docstring_from_source(source_code)

        source_code = u""
        docstring, source = extract_docstring_from_source(source_code)
        self.assertEqual((u"", u""), (docstring, source))

        source_code = u'''""" Module description """\nx=1\ny=2'''
        docstring, source = extract_docstring_from_source(source_code)
        expected = (u" Module description ", "x=1\ny=2")
        self.assertEqual(expected, (docstring, source))
Beispiel #2
0
    def test_extract_docstring_from_source(self):
        source_code = b""
        with self.assertRaises(TypeError):
            docstring, source = extract_docstring_from_source(source_code)

        source_code = u""
        docstring, source = extract_docstring_from_source(source_code)
        self.assertEqual((u"", u""), (docstring, source))

        source_code = u'''""" Module description """\nx=1\ny=2'''
        docstring, source = extract_docstring_from_source(source_code)
        expected = (u' Module description ', 'x=1\ny=2')
        self.assertEqual(expected, (docstring, source))
Beispiel #3
0
 def test_ignore_class_docstring(self):
     source_code = '\n'.join(['class Foo:',
                              '    """Class docstring"""'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '')
     self.assertEqual(source, '\n'.join(['class Foo:',
                                         '    """Class docstring"""']))
Beispiel #4
0
 def test_ignore_class_docstring(self):
     source_code = "\n".join(["class Foo:", '    """Class docstring"""'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, "")
     self.assertEqual(
         source, "\n".join(["class Foo:", '    """Class docstring"""'])
     )
Beispiel #5
0
 def test_string_in_source(self):
     source_code = "\n".join(
         ['"""', "Docstring", '"""', '"string in source"', "a = 1"]
     )
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, "\nDocstring\n")
     self.assertEqual(source, "\n".join(['"string in source"', "a = 1"]))
Beispiel #6
0
 def test_string_in_docstring(self):
     source_code = '\n'.join(
         ['"""', 'Docstring', '"string in docstring"', '"""', 'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(
         docstring,
         '\n'.join(['', 'Docstring', '"string in docstring"', '']))
     self.assertEqual(source, '\n'.join(['a = 1']))
Beispiel #7
0
 def test_simple_source(self):
     source_code = '\n'.join(['"""',
                              'Docstring',
                              '"""',
                              'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(source, 'a = 1')
Beispiel #8
0
 def test_alternate_quotes(self):
     source_code = '\n'.join(["'''",
                              'Docstring',
                              "'''",
                              'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(source, 'a = 1')
Beispiel #9
0
 def test_ignore_starting_comment(self):
     source_code = '\n'.join([
         '# Copyright notice.', '# Something about the author.', '"""',
         'Docstring', '"""', 'a = 1'
     ])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(
         source, '\n'.join([
             '# Copyright notice.', '# Something about the author.', 'a = 1'
         ]))
Beispiel #10
0
 def test_ignore_starting_comment(self):
     source_code = '\n'.join(['# Copyright notice.',
                              '# Something about the author.',
                              '"""',
                              'Docstring',
                              '"""',
                              'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(source, '\n'.join(['# Copyright notice.',
                                         '# Something about the author.',
                                         'a = 1']))
Beispiel #11
0
 def test_string_in_docstring(self):
     source_code = '\n'.join(['"""',
                              'Docstring',
                              '"string in docstring"',
                              '"""',
                              'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\n'.join(['',
                                            'Docstring',
                                            '"string in docstring"',
                                            '']))
     self.assertEqual(source, '\n'.join(['a = 1']))
Beispiel #12
0
 def test_ignore_starting_comment(self):
     source_code = "\n".join([
         "# Copyright notice.",
         "# Something about the author.",
         '"""',
         "Docstring",
         '"""',
         "a = 1",
     ])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, "\nDocstring\n")
     self.assertEqual(
         source,
         "\n".join([
             "# Copyright notice.",
             "# Something about the author.",
             "a = 1",
         ]),
     )
Beispiel #13
0
 def test_simple_source(self):
     source_code = '\n'.join(['"""', 'Docstring', '"""', 'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(source, 'a = 1')
Beispiel #14
0
 def test_ignore_class_docstring(self):
     source_code = '\n'.join(['class Foo:', '    """Class docstring"""'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '')
     self.assertEqual(
         source, '\n'.join(['class Foo:', '    """Class docstring"""']))
Beispiel #15
0
 def test_alternate_quotes(self):
     source_code = '\n'.join(["'''", 'Docstring', "'''", 'a = 1'])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, '\nDocstring\n')
     self.assertEqual(source, 'a = 1')
Beispiel #16
0
 def test_alternate_quotes(self):
     source_code = "\n".join(["'''", "Docstring", "'''", "a = 1"])
     docstring, source = extract_docstring_from_source(source_code)
     self.assertEqual(docstring, "\nDocstring\n")
     self.assertEqual(source, "a = 1")