[Checkins] SVN: zope.proxy/trunk/ 100% unit test coverage.

Tres Seaver cvs-admin at zope.org
Wed Jun 6 20:12:29 UTC 2012


Log message for revision 126610:
  100% unit test coverage.

Changed:
  _U  zope.proxy/trunk/
  U   zope.proxy/trunk/CHANGES.txt
  U   zope.proxy/trunk/src/zope/proxy/tests/test_decorator.py

-=-
Modified: zope.proxy/trunk/CHANGES.txt
===================================================================
--- zope.proxy/trunk/CHANGES.txt	2012-06-06 20:12:22 UTC (rev 126609)
+++ zope.proxy/trunk/CHANGES.txt	2012-06-06 20:12:25 UTC (rev 126610)
@@ -5,6 +5,8 @@
 4.0.0 (unreleased)
 ------------------
 
+- 100% unit test coverage.
+
 - Added Sphinx documentation:  moved doctest examples to API reference.
 
 - Added 'setup.py docs' alias (installs ``Sphinx`` and dependencies).

Modified: zope.proxy/trunk/src/zope/proxy/tests/test_decorator.py
===================================================================
--- zope.proxy/trunk/src/zope/proxy/tests/test_decorator.py	2012-06-06 20:12:22 UTC (rev 126609)
+++ zope.proxy/trunk/src/zope/proxy/tests/test_decorator.py	2012-06-06 20:12:25 UTC (rev 126610)
@@ -13,10 +13,67 @@
 ##############################################################################
 """Test Harness
 """
-from doctest import DocTestSuite
+import unittest
 
 
+class DecoratorSpecificationDescriptorTests(unittest.TestCase):
+
+    def _getTargetClass(self):
+        from zope.proxy.decorator import DecoratorSpecificationDescriptor
+        return DecoratorSpecificationDescriptor
+
+    def _makeOne(self):
+        return self._getTargetClass()()
+
+    def test___get___w_class(self):
+        from zope.interface import Interface
+        from zope.interface import provider
+        class IFoo(Interface):
+            pass
+        @provider(IFoo)
+        class Foo(object):
+            pass
+        dsd = self._makeOne()
+        self.assertEqual(list(dsd.__get__(None, Foo)), [IFoo])
+
+    def test___get___w_inst_no_proxy(self):
+        from zope.interface import Interface
+        from zope.interface import implementer
+        class IFoo(Interface):
+            pass
+        @implementer(IFoo)
+        class Foo(object):
+            pass
+        dsd = self._makeOne()
+        self.assertEqual(list(dsd.__get__(Foo(), None)), [IFoo])
+
+    def test___get___w_inst_w_proxy(self):
+        from zope.interface import Interface
+        from zope.interface import implementer
+        from zope.proxy import ProxyBase
+        class IFoo(Interface):
+            pass
+        @implementer(IFoo)
+        class Foo(object):
+            pass
+        foo = Foo()
+        p_foo = ProxyBase(foo)
+        dsd = self._makeOne()
+        self.assertEqual(list(dsd.__get__(p_foo, None)), [IFoo])
+
+    def test___set___not_allowed(self):
+        from zope.interface import Interface
+        from zope.interface import implementer
+        class IFoo(Interface):
+            pass
+        @implementer(IFoo)
+        class Foo(object):
+            pass
+        foo = Foo()
+        dsd = self._makeOne()
+        self.assertRaises(TypeError, dsd.__set__, foo, object())
+
+
 def test_suite():
-    suite = DocTestSuite()
-    suite.addTest(DocTestSuite('zope.proxy.decorator'))
-    return suite
+    return unittest.TestSuite((
+    ))



More information about the checkins mailing list