From 152823d897f8295a711f7f584d0384b28fb2fcf3 Mon Sep 17 00:00:00 2001 From: hut Date: Sun, 18 Apr 2010 15:17:07 +0200 Subject: tc_displayable: test_boundaries fails if you run it more often! --- test/tc_displayable.py | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/test/tc_displayable.py b/test/tc_displayable.py index 1bbffa73..0d720c2c 100644 --- a/test/tc_displayable.py +++ b/test/tc_displayable.py @@ -113,26 +113,27 @@ class TestDisplayableWithCurses(unittest.TestCase): self.assertRaises(ValueError, disp.resize, -1, 0, hei, wid) self.assertRaises(ValueError, disp.resize, 0, -1, hei, wid) - box = [int(randint(0, hei) * 0.2), 0, - int(randint(0, wid) * 0.2), 0] - box[1] = randint(box[0], hei) - box[1] = randint(box[0], hei) - - def in_box(y, x): - return (x >= box[1] and x < box[1] + box[3]) and \ - (y >= box[0] and y < box[0] + box[2]) - - disp.resize(*box) - for y, x in zip(range(10), range(10)): - is_in_box = in_box(y, x) - - point1 = (y, x) - self.assertEqual(is_in_box, point1 in disp) - - point2 = Fake() - point2.x = x - point2.y = y - self.assertEqual(is_in_box, point2 in disp) + for i in range(1000): + box = [int(randint(0, hei) * 0.2), 0, + int(randint(0, wid) * 0.2), 0] + box[1] = randint(box[0], hei) + box[1] = randint(box[0], hei) + + def in_box(y, x): + return (x >= box[1] and x < box[1] + box[3]) and \ + (y >= box[0] and y < box[0] + box[2]) + + disp.resize(*box) + for y, x in zip(range(10), range(10)): + is_in_box = in_box(y, x) + + point1 = (y, x) + self.assertEqual(is_in_box, point1 in disp) + + point2 = Fake() + point2.x = x + point2.y = y + self.assertEqual(is_in_box, point2 in disp) def test_click(self): self.disp.click = raise_ok -- cgit 1.4.1-2-gfad0