1 #!/usr/bin/env python 2 3 from os.path import abspath, join, split 4 import sys 5 6 dirname = split(abspath(sys.argv[0]))[0] 7 parent = split(dirname)[0] 8 9 try: 10 import moinformat 11 except ImportError: 12 if split(parent)[1] == "MoinLight": 13 sys.path.append(parent) 14 15 from moinformat import all_parsers, all_serialisers, parse, serialise 16 from glob import glob 17 18 def test_input(s): 19 d = parse(s, all_parsers) 20 o = serialise(d) 21 22 identical = o == s 23 24 if quiet: 25 return identical 26 27 # Show output versus input comparison result. 28 29 print identical 30 print "-" * 60 31 print o 32 if o != s: 33 print "-" * 60 34 print s 35 print "-" * 60 36 print serialise(d, all_serialisers["html"]) 37 print "-" * 60 38 print d.prettyprint() 39 print 40 41 return identical 42 43 if __name__ == "__main__": 44 args = sys.argv[1:] 45 quiet = "-q" in args 46 if quiet: 47 del args[args.index("-q")] 48 filenames = args or glob(join(dirname, "test*.txt")) 49 filenames.sort() 50 51 for filename in filenames: 52 f = open(filename) 53 try: 54 if not quiet: 55 print filename 56 identical = test_input(f.read()) 57 if quiet: 58 print "%s: %s" % (identical, filename) 59 finally: 60 f.close() 61 62 # vim: tabstop=4 expandtab shiftwidth=4