Author: laukpe
Date: Wed Nov 19 04:27:32 2008
New Revision: 1001

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

Log:
cleanup

Modified: trunk/src/robot/conf/settings.py
==============================================================================
--- trunk/src/robot/conf/settings.py    (original)
+++ trunk/src/robot/conf/settings.py    Wed Nov 19 04:27:32 2008
@@ -57,18 +57,19 @@
                   'MonitorWidth'     : ('monitorwidth', 78),
                   'MonitorColors'    : ('monitorcolors', 'ON') }

-    _deprecated = { 'colormonitor'   : 'monitorcolors' }
+    _deprecated = { 'colormonitor'   : 'monitorcolors',
+                    'transform'      : None }

     _env_opts = { 'SyslogFile'       : ('ROBOT_SYSLOG_FILE', 'NONE'),
                   'SyslogLevel'      : ('ROBOT_SYSLOG_LEVEL', 'INFO') }

-    def __init__(self, opts=None):
+    def __init__(self, opts={}):
         self._opts = {}
         self._errors = []
         self._cli_opts.update(self._extra_cli_opts)
-        if opts is not None:
-            self._process_cli_opts(opts)
-            self._process_env_opts()
+        self._process_deprecated_cli_opts(opts)
+        self._process_cli_opts(opts)
+        self._process_env_opts()

     def report_errors(self, syslog):
         for msg, level in self._errors:
@@ -78,7 +79,6 @@
         self._errors.append((msg, level))

     def _process_cli_opts(self, opts):
-        self._handle_deprecated_cli_opts(opts)
         for name, (cli_name, default) in self._cli_opts.items():
             try:
                 value = opts[cli_name]
@@ -88,18 +88,16 @@
                 value = default
             self[name] = value

-    def _handle_deprecated_cli_opts(self, opts):
+    def _process_deprecated_cli_opts(self, opts):
         for oldname, newname in self._deprecated.items():
-            try:
-                value = opts[oldname]
-                if value in [None, []]:
-                    raise KeyError
-            except KeyError:
+            if oldname not in opts or opts[oldname] in [None, []]:
                 continue
+            if newname:
+                self._add_error("Option '--%s' is deprecated. Use '--%s' "
+                                "instead." % (oldname, newname), 'WARN')
+                opts[newname] = opts[oldname]
             else:
-                msg = "Option '--%s' is deprecated. Use '--%s' instead."
-                self._add_error(msg % (oldname, newname), 'WARN')
-                opts[newname] = value
+ self._add_error("Option '--%s' has been removed." % oldname)

     def _process_env_opts(self):
         for name, (env_name, default) in self._env_opts.items():
@@ -130,9 +128,10 @@
             try:
                 value = int(value)
             except ValueError:
- self._add_error("Option '--%s' expected integer value but got '%s'. " - "Default value used instead." % (name.lower(), value))
-                value = name == 'MonitorWidth' and 78 or -1
+ self._add_error("Option '--%s' expected integer value but got "
+                                "'%s'. Default value used instead."
+                                % (name.lower(), value))
+                value = self._cli_opts[name][1]
         elif name == 'TagStatLink':
             value = self._process_tag_stat_link(value)
         elif name == 'RemoveKeywords':
@@ -196,12 +195,6 @@
raise DataError("Can't create %s file's parent directory '%s': %s" % (type_.lower(), path, utils.get_error_message()))

-    def __str__(self):
-        names = self._opts.keys()
-        names.sort()
-        ret = [ '%s: %s' % (name, self._opts[name]) for name in names ]
-        return '\n'.join(ret)
-
     def _process_tag_stat_link(self, value):
         ret = []
         for item in value:
@@ -213,7 +206,12 @@
             ret.append((tokens[0], ':'.join(tokens[1:-1]), tokens[-1]))
         return ret

-
+    def __str__(self):
+        names = self._opts.keys()
+        names.sort()
+        ret = [ '%s: %s' % (name, self._opts[name]) for name in names ]
+        return '\n'.join(ret)
+

 class RobotSettings(_BaseSettings):

@@ -224,16 +222,6 @@
                         'Listeners'     : ('listener', []),
                         'DebugFile'     : ('debugfile', 'NONE') }
     _optional_outputs = ['Log', 'Report', 'Summary', 'DebugFile']
-
-    def __init__(self, opts={}):
-        _BaseSettings.__init__(self, opts)
-        try:
-            if opts['transform'] is not None:
- self._add_error("Option '--transform' is ignored. Please use "
-                                "'--log' and '--report' to control what "
-                                "outputs to generate.")
-        except KeyError:
-            pass

     def is_rebot_needed(self):
return not ('NONE' == self['Log'] == self['Report'] == self['Summary'])

Reply via email to