#$Header: /var/local/cvsroot/4Suite/test/Server/Common/test_validationinfo.py,v 1.4 2004/11/15 18:29:58 lmorillas Exp $ from Ft.Server import FTSS_URI_SCHEME from Ft.Server.Common import ValidationInfo, DocumentReference from Ft.Server.Server import FtServerServerException, Error from Server.Server.SCore import test_helper def test_no_validation(tester): tester.startTest("No Validation") nv = ValidationInfo.NoValidation() tester.compare(1, nv.validate(None, None, FTSS_URI_SCHEME + ':///dummy')) tester.testDone() def test_dtd_validation(tester): tester.startTest("DTD Validation") dv = ValidationInfo.DtdValidationInfo(None) tester.testException(dv.validate, (None, None, FTSS_URI_SCHEME + ':///dummy.xml'), NotImplementedError) tester.testDone() def test_schematron_validation(tester): tester.startTest("Schematron Validation") repo = test_helper.GetRepo(tester) dr = DocumentReference.StringDocumentReference(SCHEMA1, FTSS_URI_SCHEME + ':///string-from-var-SCHEMA1') sv = ValidationInfo.SchematronValidationInfo(dr) tester.compare(1, sv.validate(repo, DOC1, FTSS_URI_SCHEME + ':///string-from-var-DOC1')) tester.compare(0, sv.validate(repo, DOC2, FTSS_URI_SCHEME + ':///string-from-var-DOC2')) repo.txRollback() tester.testDone() def Test(tester): test_no_validation(tester) test_dtd_validation(tester) test_schematron_validation(tester) DOC1="""""" DOC2="""""" SCHEMA1=""" VALIDATION ERROR: The root element must have a v attribute """