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)):