[POS-commit] r111 - Kiwi2/tests

Lorenzo Gil Sanchez lgs at async.com.br
Thu Mar 10 19:38:28 BRT 2005


Author: lgs
Date: 2005-03-10 19:38:26 -0300 (Thu, 10 Mar 2005)
New Revision: 111

Added:
   Kiwi2/tests/test_List.py
Modified:
   Kiwi2/tests/test_BaseView.py
   Kiwi2/tests/test_Delegate.py
Log:
Adapted the tests to work with the new changes

Modified: Kiwi2/tests/test_BaseView.py
===================================================================
--- Kiwi2/tests/test_BaseView.py	2005-03-10 22:37:45 UTC (rev 110)
+++ Kiwi2/tests/test_BaseView.py	2005-03-10 22:38:26 UTC (rev 111)
@@ -5,6 +5,7 @@
 from Kiwi2.Views import BaseView
 from Kiwi2.Controllers import BaseController
 from Kiwi2.initgtk import gtk
+from Kiwi2 import utils
 from gtk import keysyms
 
 from unittest import TestCase, TestSuite, makeSuite, TextTestRunner
@@ -14,7 +15,7 @@
     widgets = [ "vbox", "label" ]
     def __init__(self):
         self.build_ui()
-        BaseView.__init__(self)
+        BaseView.__init__(self, toplevel_name='win')
 
     def build_ui(self):
         self.win = gtk.Window()
@@ -54,10 +55,10 @@
         self.win = gtk.Window()
         self.label = gtk.Label("foobar!")
         self.win.add(self.label)
-        BaseView.__init__(self)
+        BaseView.__init__(self, toplevel=self.win)
         BaseController.__init__(self, view=self)
-        self.view.set_foreground(self.label, "#CC99FF")
-        self.view.set_background(self.win, "#001100")
+        utils.set_foreground(self.label, "#CC99FF")
+        utils.set_background(self.win, "#001100")
 
     def run(self, parent):
         self.show_all(parent)
@@ -118,9 +119,9 @@
         self.foo.view.button.clicked()
         self.foo.bar.run(self.foo.view)
         refresh_gui(self.delay)
-        color = self.foo.bar.view.get_background(self.foo.bar.win)
+        color = utils.get_background(self.foo.bar.win)
         self.assertEqual(color, "#001100")
-        color = self.foo.bar.view.get_foreground(self.foo.bar.label)
+        color = utils.get_foreground(self.foo.bar.label)
         self.assertEqual(color, "#CC99FF")
 
 

Modified: Kiwi2/tests/test_Delegate.py
===================================================================
--- Kiwi2/tests/test_Delegate.py	2005-03-10 22:37:45 UTC (rev 110)
+++ Kiwi2/tests/test_Delegate.py	2005-03-10 22:38:26 UTC (rev 111)
@@ -41,7 +41,8 @@
         v.add(self.bar)
         self.win.add(v)
         self.x = self.y = "NOOO"
-        Delegates.Delegate.__init__(self, delete_handler=quit_if_last)
+        Delegates.Delegate.__init__(self, toplevel=self.win,
+                                    delete_handler=quit_if_last)
 
     def on_foo__clicked(self, *args):
         self.x = "FOO in Foo"
@@ -72,4 +73,4 @@
     suite = TestSuite()
     suite.addTest(makeSuite(DelegateTest))
     TextTestRunner(verbosity=2).run(suite)
-    
\ No newline at end of file
+    

Added: Kiwi2/tests/test_List.py
===================================================================
--- Kiwi2/tests/test_List.py	2005-03-10 22:37:45 UTC (rev 110)
+++ Kiwi2/tests/test_List.py	2005-03-10 22:38:26 UTC (rev 111)
@@ -0,0 +1,74 @@
+#!/usr/bin/env python
+
+from utils import refresh_gui
+
+from Kiwi2.Widgets.List import List, Column
+from Kiwi2.initgtk import gtk, quit_if_last
+
+from unittest import TestCase, TestSuite, makeSuite, TextTestRunner
+import sys
+
+# this is the delay between each refresh of the screen in seconds
+delay = 0
+
+class ListTest(TestCase):
+
+    def setUp(self):
+        self.win = gtk.Window()
+        self.win.set_default_size(400, 400)
+
+    def tearDown(self):
+        self.win.destroy()
+        del self.win
+
+    def testEmptyList(self):
+        global delay
+        mylist = List()
+        self.win.add(mylist)
+        self.win.show_all()
+        refresh_gui(delay)
+
+    def testOneColumn(self):
+        global delay
+        # column's attribute can not contain spaces
+        self.assertRaises(AttributeError, Column, 'test column')
+        
+        mylist = List(Column('test_column'))
+        self.win.add(mylist)
+        self.win.show_all()
+        refresh_gui(delay)
+
+        self.assertEqual(1, len(mylist.treeview.get_columns()))
+        
+
+    def testAddingOneInstance(self):
+        global delay
+
+        mylist = List([Column('name'), Column('age')])
+        self.win.add(mylist)
+        self.win.show_all()
+        refresh_gui(delay)
+
+        class Person:
+            def __init__(self, name, age):
+                self.name, self.age = name, age
+                
+        person = Person('henrique', 21)
+        mylist.add_instance(person)
+
+        refresh_gui(delay)
+
+        # usually you don't use the model directly, but tests are all about
+        # breaking APIs, right?
+        self.assertEqual(mylist.model[0][0], person)
+        self.assertEqual(mylist.model[0][0].name, 'henrique')
+        self.assertEqual(mylist.model[0][0].age, 21)
+    
+if __name__ == '__main__':
+    import sys
+    if len(sys.argv) == 2:
+        delay = float(sys.argv[1])
+    suite = TestSuite()
+    suite.addTest(makeSuite(ListTest))
+    TextTestRunner(verbosity=2).run(suite)
+    


Property changes on: Kiwi2/tests/test_List.py
___________________________________________________________________
Name: svn:executable
   + *



More information about the POS-commit mailing list