[Checkins] SVN: zope.component/tseaver-test_cleanup/ 100% unit test coverage.
Tres Seaver
cvs-admin at zope.org
Tue Jun 26 23:01:37 UTC 2012
Log message for revision 127123:
100% unit test coverage.
Changed:
_U zope.component/tseaver-test_cleanup/
U zope.component/tseaver-test_cleanup/CHANGES.txt
U zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py
-=-
Modified: zope.component/tseaver-test_cleanup/CHANGES.txt
===================================================================
--- zope.component/tseaver-test_cleanup/CHANGES.txt 2012-06-26 23:01:30 UTC (rev 127122)
+++ zope.component/tseaver-test_cleanup/CHANGES.txt 2012-06-26 23:01:33 UTC (rev 127123)
@@ -4,6 +4,8 @@
4.0.0 (unreleased)
==================
+- 100% unit test coverage.
+
- Removed the long-deprecated ``layer`` argument to the
``zope.component.zcml.view`` and ``zope.component.zcml.resource``
ZCML directives.
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:30 UTC (rev 127122)
+++ zope.component/tseaver-test_cleanup/src/zope/component/tests/test_zcml.py 2012-06-26 23:01:33 UTC (rev 127123)
@@ -1102,457 +1102,6 @@
self.assertEqual(action['args'][5], 'TESTING')
-if 0: #these tests suck: get coverage to 100% without them
-
- class ResourceViewTests(PlacelessSetup, unittest.TestCase):
-
- def setUp(self):
- from zope import component
- from zope import security
- from zope.configuration.xmlconfig import XMLConfig
- super(ResourceViewTests, self).setUp()
- XMLConfig('meta.zcml', component)()
- XMLConfig('meta.zcml', security)()
-
- def _config(self, zcml, testing=0):
- from cStringIO import StringIO
- from zope.configuration.xmlconfig import xmlconfig
- xmlconfig(StringIO(_ZCML_TEMPLATE % zcml), testing=testing)
-
- def testView(self):
- from zope.component import queryMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import V1
- ob = Ob3()
- request = Request(IV)
- self.assertEqual(queryMultiAdapter((ob, request), name=u'test'), None)
-
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"/>
- ''')
-
- view = queryMultiAdapter((ob, request), name=u'test')
- self.assertEqual(view.__class__, V1)
-
- def testMultiView(self):
- from zope.component import queryMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.adapter import A1
- from zope.component.testfiles.adapter import A2
- from zope.component.testfiles.adapter import A3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.adapter.A3"
- for="zope.component.testfiles.views.IC
- zope.component.testfiles.adapter.I1
- zope.component.testfiles.adapter.I2"
- type="zope.component.testfiles.views.IV"/>
- ''')
-
-
- ob = Ob3()
- a1 = A1()
- a2 = A2()
- request = Request(IV)
- view = queryMultiAdapter((ob, a1, a2, request), name=u'test')
- self.assertEqual(view.__class__, A3)
- self.assertEqual(view.context, (ob, a1, a2, request))
-
-
- def testMultiView_fails_w_multiple_factories(self):
- from zope.component.zcml import ComponentConfigurationError
- self.assertRaises(ComponentConfigurationError,
- self._config,
- '''
- <view name="test"
- factory="zope.component.testfiles.adapter.A3
- zope.component.testfiles.adapter.A2"
- for="zope.component.testfiles.views.IC
- 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
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.adapter import A1
- from zope.component.testfiles.adapter import A2
- from zope.component.testfiles.adapter import A3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import V1
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.adapter.A1
- zope.component.testfiles.adapter.A2
- zope.component.testfiles.adapter.A3
- zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"/>
- ''')
-
- ob = Ob3()
-
- # The view should be a V1 around an A3, around an A2, around
- # an A1, anround ob:
- view = queryMultiAdapter((ob, Request(IV)), name=u'test')
- self.assertEqual(view.__class__, V1)
- a3 = view.context
- self.assertEqual(a3.__class__, A3)
- a2 = a3.context[0]
- self.assertEqual(a2.__class__, A2)
- a1 = a2.context[0]
- self.assertEqual(a1.__class__, A1)
- self.assertEqual(a1.context[0], ob)
-
- def testView_fails_w_no_factories(self):
- 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):
- from zope.component import queryMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IR
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import V1
- ob = Ob3()
- self.assertEqual(queryMultiAdapter((ob, Request(IR)), IV, u'test'),
- None)
-
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IR"
- />
- ''')
-
- self.assertEqual(queryMultiAdapter((ob, Request(IR)), IV, u'test'),
- None)
-
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IR"
- provides="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = queryMultiAdapter((ob, Request(IR)), IV, u'test')
- self.assertEqual(v.__class__, V1)
-
-
- def testUnnamedViewThatProvidesAnInterface(self):
- from zope.component import queryMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IR
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import V1
- ob = Ob3()
- self.assertEqual(queryMultiAdapter((ob, Request(IR)), IV), None)
-
- self._config(
- '''
- <view factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IR"
- />
- ''')
-
- v = queryMultiAdapter((ob, Request(IR)), IV)
- self.assertEqual(v, None)
-
- self._config(
- '''
- <view factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IR"
- provides="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = queryMultiAdapter((ob, Request(IR)), IV)
- self.assertEqual(v.__class__, V1)
-
- def testViewHavingARequiredClass(self):
- from zope.interface import implementer
- from zope.component import getMultiAdapter
- from zope.component.interfaces import ComponentLookupError
- from zope.component.testfiles.adapter import A1
- from zope.component.testfiles.components import Content
- from zope.component.testfiles.components import IContent
- from zope.component.testfiles.views import IR
- from zope.component.testfiles.views import Request
- self._config(
- '''
- <view
- for="zope.component.testfiles.components.Content"
- type="zope.component.testfiles.views.IR"
- factory="zope.component.testfiles.adapter.A1"
- />
- ''')
-
- content = Content()
- a1 = getMultiAdapter((content, Request(IR)))
- self.assert_(isinstance(a1, A1))
-
- @implementer(IContent)
- class MyContent:
- pass
-
- self.assertRaises(ComponentLookupError,
- getMultiAdapter, (MyContent(), Request(IR)))
-
- def testInterfaceProtectedView(self):
- from zope.security.checker import ProxyFactory
- from zope.component import getMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- permission="zope.Public"
- allowed_interface="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = ProxyFactory(getMultiAdapter((Ob3(), Request(IV)), name='test'))
- self.assertEqual(v.index(), 'V1 here')
- self.assertRaises(Exception, getattr, v, 'action')
-
- def testAttributeProtectedView(self):
- from zope.component import getMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.security.checker import ProxyFactory
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- permission="zope.Public"
- allowed_attributes="action"
- />
- ''')
-
- v = ProxyFactory(getMultiAdapter((Ob3(), Request(IV)), name='test'))
- self.assertEqual(v.action(), 'done')
- self.assertRaises(Exception, getattr, v, 'index')
-
- def testInterfaceAndAttributeProtectedView(self):
- from zope.component import getMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- permission="zope.Public"
- allowed_attributes="action"
- allowed_interface="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = getMultiAdapter((Ob3(), Request(IV)), name='test')
- self.assertEqual(v.index(), 'V1 here')
- self.assertEqual(v.action(), 'done')
-
- def testDuplicatedInterfaceAndAttributeProtectedView(self):
- from zope.component import getMultiAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- self._config(
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- permission="zope.Public"
- allowed_attributes="action index"
- allowed_interface="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = getMultiAdapter((Ob3(), Request(IV)), name='test')
- self.assertEqual(v.index(), 'V1 here')
- self.assertEqual(v.action(), 'done')
-
- def testIncompleteProtectedViewNoPermission(self):
- from zope.component.zcml import ComponentConfigurationError
- self.assertRaises(ComponentConfigurationError,
- self._config,
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- allowed_attributes="action index"
- />
- ''',
- testing=1,
- )
-
- def testViewUndefinedPermission(self):
- self.assertRaises(ValueError, #raised from zope.security
- self._config,
- '''
- <view name="test"
- factory="zope.component.testfiles.views.V1"
- for="zope.component.testfiles.views.IC"
- type="zope.component.testfiles.views.IV"
- permission="zope.UndefinedPermission"
- allowed_attributes="action index"
- allowed_interface="zope.component.testfiles.views.IV"
- />
- ''',
- testing=1)
-
- def testResource(self):
- from zope.component import queryAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import R1
- ob = Ob3()
- self.assertEqual(
- queryAdapter(Request(IV), name=u'test'), None)
- self._config(
- '''
- <resource name="test"
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IV"/>
- ''')
-
- self.assertEqual(
- queryAdapter(Request(IV), name=u'test').__class__,
- R1)
-
- def testResourceThatProvidesAnInterface(self):
- from zope.component import queryAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IR
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import R1
- ob = Ob3()
- self.assertEqual(queryAdapter(Request(IR), IV, u'test'),
- None)
-
- self._config(
- '''
- <resource
- name="test"
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IR"
- />
- ''')
-
- v = queryAdapter(Request(IR), IV, name=u'test')
- self.assertEqual(v, None)
-
- self._config(
- '''
- <resource
- name="test"
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IR"
- provides="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = queryAdapter(Request(IR), IV, name=u'test')
- self.assertEqual(v.__class__, R1)
-
- def testUnnamedResourceThatProvidesAnInterface(self):
- from zope.component import queryAdapter
- from zope.component.tests.examples import Ob3
- from zope.component.testfiles.views import IR
- from zope.component.testfiles.views import IV
- from zope.component.testfiles.views import Request
- from zope.component.testfiles.views import R1
- ob = Ob3()
- self.assertEqual(queryAdapter(Request(IR), IV), None)
-
- self._config(
- '''
- <resource
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IR"
- />
- ''')
-
- v = queryAdapter(Request(IR), IV)
- self.assertEqual(v, None)
-
- self._config(
- '''
- <resource
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IR"
- provides="zope.component.testfiles.views.IV"
- />
- ''')
-
- v = queryAdapter(Request(IR), IV)
- self.assertEqual(v.__class__, R1)
-
- def testResourceUndefinedPermission(self):
- self.assertRaises(ValueError, #raised from zope.security
- self._config,
- '''
- <resource name="test"
- factory="zope.component.testfiles.views.R1"
- type="zope.component.testfiles.views.IV"
- permission="zope.UndefinedPermission"/>
- ''',
- testing=1)
-
-
- _ZCML_TEMPLATE = """<configure
- xmlns='http://namespaces.zope.org/zope'
- i18n_domain='zope'>
- %s
- </configure>"""
-
-
def _makeConfigContext():
class _Context(object):
info = 'TESTING'
@@ -1572,5 +1121,4 @@
unittest.makeSuite(Test_interface),
unittest.makeSuite(Test_view),
unittest.makeSuite(Test_resource),
- #unittest.makeSuite(ResourceViewTests),
))
More information about the checkins
mailing list