From d51141d577f90f297fb46327d8120f3cdd45b4fd Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Mon, 4 Jul 2005 13:07:10 +0000 Subject: Use pyg_param_gvalue_from_pyobject in gobject.new, fixes unichar * gobject/gobjectmodule.c: (pyg_object_new): * tests/test_conversion.py: Use pyg_param_gvalue_from_pyobject in gobject.new, fixes unichar parameters specified from the constructor. Added unittests. --- tests/test_conversion.py | 108 ++++++++++++++++++++++++++--------------------- 1 file changed, 61 insertions(+), 47 deletions(-) (limited to 'tests/test_conversion.py') diff --git a/tests/test_conversion.py b/tests/test_conversion.py index e621e1f..72dc5c4 100644 --- a/tests/test_conversion.py +++ b/tests/test_conversion.py @@ -2,58 +2,72 @@ import unittest -from common import gtk +from common import gtk, gobject class Tests(unittest.TestCase): - def testUnicharArg(self): - """ Test unichar values when used as arguments. """ - - entry = gtk.Entry() - for valid_value in ['a', u'b', u'\ufff0', u'\ufff0'.encode()]: - entry.set_invisible_char(valid_value) - assert entry.get_invisible_char() == unicode(valid_value) - - for invalid_value in ['12', None, 1, '']: - try: - entry.set_invisible_char(invalid_value) - except: - pass - else: - raise AssertionError('exception not raised on invalid value w/ set_invisible_char: %s' - % invalid_value) + def testUnicharArg(self): + """ Test unichar values when used as arguments. """ - def testUnicharProperty(self): - """ Test unichar values when used as properties. """ + entry = gtk.Entry() + for valid_value in ['a', u'b', u'\ufff0', u'\ufff0'.encode()]: + entry.set_invisible_char(valid_value) + self.assertEqual(entry.get_invisible_char(), + unicode(valid_value), + valid_value) + + for invalid_value in ('12', None, 1, ''): + try: + entry.set_invisible_char(invalid_value) + except: + pass + else: + raise AssertionError( + 'exception not raised on invalid value w/ ' + 'set_invisible_char: %s' % invalid_value) + + + def testUnicharProperty(self): + """ Test unichar values when used as properties. """ + + entry = gtk.Entry() + for valid_value in ['a', u'b', u'\ufff0', u'\ufff0'.encode()]: + entry.set_property('invisible_char', valid_value) + self.assertEqual(entry.get_property('invisible_char'), + valid_value, valid_value) + + for invalid_value in ('12', None, 1, ''): + try: + entry.set_property('invisible_char', invalid_value) + except TypeError: + pass + else: + raise AssertionError( + 'exception not raised on invalid value w/ ' + 'set_invisible_char: %s' % invalid_value) + + def testUnicharConstructor(self): + for valid_value in ['a', u'b', u'\ufff0', u'\ufff0'.encode()]: + entry = gobject.new(gtk.Entry, invisible_char=valid_value) + self.assertEqual(entry.get_property('invisible_char'), + valid_value, valid_value) - entry = gtk.Entry() - for valid_value in ['a', u'b', u'\ufff0', u'\ufff0'.encode()]: - entry.set_property('invisible_char', valid_value) - assert entry.get_property('invisible_char') == valid_value - - for invalid_value in ['12', None, 1, '']: - try: - entry.set_property('invisible_char', invalid_value) - except: - pass - else: - raise AssertionError('exception not raised on invalid value w/ set_property: %s' - % invalid_value) - - def testColorCreation(self): - """ Test GdkColor creation """ - - c = gtk.gdk.Color(1, 2, 3) - assert c.red == 1 and c.green == 2 and c.blue == 3 - - c = gtk.gdk.Color(pixel = 0xffff) - assert c.pixel == 0xffff - - c = gtk.gdk.Color(pixel = 0xffffL) - assert c.pixel == 0xffff - - c = gtk.gdk.Color(pixel = 0xffffffffL) - assert c.pixel == 0xffffffffL + def testColorCreation(self): + """ Test GdkColor creation """ + + c = gtk.gdk.Color(1, 2, 3) + self.assertEqual(c.red, 1) + self.assertEqual(c.green, 2) + self.assertEqual(c.blue, 3) + + c = gtk.gdk.Color(pixel=0xffff) + self.assertEqual(c.pixel, 0xffff) + + c = gtk.gdk.Color(pixel=0xffffL) + self.assertEqual(c.pixel, 0xffff) + + c = gtk.gdk.Color(pixel=0xffffffffL) + self.assertEqual(c.pixel, 0xffffffffL) if __name__ == '__main__': unittest.main() -- cgit