]> git.proxmox.com Git - mirror_edk2.git/blob - AppPkg/Applications/Python/Python-2.7.2/Demo/parser/test_parser.py
EmbeddedPkg: Extend NvVarStoreFormattedLib LIBRARY_CLASS
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Demo / parser / test_parser.py
1 #! /usr/bin/env python
2 # (Force the script to use the latest build.)
3 #
4 # test_parser.py
5
6 import parser, traceback
7
8 _numFailed = 0
9
10 def testChunk(t, fileName):
11 global _numFailed
12 print '----', fileName,
13 try:
14 st = parser.suite(t)
15 tup = parser.st2tuple(st)
16 # this discards the first ST; a huge memory savings when running
17 # against a large source file like Tkinter.py.
18 st = None
19 new = parser.tuple2st(tup)
20 except parser.ParserError, err:
21 print
22 print 'parser module raised exception on input file', fileName + ':'
23 traceback.print_exc()
24 _numFailed = _numFailed + 1
25 else:
26 if tup != parser.st2tuple(new):
27 print
28 print 'parser module failed on input file', fileName
29 _numFailed = _numFailed + 1
30 else:
31 print 'o.k.'
32
33 def testFile(fileName):
34 t = open(fileName).read()
35 testChunk(t, fileName)
36
37 def test():
38 import sys
39 args = sys.argv[1:]
40 if not args:
41 import glob
42 args = glob.glob("*.py")
43 args.sort()
44 map(testFile, args)
45 sys.exit(_numFailed != 0)
46
47 if __name__ == '__main__':
48 test()