Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim McNamara <code@timmcnamara.co.nz>2010-08-15 20:41:59 (GMT)
committer Tim McNamara <code@timmcnamara.co.nz>2010-08-15 20:41:59 (GMT)
commit7183abd2f2d455b425ffaf94ea5217ae168b916d (patch)
treee7628cf995242f643223fa9af39449b92877e083
parent8ed4d508dfdbb537dff7e2ec0293b7b6ac92ce05 (diff)
tests for toolbutton identification added
-rw-r--r--Experior.Activity/tests/test_widgetIdentifier_identification.py32
-rwxr-xr-xExperior.Activity/widgetIdentifier.py15
2 files changed, 40 insertions, 7 deletions
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):