[Checkins] SVN: zope.component/tseaver-test_cleanup/ Use a single exception type for excptions raised directly here.
Tres Seaver
cvs-admin at zope.org
Tue Jun 26 23:01:13 UTC 2012
Log message for revision 127117:
Use a single exception type for excptions raised directly here.
Derives from both ValueError and zope.configuration.ConfigurationError for
backward compatibility.
Changed:
_U zope.component/tseaver-test_cleanup/
U zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py
U zope.component/tseaver-test_cleanup/src/zope/component/zcml.py
-=-
Modified: zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py
===================================================================
--- zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py 2012-06-26 23:01:06 UTC (rev 127116)
+++ zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py 2012-06-26 23:01:10 UTC (rev 127117)
@@ -80,14 +80,16 @@
def test_empty_factory(self):
from zope.interface import Interface
+ from zope.component.zcml import ComponentConfigurationError
class IFoo(Interface):
pass
_cfg_ctx = _makeConfigContext()
- self.assertRaises(ValueError,
+ self.assertRaises(ComponentConfigurationError,
self._callFUT, _cfg_ctx, [], [Interface], IFoo)
def test_multiple_factory_multiple_for_(self):
from zope.interface import Interface
+ from zope.component.zcml import ComponentConfigurationError
class IFoo(Interface):
pass
class IBar(Interface):
@@ -97,7 +99,7 @@
class Bar(object):
pass
_cfg_ctx = _makeConfigContext()
- self.assertRaises(ValueError,
+ self.assertRaises(ComponentConfigurationError,
self._callFUT, _cfg_ctx, [Foo, Bar],
[Interface, IBar], IFoo)
@@ -796,8 +798,8 @@
def testMultiView_fails_w_multiple_factories(self):
- from zope.configuration.exceptions import ConfigurationError
- self.assertRaises(ConfigurationError,
+ from zope.component.zcml import ComponentConfigurationError
+ self.assertRaises(ComponentConfigurationError,
self._config,
'''
<view name="test"
@@ -807,7 +809,9 @@
zope.component.testfiles.adapter.I1
zope.component.testfiles.adapter.I2"
type="zope.component.testfiles.views.IV"/>
- ''')
+ ''',
+ testing=1,
+ )
def testView_w_multiple_factories(self):
from zope.component import queryMultiAdapter
@@ -844,15 +848,17 @@
self.assertEqual(a1.context[0], ob)
def testView_fails_w_no_factories(self):
- from zope.configuration.exceptions import ConfigurationError
- self.assertRaises(ConfigurationError,
+ from zope.component.zcml import ComponentConfigurationError
+ self.assertRaises(ComponentConfigurationError,
self._config,
'''
<view name="test"
factory=""
for="zope.component.testfiles.views.IC"
type="zope.component.testfiles.views.IV"/>
- ''')
+ ''',
+ testing=1,
+ )
def testViewThatProvidesAnInterface(self):
@@ -1039,9 +1045,8 @@
self.assertEqual(v.action(), 'done')
def testIncompleteProtectedViewNoPermission(self):
- from zope.configuration.exceptions import ConfigurationError
- self.assertRaises(
- ConfigurationError,
+ from zope.component.zcml import ComponentConfigurationError
+ self.assertRaises(ComponentConfigurationError,
self._config,
'''
<view name="test"
@@ -1051,10 +1056,11 @@
allowed_attributes="action index"
/>
''',
+ testing=1,
)
def testViewUndefinedPermission(self):
- self.assertRaises(ValueError,
+ self.assertRaises(ValueError, #raised from zope.security
self._config,
'''
<view name="test"
@@ -1158,7 +1164,7 @@
self.assertEqual(v.__class__, R1)
def testResourceUndefinedPermission(self):
- self.assertRaises(ValueError,
+ self.assertRaises(ValueError, #raised from zope.security
self._config,
'''
<resource name="test"
Modified: zope.component/tseaver-test_cleanup/src/zope/component/zcml.py
===================================================================
--- zope.component/tseaver-test_cleanup/src/zope/component/zcml.py 2012-06-26 23:01:06 UTC (rev 127116)
+++ zope.component/tseaver-test_cleanup/src/zope/component/zcml.py 2012-06-26 23:01:10 UTC (rev 127117)
@@ -47,6 +47,9 @@
_ = MessageFactory('zope')
+class ComponentConfigurationError(ValueError, ConfigurationError):
+ pass
+
def handler(methodName, *args, **kwargs):
method = getattr(getSiteManager(), methodName)
method(*args, **kwargs)
@@ -185,9 +188,10 @@
if len(factories) == 1:
factory = factories[0]
elif len(factories) < 1:
- raise ValueError("No factory specified")
+ raise ComponentConfigurationError("No factory specified")
elif len(factories) > 1 and len(for_) != 1:
- raise ValueError("Can't use multiple factories and multiple for")
+ raise ComponentConfigurationError(
+ "Can't use multiple factories and multiple for")
else:
factory = _rolledUpFactory(factories)
@@ -515,19 +519,23 @@
value_type=GlobalObject(),
)
-def view(_context, factory, type, name, for_, layer=None,
- permission=None, allowed_interface=None, allowed_attributes=None,
- provides=Interface):
+def view(_context, factory, type, name, for_,
+ layer=None,
+ permission=None,
+ allowed_interface=None,
+ allowed_attributes=None,
+ provides=Interface,
+ ):
if ((allowed_attributes or allowed_interface)
and (not permission)):
- raise ConfigurationError(
+ raise ComponentConfigurationError(
"Must use name attribute with allowed_interface or "
"allowed_attributes"
)
if not factory:
- raise ConfigurationError("No view factory specified.")
+ raise ComponentConfigurationError("No view factory specified.")
if permission is not None:
@@ -548,7 +556,7 @@
if not for_:
- raise ValueError("No for interfaces specified");
+ raise ComponentConfigurationError("No for interfaces specified");
for_ = tuple(for_)
# Generate a single factory from multiple factories:
@@ -556,9 +564,10 @@
if len(factories) == 1:
factory = factories[0]
elif len(factories) < 1:
- raise ValueError("No factory specified")
+ raise ComponentConfigurationError("No factory specified")
elif len(factories) > 1 and len(for_) > 1:
- raise ValueError("Can't use multiple factories and multiple for")
+ raise ComponentConfigurationError(
+ "Can't use multiple factories and multiple for")
else:
def factory(ob, request):
for f in factories[:-1]:
@@ -636,7 +645,7 @@
if ((allowed_attributes or allowed_interface)
and (not permission)):
- raise ConfigurationError(
+ raise ComponentConfigurationError(
"Must use name attribute with allowed_interface or "
"allowed_attributes"
)
More information about the checkins
mailing list