/usr/share/pyshared/zope/annotation/tests/annotations.py is in python-zope.annotation 3.5.0-0ubuntu5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | ##############################################################################
#
# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""General Annotations Tests
All objects implementing 'IAnnotations' should pass these tests. They might be
used as base tests for real implementations.
$Id: annotations.py 103612 2009-09-07 16:06:08Z nadako $
"""
import unittest
from zope.interface.verify import verifyObject
from zope.annotation.interfaces import IAnnotations
class AnnotationsTest(unittest.TestCase):
"""Test the IAnnotations interface.
The test case class expects the 'IAnnotations' implementer to be in
'self.annotations'.
"""
def setUp(self):
self.obj = {1:2, 3:4}
def test_nonzero(self):
self.failIf(self.annotations)
self.annotations['unittest'] = self.obj
self.failUnless(self.annotations)
del self.annotations['unittest']
self.failIf(self.annotations)
def testInterfaceVerifies(self):
verifyObject(IAnnotations, self.annotations)
def testStorage(self):
# test __getitem__
self.annotations['unittest'] = self.obj
res = self.annotations['unittest']
self.failUnlessEqual(self.obj, res)
def testGetitemException(self):
# test __getitem__ raises exception on unknown key
self.assertRaises(KeyError, self.annotations.__getitem__,'randomkey')
def testGet(self):
# test get
self.annotations['unittest'] = self.obj
res = self.annotations.get('unittest')
self.failUnlessEqual(self.obj, res)
def testGetNoSet(self):
# test get with no set
res = self.annotations.get('randomkey')
self.failUnlessEqual(None, res)
def testGetDefault(self):
# test get returns default
res = self.annotations.get('randomkey', 'default')
self.failUnlessEqual('default', res)
def testDel(self):
self.annotations['unittest'] = self.obj
del self.annotations['unittest']
self.failUnlessEqual(None, self.annotations.get('unittest'))
def testDelRaisesKeyError(self):
self.assertRaises(KeyError, self.annotations.__delitem__, 'unittest')
|