summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPaul Pogonyshev <pogonyshev@gmx.net>2008-06-22 20:17:18 +0000
committerPaul Pogonyshev <paulp@src.gnome.org>2008-06-22 20:17:18 +0000
commitde8384cdd547ffa3d5467501da00e2eb01b5aabd (patch)
tree38514b15bbda9ec783487f571ea4b46f5bd2c140 /tests
parentcc57280803853436a82ae4c925d22efe5223d6cd (diff)
downloadpygtk-de8384cdd547ffa3d5467501da00e2eb01b5aabd.tar.gz
Check that argument is a subclass of gtk.MenuItem or gtk.ToolItem
2008-06-22 Paul Pogonyshev <pogonyshev@gmx.net> * gtk/gtk.override (_wrap_gtk_action_set_menu_item_type) (_wrap_gtk_action_set_tool_item_type): Check that argument is a subclass of gtk.MenuItem or gtk.ToolItem correspondingly (bug #533644). * tests/test_actiongroup.py (ActionTest.testSetItemClasses): New test for the added type check. svn path=/trunk/; revision=2997
Diffstat (limited to 'tests')
-rw-r--r--tests/test_actiongroup.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/test_actiongroup.py b/tests/test_actiongroup.py
index f19de1b4..28228912 100644
--- a/tests/test_actiongroup.py
+++ b/tests/test_actiongroup.py
@@ -145,6 +145,28 @@ class ActionTest(unittest.TestCase):
myaction = MyAction()
myaction.activate()
self.assertEqual(myaction._activated, True)
+
+ def testSetItemClasses(self):
+
+ class MyAction(gtk.Action):
+ def __init__(self):
+ gtk.Action.__init__(self, 'name', 'label', None, None)
+
+ def set_menu_item_type(type):
+ MyAction.set_menu_item_type(type)
+
+ def set_tool_item_type(type):
+ MyAction.set_tool_item_type(type)
+
+ self.assertRaises(TypeError, lambda: set_menu_item_type(None))
+ self.assertRaises(TypeError, lambda: set_menu_item_type(gtk.Button))
+ set_menu_item_type(gtk.ImageMenuItem)
+ self.assert_(isinstance(MyAction().create_menu_item(), gtk.ImageMenuItem))
+
+ self.assertRaises(TypeError, lambda: set_tool_item_type(None))
+ self.assertRaises(TypeError, lambda: set_tool_item_type(gtk.Button))
+ set_tool_item_type(gtk.SeparatorToolItem)
+ self.assert_(isinstance(MyAction().create_tool_item(), gtk.SeparatorToolItem))
if __name__ == '__main__':