######################################################################## # $Header: /var/local/cvsroot/4Suite/test/Xml/Xslt/Exslt/test_regexp.py,v 1.2 2005/12/28 02:38:18 jkloth Exp $ """Tests for EXSLT Regular Expressions""" from Xml.Xslt import test_harness SOURCE = """ Is this EXSLT? No. no """ TESTS = [] # regexp:match() def test_Match(tester): sty = """\ Part = """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = """\ Part 1 = http://www.bayes.co.uk/xml/index.xml Part 2 = http Part 3 = www.bayes.co.uk Part 4 =\x20 Part 5 = /xml/index.xml """ test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:match() non-global match') # global match sty = """\ Part = """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = """\ Part 1 = This Part 2 = is Part 3 = a Part 4 = test Part 5 = string """ test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:match() global') # global, case-insensitive match sty = """\ Part = """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = """\ Part 1 = This Part 2 = is Part 3 = a Part 4 = test Part 5 = string """ test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:match() global, case-insensitive') return TESTS.append(test_Match) # regexp:replace() def test_Replace(tester): sty = """\ """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = "Is this EXSLT? No. yes!!!" test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:replace() global') sty = """\ """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = "Is this EXSLT? yes!!!. yes!!!" test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:replace() global, case-insensitive') return TESTS.append(test_Replace) # regexp:test() def test_Test(tester): sty = """\ """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = "true" test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:test() global') sty = """\ """ source = test_harness.FileInfo(string=SOURCE) sheet = test_harness.FileInfo(string=sty) expected = "true" test_harness.XsltTest(tester, source, [sheet], expected, title='regexp:test() global, case-insensitive') return TESTS.append(test_Test) def Test(tester): tester.startGroup('Regular Expressions') for test in TESTS: test(tester) tester.groupDone() return