[Zodb-checkins] CVS: Packages/ZConfig/tests - test_schema.py:1.1.2.21
Fred L. Drake, Jr.
fred@zope.com
Fri, 13 Dec 2002 16:56:35 -0500
Update of /cvs-repository/Packages/ZConfig/tests
In directory cvs.zope.org:/tmp/cvs-serv24930
Modified Files:
Tag: zconfig-schema-devel-branch
test_schema.py
Log Message:
More tests of the handler machinery.
=== Packages/ZConfig/tests/test_schema.py 1.1.2.20 => 1.1.2.21 ===
--- Packages/ZConfig/tests/test_schema.py:1.1.2.20 Fri Dec 13 16:32:47 2002
+++ Packages/ZConfig/tests/test_schema.py Fri Dec 13 16:56:34 2002
@@ -172,7 +172,7 @@
def test_multivalued_keys(self):
schema = self.load_schema_text(
"<schema handler='def'>"
- " <key name='a' minOccurs='2' maxOccurs='5' handler='abc' />"
+ " <key name='a' minOccurs='2' maxOccurs='5' handler='ABC' />"
" <key name='b' minOccurs='2' maxOccurs='2' datatype='integer'>"
" <default>1</default>"
" <default>2</default>"
@@ -195,10 +195,27 @@
self.handlers({'abc': L.append,
'DEF': L.append})
self.assertEqual(L, [['foo', 'bar'], conf])
+ L = []
+ self.handlers({'abc': None,
+ 'DEF': L.append})
+ self.assertEqual(L, [conf])
self.assertEqual(conf.a, ['foo', 'bar'])
self.assertEqual(conf.b, [1, 2])
self.assertEqual(conf.c, [41, 42, 43])
self.assertEqual(conf.d, [])
+
+ def test_bad_handler_maps(self):
+ schema = self.load_schema_text(
+ "<schema>"
+ " <key name='a' handler='abc'/>"
+ " <key name='b' handler='def'/>"
+ "</schema>")
+ conf = self.load_config_text(schema, "a foo\n b bar",
+ num_handlers=2)
+ self.assertRaises(ZConfig.ConfigurationError,
+ self.handlers, {'abc': id, 'ABC': id, 'def': id})
+ self.assertRaises(ZConfig.ConfigurationError,
+ self.handlers, {})
def test_duplicate_section_names(self):
schema = self.load_schema_text(