From 7183abd2f2d455b425ffaf94ea5217ae168b916d Mon Sep 17 00:00:00 2001 From: Tim McNamara Date: Sun, 15 Aug 2010 20:41:59 +0000 Subject: tests for toolbutton identification added --- diff --git a/Experior.Activity/tests/test_widgetIdentifier_identification.py b/Experior.Activity/tests/test_widgetIdentifier_identification.py index d00f4c1..1a570f1 100644 --- a/Experior.Activity/tests/test_widgetIdentifier_identification.py +++ b/Experior.Activity/tests/test_widgetIdentifier_identification.py @@ -28,3 +28,35 @@ def test_button_id(): def test_button_id_sub(): assert B.getIdentifierSub() == 'Stop' + +def test_toolbutton_no_label(): + tb = gtk.ToolButton('stock_id_1') + assert ToolButtonIdentifier(tb).getIdentifier() == 'stock_id_1' + +def test_toolbutton_with_label(): + tb = gtk.ToolButton('stock_id_2') + tb.set_label('Start') + assert ToolButtonIdentifier(tb).getIdentifier() == 'Start' + +def test_toolbutton_with_label_widget(): + tb = gtk.ToolButton('stock_id_3') + label = gtk.Label('Starting now') + tb.set_label_widget(label) + assert ToolButtonIdentifier(tb).getIdentifier() == 'Starting now' + +def test_toolbutton_with_icon_name(): + tb = gtk.ToolButton('stock_id_2') + tb.set_icon_name('Start') + assert ToolButtonIdentifier(tb).getIdentifier() == 'Start' + +def test_toolbutton_with_icon_widget(): + tb = gtk.ToolButton('stock_id_3') + ico = gtk.Label('Starting now') + tb.set_icon_widget(ico) + assert ToolButtonIdentifier(tb).getIdentifier() == 'Starting now' + +def test_toolbutton_label_priority(): + tb = gtk.ToolButton('stock_id') + tb.set_label('Start') + tb.set_icon_name('Stop') + assert ToolButtonIdentifier(tb).getIdentifier() == 'Start' diff --git a/Experior.Activity/widgetIdentifier.py b/Experior.Activity/widgetIdentifier.py index 9c73605..d114d38 100755 --- a/Experior.Activity/widgetIdentifier.py +++ b/Experior.Activity/widgetIdentifier.py @@ -63,6 +63,10 @@ class WidgetIdentifier: "GtkColorButton", ""] self.dontWantPrefixes = ["Gtk", "sugar+graphics"] + +# self.dontWant = ['',] +# self.dontWantPrefixes = ["",] + self.setWidget(widget) def setWidget(self, widget): @@ -151,13 +155,10 @@ class WidgetIdentifier: class ButtonIdentifier(WidgetIdentifier): def getIdentifierSub(self): - ident = None - widget = self._widget - - if hasattr(widget, "get_label"): - ident = widget.get_label() - - return ident + try: + return self._widget.get_label() + except AttributeError: + return None # class ToolButtonIdentifier(WidgetIdentifier): class ToolButtonIdentifier(ButtonIdentifier): -- cgit v0.9.1