mailr16391 - /branches/uf_redesign/test_suite/gui_tests/base_classes.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on May 22, 2012 - 15:48:
Author: bugman
Date: Tue May 22 15:48:27 2012
New Revision: 16391

URL: http://svn.gna.org/viewcvs/relax?rev=16391&view=rev
Log:
The GUI test _execute_uf() base method now handles non-keyword args, by 
converting them to keyword args.


Modified:
    branches/uf_redesign/test_suite/gui_tests/base_classes.py

Modified: branches/uf_redesign/test_suite/gui_tests/base_classes.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/uf_redesign/test_suite/gui_tests/base_classes.py?rev=16391&r1=16390&r2=16391&view=diff
==============================================================================
--- branches/uf_redesign/test_suite/gui_tests/base_classes.py (original)
+++ branches/uf_redesign/test_suite/gui_tests/base_classes.py Tue May 22 
15:48:27 2012
@@ -69,19 +69,38 @@
             self._gui_launch = True
 
 
-    def _execute_uf(self, uf_name=None, **kargs):
+    def _execute_uf(self, *args, **kargs):
         """Execute the given user function.
 
         @keyword uf_name:   The name of the user function.
         @type uf_name:      str
         """
 
+        # Checks.
+        if 'uf_name' not in kargs:
+            raise RelaxError("The user function name argument 'uf_name' has 
not been supplied.")
+
+        # Process the user function name.
+        uf_name = kargs.pop('uf_name')
+
         # Create and store a wizard instance to be used in all user function 
pages (if needed).
         if not hasattr(self, '_wizard'):
             self._wizard = Wiz_window(self.app.gui)
 
         # Get the user function data object.
         uf_data = uf_info.get_uf(uf_name)
+
+        # Convert the args into keyword args.
+        for i in range(len(args)):
+            # The keyword name for this arg.
+            name = uf_data.kargs[i]['name']
+
+            # Check.
+            if name in kargs:
+                raise RelaxError("The argument '%s' clashes with the %s 
keyword argument of '%s'." % (arg[i], name, kargs[name]))
+
+            # Set the keyword arg.
+            kargs[name] = args[i]
 
         # Merge the file and directory args, as needed.
         for i in range(len(uf_data.kargs)):




Related Messages


Powered by MHonArc, Updated Tue May 22 16:00:02 2012