Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgaphor@gmail.com <gaphor@gmail.com@a8418922-720d-0410-834f-a69b97ada669>2009-01-14 07:06:04 (GMT)
committer gaphor@gmail.com <gaphor@gmail.com@a8418922-720d-0410-834f-a69b97ada669>2009-01-14 07:06:04 (GMT)
commit8a8c183be968c515f3a4ef342f6f8e242a6b6ab9 (patch)
treeabb4c08980ca5d83619bb50600489c3cb1644158
parentf20ac2ed83703d7daac2f3c80109bfd99dde1fe8 (diff)
Added some extra tests (now 100% coverage for those files)
git-svn-id: http://svn.devjavu.com/gaphor/gaphas/trunk@2605 a8418922-720d-0410-834f-a69b97ada669
-rw-r--r--gaphas/geometry.py6
-rw-r--r--gaphas/state.py5
-rw-r--r--gaphas/tests/test_quadtree.py20
3 files changed, 29 insertions, 2 deletions
diff --git a/gaphas/geometry.py b/gaphas/geometry.py
index 3461091..ac87ef1 100644
--- a/gaphas/geometry.py
+++ b/gaphas/geometry.py
@@ -326,8 +326,10 @@ def point_on_rectangle(rect, point, border=False):
(4, 11)
>>> point_on_rectangle((1, 1, 10, 10), (4, 6), border=True)
(1, 6)
- >>> point_on_rectangle(Rectangle(1, 1, 10, 10), (3, 3), border=True)
- (1, 3)
+ >>> point_on_rectangle(Rectangle(1, 1, 10, 10), (5, 3), border=True)
+ (5, 1)
+ >>> point_on_rectangle(Rectangle(1, 1, 10, 10), (8, 4), border=True)
+ (11, 4)
>>> point_on_rectangle((1, 1, 10, 100), (5, 8), border=True)
(1, 8)
>>> point_on_rectangle((1, 1, 10, 100), (5, 98), border=True)
diff --git a/gaphas/state.py b/gaphas/state.py
index 8052134..b9e3ac5 100644
--- a/gaphas/state.py
+++ b/gaphas/state.py
@@ -91,6 +91,11 @@ def enable_dispatching(func, enable=True):
>>> enable_dispatching(callme, False)
>>> callme()
+ Calling multiple times has no effect.
+
+ >>> enable_dispatching(callme, False)
+ >>> callme()
+
... and enable it again:
>>> enable_dispatching(callme)
diff --git a/gaphas/tests/test_quadtree.py b/gaphas/tests/test_quadtree.py
index c3fef28..ae73e39 100644
--- a/gaphas/tests/test_quadtree.py
+++ b/gaphas/tests/test_quadtree.py
@@ -72,6 +72,26 @@ class QuadtreeTestCase(unittest.TestCase):
assert len(qtree._bucket._buckets[1].items) == 10, \
qtree._bucket._buckets[1].items
+
+ def test_get_data(self):
+ """
+ Extra data may be added to a node:
+ """
+ qtree = Quadtree((0, 0, 100, 100))
+ for i in range(0, 100, 10):
+ for j in range(0, 100, 10):
+ qtree.add("%dx%d" % (i, j), (i, j, 10, 10), i+j)
+
+ for i in range(0, 100, 10):
+ for j in range(0, 100, 10):
+ assert i+j == qtree.get_data("%dx%d" % (i, j))
+
+ def test_clipped_bounds(self):
+ qtree = Quadtree((0, 0, 100, 100), capacity=10)
+ qtree.add(1, (-100, -100, 120, 120))
+ self.assertEquals((0, 0, 20, 20), qtree.get_clipped_bounds(1))
+
+
if __name__ == '__main__':
unittest.main()