Exemplo n.º 1
0
class TestSource(unittest.TestCase):
    def setUp(self):
        self.text = Source(StringIO("The quick brown fox jumps over the lazy dog"))
    
    def tearDown(self):
        del(self.text)
    
    def test_000_creation(self):
        self.assertEqual(self.text.cur, 0)
        self.assertEqual(self.text.text, "The quick brown fox jumps over the lazy dog")
    
    def test_001_substr(self):
        self.assertEqual(self.text.substr(3), "The")
        
        self.text.cur += 10
        self.assertEqual(self.text.substr(5), "brown")
        self.text.cur += 10
        self.assertEqual(self.text.substr(100), "jumps over the lazy dog")
        
    def test_002_substr_edge(self):
        self.text.cur = len(self.text.text)
        self.assertEqual(self.text.substr(100), "")
    
    def test_003_regexp(self):
        self.assertEqual(self.text.regexp(re.compile(r'\w+')), "The")
        self.text.cur += 10
        self.assertEqual(self.text.regexp(re.compile(r'\w+')), "brown")
        self.assertEqual(self.text.regexp(re.compile(r'\d+')), None)
Exemplo n.º 2
0
 def setUp(self):
     self.s = Source(MULTILINE_TEXT, SourceType.STRING)
Exemplo n.º 3
0
class TestLineno(unittest.TestCase):
    def setUp(self):
        self.s = Source(MULTILINE_TEXT, SourceType.STRING)
    
    def tearDown(self):
        del(self.s)
    
    def test_000_at_begin_of_string(self):
        self.assertEqual(self.s.lineno(), 1)
    
    def test_001_in_first_line(self):
        self.s.cur = 2
        self.assertEqual(self.s.lineno(), 1)

    def test_002_at_the_end_of_first_line(self):
        self.s.cur = 4
        self.assertEqual(self.s.lineno(), 1)

    def test_003_at_the_begin_of_second_line(self):
        self.s.cur = 5
        self.assertEqual(self.s.lineno(), 2)

    def test_004_in_second_line(self):
        self.s.cur = 10
        self.assertEqual(self.s.lineno(), 2)

    def test_005_in_third_line(self):
        self.s.cur = 17
        self.assertEqual(self.s.lineno(), 3)

    def test_006_at_the_end_of_third_line(self):
        self.s.cur = len(MULTILINE_TEXT) - 1
        self.assertEqual(self.s.lineno(), 3)

    def test_007_the_end(self):
        self.s.cur = len(MULTILINE_TEXT)
        self.assertEqual(self.s.lineno(), 4)

    def test_008_in_first_line(self):
        self.assertEqual(self.s.lineno(2), 1)

    def test_009_at_the_end_of_first_line(self):
        self.assertEqual(self.s.lineno(4), 1)

    def test_010_at_the_begin_of_second_line(self):
        self.assertEqual(self.s.lineno(5), 2)

    def test_011_in_second_line(self):
        self.assertEqual(self.s.lineno(10), 2)

    def test_012_in_third_line(self):
        self.assertEqual(self.s.lineno(17), 3)

    def test_013_at_the_end_of_third_line(self):
        self.assertEqual(self.s.lineno(len(MULTILINE_TEXT) - 1), 3)

    def test_014_the_end(self):
        self.assertEqual(self.s.lineno(len(MULTILINE_TEXT)), 4)
Exemplo n.º 4
0
 def setUp(self):
     self.text = Source(StringIO("The quick brown fox jumps over the lazy dog"))