Author: laukpe
Date: Mon Nov 24 05:09:00 2008
New Revision: 1084

Modified:
   trunk/src/robot/conf/settings.py
   trunk/src/robot/variables/__init__.py

Log:
1) Support for args to variable files from CLI (issue 105), 2) Handle errors in taking variable files into use from CLI gracefully

Modified: trunk/src/robot/conf/settings.py
==============================================================================
--- trunk/src/robot/conf/settings.py    (original)
+++ trunk/src/robot/conf/settings.py    Mon Nov 24 05:09:00 2008
@@ -126,7 +126,7 @@
             value = utils.normpath(value)
         elif name in ['SplitOutputs', 'SuiteStatLevel', 'MonitorWidth']:
             value = self._convert_to_integer(name, value)
-        elif name in ['Listeners']:
+        elif name in ['Listeners', 'VariableFiles']:
             value = [ self._split_args_from_name(item) for item in value ]
         elif name == 'TagStatLink':
             value = self._process_tag_stat_link(value)

Modified: trunk/src/robot/variables/__init__.py
==============================================================================
--- trunk/src/robot/variables/__init__.py       (original)
+++ trunk/src/robot/variables/__init__.py       Mon Nov 24 05:09:00 2008
@@ -47,8 +47,13 @@
         GLOBAL_VARIABLES[name] = value

 def _set_cli_vars(settings, syslog):
-    for varfile in settings['VariableFiles']:
-        GLOBAL_VARIABLES.set_from_file(varfile, [], syslog)
+    for path, args in settings['VariableFiles']:
+        try:
+            GLOBAL_VARIABLES.set_from_file(path, args, syslog)
+        except:
+            msg, details = utils.get_error_details()
+            syslog.error(msg)
+            syslog.info(details)
     for varstr in settings['Variables']:
         try:
             name, value = varstr.split(':', 1)

Reply via email to