summaryrefslogtreecommitdiffstats
path: root/funcweb
diff options
context:
space:
mode:
authormakkalot <makkalot@gmail.com>2008-06-12 19:42:43 +0300
committermakkalot <makkalot@gmail.com>2008-06-12 19:42:43 +0300
commit588679c610f0f93f40fd2bfa9c6ce01a6223e778 (patch)
tree3f1d60440cb33c1a308e53d39b38103fedd71209 /funcweb
parente21ab672adc4076ef3e9068db5420787802556b4 (diff)
downloadthird_party-func-588679c610f0f93f40fd2bfa9c6ce01a6223e778.tar.gz
third_party-func-588679c610f0f93f40fd2bfa9c6ce01a6223e778.tar.xz
third_party-func-588679c610f0f93f40fd2bfa9c6ce01a6223e778.zip
returning back a WidgetList object
Diffstat (limited to 'funcweb')
-rw-r--r--funcweb/funcweb/tests/test_widget_automation.py13
-rw-r--r--funcweb/funcweb/widget_automation.py19
2 files changed, 28 insertions, 4 deletions
diff --git a/funcweb/funcweb/tests/test_widget_automation.py b/funcweb/funcweb/tests/test_widget_automation.py
index 0adbc1f..f841c43 100644
--- a/funcweb/funcweb/tests/test_widget_automation.py
+++ b/funcweb/funcweb/tests/test_widget_automation.py
@@ -20,7 +20,7 @@ class TestWidgetListFactory(unittest.TestCase):
compare_with = self.get_test_default_args()
widget_list=self.widget_factory.get_widgetlist()
- print "The widget list is like :",widget_list
+ #print "The widget list is like :",widget_list
for argument_name,argument_options in compare_with.iteritems():
assert widget_list.has_key(argument_name) == True
@@ -36,6 +36,15 @@ class TestWidgetListFactory(unittest.TestCase):
assert argument_options['options'] == getattr(widget_list[argument_name],"options")
#that should be enough
+ def test_get_widgetlist_object(self):
+ compare_with = self.get_test_default_args()
+ widget_list_object = self.widget_factory.get_widgetlist_object()
+
+ #print widget_list_object
+
+ for argument_name in compare_with.keys():
+ assert hasattr(widget_list_object,argument_name) == True
+ #print getattr(widget_list_object,argument_name)
def get_test_default_args(self):
return {
@@ -89,5 +98,3 @@ class TestWidgetListFactory(unittest.TestCase):
}
- def get_test_specialized_case(self):
- pass
diff --git a/funcweb/funcweb/widget_automation.py b/funcweb/funcweb/widget_automation.py
index 4d6d665..36d8a5c 100644
--- a/funcweb/funcweb/widget_automation.py
+++ b/funcweb/funcweb/widget_automation.py
@@ -121,8 +121,25 @@ class WidgetListFactory(object):
def get_widgetlist(self):
"""
- Return the final list back
+ Return back a dictionay with argument_name : input_widget
+ pairs. That method may not be called directly,get_widgetlist_object
+ is better for using in web interface
"""
#compute the list
self.__add_general_widget()
return self.__widget_list
+
+ def get_widgetlist_object(self):
+ """
+ Method return back the final widgetlist object
+ which is turbogears.widgets.WidgetsList
+ """
+ if len(self.__widget_list.keys())==0:
+ self.__add_general_widget() #not very efficient
+
+ widget_list_object = widgets.WidgetsList()
+ for name,input_widget in self.__widget_list.iteritems():
+ setattr(widget_list_object,name,input_widget)
+
+ #get the object back
+ return widget_list_object