summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2000-10-06 17:41:52 (GMT)
committerMartin v. Löwis <martin@v.loewis.de>2000-10-06 17:41:52 (GMT)
commit962c9e7f9188c75a3889fcc7fd29fb1626e278d0 (patch)
tree3656fb89cdb496f4015152b35951276f432df3c7 /Lib/test
parent75698a4937130b0ca8019c553a4be7f02eb5ab0a (diff)
downloadcpython-962c9e7f9188c75a3889fcc7fd29fb1626e278d0.zip
cpython-962c9e7f9188c75a3889fcc7fd29fb1626e278d0.tar.gz
cpython-962c9e7f9188c75a3889fcc7fd29fb1626e278d0.tar.bz2
Add SAXReaderNotAvailable, and use it to distinguish between an
ImportError, and a missing driver.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/output/test_sax3
-rw-r--r--Lib/test/test_sax.py18
2 files changed, 19 insertions, 2 deletions
diff --git a/Lib/test/output/test_sax b/Lib/test/output/test_sax
index 53c5f97..d2ccf88 100644
--- a/Lib/test/output/test_sax
+++ b/Lib/test/output/test_sax
@@ -14,6 +14,7 @@ Passed test_expat_inpsource_sysid
Passed test_expat_nsattrs_empty
Passed test_expat_nsattrs_wattr
Passed test_filter_basic
+Passed test_make_parser
Passed test_nsattrs_empty
Passed test_nsattrs_wattr
Passed test_xmlgen_basic
@@ -22,4 +23,4 @@ Passed test_xmlgen_content_escape
Passed test_xmlgen_ignorable
Passed test_xmlgen_ns
Passed test_xmlgen_pi
-23 tests, 0 failures
+24 tests, 0 failures
diff --git a/Lib/test/test_sax.py b/Lib/test/test_sax.py
index 1760eb2..b3576ab 100644
--- a/Lib/test/test_sax.py
+++ b/Lib/test/test_sax.py
@@ -2,10 +2,15 @@
# regression test for SAX 2.0
# $Id$
+from xml.sax import make_parser, ContentHandler
+try:
+ make_parser()
+except xml.sax.SAXReaderNotAvailable:
+ # don't try to test this module if we cannot create a parser
+ raise ImportError("no XML parsers available")
from xml.sax.saxutils import XMLGenerator, escape, XMLFilterBase
from xml.sax.expatreader import create_parser
from xml.sax.xmlreader import InputSource, AttributesImpl, AttributesNSImpl
-from xml.sax.handler import ContentHandler
from cStringIO import StringIO
from test_support import verbose, TestFailed, findfile
@@ -41,6 +46,17 @@ def test_escape_all():
def test_escape_extra():
return escape("Hei på deg", {"å" : "&aring;"}) == "Hei p&aring; deg"
+def test_make_parser():
+ try:
+ # Creating a parser should succeed - it should fall back
+ # to the expatreader
+ p = make_parser(['xml.parsers.no_such_parser'])
+ except:
+ return 0
+ else:
+ return p
+
+
# ===== XMLGenerator
start = '<?xml version="1.0" encoding="iso-8859-1"?>\n'