[Checkins] SVN: zope.container/trunk/ Moved zope.copypastemove related tests into that package.
Hanno Schlichting
hannosch at hannosch.eu
Tue Dec 29 15:25:41 EST 2009
Log message for revision 107304:
Moved zope.copypastemove related tests into that package.
Changed:
U zope.container/trunk/CHANGES.txt
U zope.container/trunk/setup.py
D zope.container/trunk/src/zope/container/tests/test_objectcopier.py
D zope.container/trunk/src/zope/container/tests/test_objectmover.py
-=-
Modified: zope.container/trunk/CHANGES.txt
===================================================================
--- zope.container/trunk/CHANGES.txt 2009-12-29 20:14:18 UTC (rev 107303)
+++ zope.container/trunk/CHANGES.txt 2009-12-29 20:25:41 UTC (rev 107304)
@@ -5,9 +5,11 @@
3.10.1 (unreleased)
-------------------
+- Moved zope.copypastemove related tests into that package.
+
- Removed no longer used zcml prefix from the configure file.
-- Stop importing DocTestSuite from zope.testing.doctestunit. Fixes
+- Stop importing DocTestSuite from zope.testing.doctestunit. Fixes
compatibility problems with zope.testing 3.8.4.
3.10.0 (2009-12-15)
Modified: zope.container/trunk/setup.py
===================================================================
--- zope.container/trunk/setup.py 2009-12-29 20:14:18 UTC (rev 107303)
+++ zope.container/trunk/setup.py 2009-12-29 20:25:41 UTC (rev 107304)
@@ -64,7 +64,6 @@
],
extras_require=dict(
test=['zope.configuration',
- 'zope.copypastemove',
'zope.security',
]),
install_requires=['setuptools',
Deleted: zope.container/trunk/src/zope/container/tests/test_objectcopier.py
===================================================================
--- zope.container/trunk/src/zope/container/tests/test_objectcopier.py 2009-12-29 20:14:18 UTC (rev 107303)
+++ zope.container/trunk/src/zope/container/tests/test_objectcopier.py 2009-12-29 20:25:41 UTC (rev 107304)
@@ -1,211 +0,0 @@
-##############################################################################
-#
-# 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.
-#
-##############################################################################
-"""Object Copier Tests
-
-$Id$
-"""
-from unittest import TestCase, TestSuite, main, makeSuite
-
-import zope.component
-from zope.testing import doctest
-from zope.traversing.api import traverse
-from zope.component.eventtesting import getEvents, clearEvents
-from zope.copypastemove import ObjectCopier
-from zope.copypastemove.interfaces import IObjectCopier
-
-from zope.container import testing
-
-class File(object):
- pass
-
-def test_copy_events():
- """
- Prepare an IObjectCopier::
-
- >>> from zope import component
- >>> component.provideAdapter(ObjectCopier, (None,), IObjectCopier)
-
- We set things up in a root folder::
-
- >>> from zope.container.sample import SampleContainer
- >>> root = SampleContainer()
-
- Prepare some objects::
-
- >>> folder = SampleContainer()
- >>> root[u'foo'] = File()
- >>> root[u'folder'] = folder
- >>> list(folder.keys())
- []
- >>> foo = traverse(root, 'foo') # wrap in ContainedProxy
-
- Now make a copy::
-
- >>> clearEvents()
- >>> copier = IObjectCopier(foo)
- >>> copier.copyTo(folder, u'bar')
- u'bar'
-
- Check that the copy has been done::
-
- >>> list(folder.keys())
- [u'bar']
-
- Check what events have been sent::
-
- >>> events = getEvents()
- >>> [event.__class__.__name__ for event in events]
- ['ObjectCopiedEvent', 'ObjectAddedEvent', 'ContainerModifiedEvent']
-
- Check that the ObjectCopiedEvent includes the correct data::
-
- >>> events[0].object is folder[u'bar']
- True
- >>> events[0].original is root[u'foo']
- True
- """
-
-
-class ObjectCopierTest(testing.ContainerPlacefulSetup, TestCase):
-
- def setUp(self):
- testing.ContainerPlacefulSetup.setUp(self)
- self.buildFolders()
- zope.component.provideAdapter(ObjectCopier, (None,), IObjectCopier)
-
- def test_copytosame(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- copier.copyTo(container, 'file1')
- self.failUnless('file1' in container)
- self.failUnless('file1-2' in container)
-
- def test_copytosamewithnewname(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- copier.copyTo(container, 'file2')
- self.failUnless('file1' in container)
- self.failUnless('file2' in container)
-
- def test_copytoother(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- copier.copyTo(target, 'file1')
- self.failUnless('file1' in container)
- self.failUnless('file1' in target)
-
- def test_copytootherwithnewname(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- copier.copyTo(target, 'file2')
- self.failUnless('file1' in container)
- self.failUnless('file2' in target)
-
- def test_copytootherwithnamecollision(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- target['file1'] = File()
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- copier.copyTo(target, 'file1')
- # we do it twice, just to test auto-name generation
- copier.copyTo(target, 'file1')
- self.failUnless('file1' in container)
- self.failUnless('file1' in target)
- self.failUnless('file1-2' in target)
- self.failUnless('file1-3' in target)
-
- def test_copyable(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- self.failUnless(copier.copyable())
-
- def test_copyableTo(self):
- # A file should be copyable to a folder that has an
- # object with the same id.
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- copier = IObjectCopier(file)
- self.failUnless(copier.copyableTo(container, 'file1'))
-
- def test_copyfoldertosibling(self):
- root = self.rootFolder
- target = traverse(root, '/folder2')
- source = traverse(root, '/folder1/folder1_1')
- copier = IObjectCopier(source)
- copier.copyTo(target)
- self.failUnless('folder1_1' in target)
-
- def test_copyfoldertosame(self):
- root = self.rootFolder
- target = traverse(root, '/folder1')
- source = traverse(root, '/folder1/folder1_1')
- copier = IObjectCopier(source)
- copier.copyTo(target)
- self.failUnless('folder1_1' in target)
-
- def test_copyfoldertosame2(self):
- root = self.rootFolder
- target = traverse(root, '/folder1/folder1_1')
- source = traverse(root, '/folder1/folder1_1/folder1_1_1')
- copier = IObjectCopier(source)
- copier.copyTo(target)
- self.failUnless('folder1_1_1' in target)
-
- def test_copyfolderfromroot(self):
- root = self.rootFolder
- target = traverse(root, '/folder2')
- source = traverse(root, '/folder1')
- copier = IObjectCopier(source)
- copier.copyTo(target)
- self.failUnless('folder1' in target)
-
- def test_copyfolderfromroot2(self):
- root = self.rootFolder
- target = traverse(root, '/folder2/folder2_1/folder2_1_1')
- source = traverse(root, '/folder1')
- copier = IObjectCopier(source)
- copier.copyTo(target)
- self.failUnless('folder1' in target)
-
-def test_suite():
- return TestSuite((
- makeSuite(ObjectCopierTest),
- doctest.DocTestSuite(setUp=testing.ContainerPlacefulSetup().setUp,
- tearDown=testing.ContainerPlacefulSetup().tearDown),
- ))
-
-if __name__=='__main__':
- main(defaultTest='test_suite')
Deleted: zope.container/trunk/src/zope/container/tests/test_objectmover.py
===================================================================
--- zope.container/trunk/src/zope/container/tests/test_objectmover.py 2009-12-29 20:14:18 UTC (rev 107303)
+++ zope.container/trunk/src/zope/container/tests/test_objectmover.py 2009-12-29 20:25:41 UTC (rev 107304)
@@ -1,228 +0,0 @@
-##############################################################################
-#
-# 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.
-#
-##############################################################################
-"""Object Mover Tests
-
-$Id$
-"""
-from unittest import TestCase, TestSuite, main, makeSuite
-
-import zope.component
-from zope.testing import doctest
-from zope.traversing.api import traverse
-from zope.component.eventtesting import getEvents, clearEvents
-from zope.copypastemove import ObjectMover
-from zope.copypastemove.interfaces import IObjectMover
-
-from zope.container import testing
-
-class File(object):
- pass
-
-def test_move_events():
- """
- We need a root folder::
-
- >>> from zope.container.sample import SampleContainer
- >>> root = SampleContainer()
-
- Prepare the setup::
-
- >>> from zope import component
- >>> component.provideAdapter(ObjectMover, (None,), IObjectMover)
-
- Prepare some objects::
-
- >>> folder = SampleContainer()
- >>> root[u'foo'] = File()
- >>> root[u'folder'] = folder
- >>> list(folder.keys())
- []
- >>> foo = traverse(root, 'foo') # wrap in ContainedProxy
-
- Now move it::
-
- >>> clearEvents()
- >>> mover = IObjectMover(foo)
- >>> mover.moveableTo(folder)
- True
- >>> mover.moveTo(folder, u'bar')
- u'bar'
-
- Check that the move has been done::
-
- >>> list(root.keys())
- [u'folder']
- >>> list(folder.keys())
- [u'bar']
-
- Check what events have been sent::
-
- >>> events = getEvents()
- >>> [event.__class__.__name__ for event in events]
- ['ObjectMovedEvent', 'ContainerModifiedEvent', 'ContainerModifiedEvent']
-
- Verify that the ObjectMovedEvent includes the correct data::
-
- >>> events[0].oldName, events[0].newName
- (u'foo', u'bar')
- >>> events[0].oldParent is root
- True
- >>> events[0].newParent is folder
- True
-
- Let's look the other events:
-
- >>> events[1].object is folder
- True
- >>> events[2].object is root
- True
-
- """
-
-
-class ObjectMoverTest(testing.ContainerPlacefulSetup, TestCase):
-
- def setUp(self):
- testing.ContainerPlacefulSetup.setUp(self)
- self.buildFolders()
- zope.component.provideAdapter(ObjectMover, (None,), )
-
- def test_movetosame(self):
- # Should be a noop, because "moving" to same location
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- mover.moveTo(container, 'file1')
- self.failUnless('file1' in container)
- self.assertEquals(len(container), 2)
-
- def test_movetosamewithnewname(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- mover.moveTo(container, 'file2')
- self.failIf('file1' in container)
- self.failUnless('file2' in container)
-
- def test_movetoother(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- mover.moveTo(target, 'file1')
- self.failIf('file1' in container)
- self.failUnless('file1' in target)
-
- def test_movetootherwithnewname(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- mover.moveTo(target, 'file2')
- self.failIf('file1' in container)
- self.failUnless('file2' in target)
-
- def test_movetootherwithnamecollision(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- target = traverse(root, 'folder2')
- target['file1'] = File()
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- mover.moveTo(target, 'file1')
- self.failIf('file1' in container)
- self.failUnless('file1' in target)
- self.failUnless('file1-2' in target)
-
- def test_moveable(self):
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- self.failUnless(mover.moveable())
-
- def test_moveableTo(self):
- # A file should be moveable to a folder that has an
- # object with the same id.
- root = self.rootFolder
- container = traverse(root, 'folder1')
- container['file1'] = File()
- file = traverse(root, 'folder1/file1')
- mover = IObjectMover(file)
- self.failUnless(mover.moveableTo(container, 'file1'))
-
- def test_movefoldertosibling(self):
- root = self.rootFolder
- target = traverse(root, '/folder2')
- source = traverse(root, '/folder1/folder1_1')
- mover = IObjectMover(source)
- mover.moveTo(target)
- self.failUnless('folder1_1' in target)
-
- def test_movefoldertosame(self):
- # Should be a noop, because "moving" to same location
- root = self.rootFolder
- target = traverse(root, '/folder1')
- source = traverse(root, '/folder1/folder1_1')
- mover = IObjectMover(source)
- mover.moveTo(target)
- self.failUnless('folder1_1' in target)
- self.assertEquals(len(target), 1)
-
- def test_movefoldertosame2(self):
- # Should be a noop, because "moving" to same location
- root = self.rootFolder
- target = traverse(root, '/folder1/folder1_1')
- source = traverse(root, '/folder1/folder1_1/folder1_1_1')
- mover = IObjectMover(source)
- mover.moveTo(target)
- self.failUnless('folder1_1_1' in target)
- self.assertEquals(len(target), 1)
-
- def test_movefolderfromroot(self):
- root = self.rootFolder
- target = traverse(root, '/folder2')
- source = traverse(root, '/folder1')
- mover = IObjectMover(source)
- mover.moveTo(target)
- self.failUnless('folder1' in target)
-
- def test_movefolderfromroot2(self):
- root = self.rootFolder
- target = traverse(root, '/folder2/folder2_1/folder2_1_1')
- source = traverse(root, '/folder1')
- mover = IObjectMover(source)
- mover.moveTo(target)
- self.failUnless('folder1' in target)
-
-
-def test_suite():
- return TestSuite((
- makeSuite(ObjectMoverTest),
- doctest.DocTestSuite(setUp=testing.ContainerPlacefulSetup().setUp,
- tearDown=testing.ContainerPlacefulSetup().tearDown),
- ))
-
-if __name__=='__main__':
- main(defaultTest='test_suite')
More information about the checkins
mailing list