Test results for xmlfy regex |
The AT&T regular expressions test tool testregex.c is the test harness developed by AT&T Research for testing the myriad of regex libraries out there.
The tool has been adapted for xmlfy and has been run to test xmlfy's regex functionality which is derived from the TRE regex library.
These tests are quite comprehensive and some failures are to be expected by most regex implementations including the TRE regex library. These known failures are duly noted within the xmlfy test framework.
Results are as follows:
$ make -f Makefile_tests # #--------------------------------------------------------- # TEST t_basic expect 0 errors #--------------------------------------------------------- ./testregex < testdata_basic TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE all standard compliant implementations should pass these : 2002-05-31 TEST testregex, 540 tests, 0 errors # #--------------------------------------------------------- # TEST t_categorize expect 0 errors #--------------------------------------------------------- ./testregex < testdata_categorize TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE regex implementation categorization 2004-05-31 NOTE POSITION=leftmost NOTE ASSOCIATIVITY=left NOTE SUBEXPRESSION=precedence NOTE REPEAT_LONGEST=last NOTE BUG=nomatch-match NOTE # BUG=nomatch-match NOTE BUG=repeat-artifact-nomatch-UNKNOWN TEST testregex, 20 tests, 0 errors # #--------------------------------------------------------- # TEST t_forcedassoc expect 0 errors #--------------------------------------------------------- ./testregex < testdata_forcedassoc TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE left-assoc:pass-all right-assoc:pass-all : 2002-04-29 TEST testregex, 56 tests, 0 errors # #--------------------------------------------------------- # TEST t_leftassoc expect 0 errors #--------------------------------------------------------- ./testregex < testdata_leftassoc TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE left-assoc:pass-all right-assoc:pass-none : 2002-04-29 TEST testregex, 24 tests, 0 errors # #--------------------------------------------------------- # TEST t_nullsubexpr expect 3 errors #--------------------------------------------------------- ./testregex < testdata_nullsubexpr TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE null subexpression matches : 2002-06-06 51: (a*?)*? versus aaa ERE failed: match was: (0,0)(0,0) expected: (0,0) 58: \(a*\)*\(x\)\(\1\) versus ax BRE regexec failed: expected: (0,2)(1,1)(1,2)(2,2) 61: \(a*\)*\(x\)\(\1\)\(x\) versus axxa BRE failed: match was: (1,3)(1,1)(1,2)(2,2)(2,3) expected: (0,3)(1,1)(1,2)(2,2)(2,3) TEST testregex, 120 tests, 3 errors # #--------------------------------------------------------- # TEST t_repetition expect 3 errors #--------------------------------------------------------- ./testregex < testdata_repetition TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE implicit vs. explicit repetitions : 2009-02-02 48: ((..)¦(.))* versus aaa ERE failed: match was: (0,3)(1,3)(1,3)(?,?) expected: (0,3)(2,3)(?,?)(2,3) 68: ((..)¦(.))* versus aaaaa ERE failed: match was: (0,5)(3,5)(3,5)(?,?) expected: (0,5)(4,5)(?,?)(4,5) NOTE additional repetition tests graciously provided by Chris Kuklewicz www.haskell.org 2009-02-02 92: X(.?){7,}Y versus X1234567Y ERE failed: match was: (0,9)(8,8) expected: (0,9)(7,8) TEST testregex, 163 tests, 3 errors # #--------------------------------------------------------- # TEST t_rightassoc expect 12 errors #--------------------------------------------------------- ./testregex < testdata_rightassoc TEST testregex (AT&T Research) 2010-06-10 NOTE regex NOTE unsupported: AUGMENTED,SHELL,CLASS_ESCAPE,COMMENT,DELIMITED,DISCIPLINE,ESCAPE,LEFT,LENIENT,MINIMAL,MULTIPLE,MULTIREF,MUSTDP,SHELL_PATH,SPAN,regnexec,regsubcomp,redecomp NOTE left-assoc:pass-none right-assoc:pass-all : 2002-04-29 3: (a¦ab)(c¦bcd)(d*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 4: (a¦ab)(bcd¦c)(d*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 5: (ab¦a)(c¦bcd)(d*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 6: (ab¦a)(bcd¦c)(d*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 8: (a*)(b¦abc)(c*) versus abc ERE failed: match was: (0,3)(0,0)(0,3)(3,3) expected: (0,3)(0,1)(1,2)(2,3) 9: (a*)(abc¦b)(c*) versus abc ERE failed: match was: (0,3)(0,0)(0,3)(3,3) expected: (0,3)(0,1)(1,2)(2,3) 10: (a*)(b¦abc)(c*) versus abc ERE failed: match was: (0,3)(0,0)(0,3)(3,3) expected: (0,3)(0,1)(1,2)(2,3) 11: (a*)(abc¦b)(c*) versus abc ERE failed: match was: (0,3)(0,0)(0,3)(3,3) expected: (0,3)(0,1)(1,2)(2,3) 13: (a¦ab)(c¦bcd)(d¦.*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 14: (a¦ab)(bcd¦c)(d¦.*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 15: (ab¦a)(c¦bcd)(d¦.*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) 16: (ab¦a)(bcd¦c)(d¦.*) versus abcd ERE failed: match was: (0,4)(0,1)(1,4)(4,4) expected: (0,4)(0,2)(2,3)(3,4) TEST testregex, 12 tests, 12 errors