source: branches/pyyaml3000/tests/test_marker.py @ 39

Revision 39, 1.2 KB checked in by xi, 9 years ago (diff)

Working on the scanner.

Line 
1
2import test_appliance
3
4from yaml.marker import Marker
5
6class TestMarker(test_appliance.TestAppliance):
7
8    def _testMarkers(self, test_name, markers_filename):
9        inputs = file(markers_filename, 'rb').read().split('---\n')[1:]
10        for input in inputs:
11            index = 0
12            line = 0
13            column = 0
14            while input[index] != '*':
15                if input[index] == '\n':
16                    line += 1
17                    column = 0
18                else:
19                    column += 1
20                index += 1
21            for str_type in [str, unicode]:
22                marker = Marker(test_name, str_type(input), index, line, column)
23                snippet = marker.get_snippet()
24                #print "INPUT:"
25                #print input
26                #print "SNIPPET:"
27                #print snippet
28                self.failUnless(isinstance(snippet, str))
29                self.failUnlessEqual(snippet.count('\n'), 2)
30                data, pointer, dummy = snippet.split('\n')
31                self.failUnless(len(data) < 80)
32                self.failUnlessEqual(data[len(pointer)-1], '*')
33
34TestMarker.add_tests('testMarkers', '.markers')
35
Note: See TracBrowser for help on using the repository browser.