From 9469f650946418a048fc951124319f2a74f62bc1 Mon Sep 17 00:00:00 2001 From: Vadim Pisarevsky Date: Wed, 25 Jan 2012 13:32:48 +0000 Subject: [PATCH] added tests on cv.CreateImage() (thanks to mythsmith). --- modules/python/test/ticket_6.py | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/modules/python/test/ticket_6.py b/modules/python/test/ticket_6.py index 71534317c..e6cc62f37 100644 --- a/modules/python/test/ticket_6.py +++ b/modules/python/test/ticket_6.py @@ -12,5 +12,65 @@ class TestLoadImage(unittest.TestCase): cvim = cv.LoadImage("large.jpg") self.assert_(len(pilim.tostring()) == len(cvim.tostring())) +class Creating(unittest.TestCase): + size=(640, 480) + repeat=100 + def test_0_Create(self): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cnt=cv.CountNonZero(image) + self.assertEqual(cnt, 0, msg="Created image is not black. CountNonZero=%i" % cnt) + + def test_2_CreateRepeat(self): + cnt=0 + for i in range(self.repeat): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cnt+=cv.CountNonZero(image) + self.assertEqual(cnt, 0, msg="Created images are not black. Mean CountNonZero=%.3f" % (1.*cnt/self.repeat)) + + def test_2a_MemCreated(self): + cnt=0 + v=[] + for i in range(self.repeat): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cv.FillPoly(image, [[(0, 0), (0, 100), (100, 0)]], 0) + cnt+=cv.CountNonZero(image) + v.append(image) + self.assertEqual(cnt, 0, msg="Memorized images are not black. Mean CountNonZero=%.3f" % (1.*cnt/self.repeat)) + + def test_3_tostirng(self): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + image.tostring() + cnt=cv.CountNonZero(image) + self.assertEqual(cnt, 0, msg="After tostring(): CountNonZero=%i" % cnt) + + def test_40_tostringRepeat(self): + cnt=0 + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cv.Set(image, cv.Scalar(0,0,0,0)) + for i in range(self.repeat*100): + image.tostring() + cnt=cv.CountNonZero(image) + self.assertEqual(cnt, 0, msg="Repeating tostring(): Mean CountNonZero=%.3f" % (1.*cnt/self.repeat)) + + def test_41_CreateToStringRepeat(self): + cnt=0 + for i in range(self.repeat*100): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cv.Set(image, cv.Scalar(0,0,0,0)) + image.tostring() + cnt+=cv.CountNonZero(image) + self.assertEqual(cnt, 0, msg="Repeating create and tostring(): Mean CountNonZero=%.3f" % (1.*cnt/self.repeat)) + + def test_4a_MemCreatedToString(self): + cnt=0 + v=[] + for i in range(self.repeat): + image = cv.CreateImage(self.size, cv.IPL_DEPTH_8U, 1) + cv.Set(image, cv.Scalar(0,0,0,0)) + image.tostring() + cnt+=cv.CountNonZero(image) + v.append(image) + self.assertEqual(cnt, 0, msg="Repeating and memorizing after tostring(): Mean CountNonZero=%.3f" % (1.*cnt/self.repeat)) + if __name__ == '__main__': unittest.main()