2 new revisions:
Revision: 5c84d78d4f92
Author: Robot Framework Developers ([email protected])
Date: Wed Feb 15 04:37:12 2012
Log: env vars: clean-up jython workaround
http://code.google.com/p/robotframework/source/detail?r=5c84d78d4f92
Revision: 3aec1d069e02
Author: Robot Framework Developers ([email protected])
Date: Wed Feb 15 04:42:59 2012
Log: Log Environment Variables: Fixed non-ASCII env var values with
Jython....
http://code.google.com/p/robotframework/source/detail?r=3aec1d069e02
==============================================================================
Revision: 5c84d78d4f92
Author: Robot Framework Developers ([email protected])
Date: Wed Feb 15 04:37:12 2012
Log: env vars: clean-up jython workaround
http://code.google.com/p/robotframework/source/detail?r=5c84d78d4f92
Modified:
/src/robot/utils/robotenv.py
=======================================
--- /src/robot/utils/robotenv.py Wed Feb 15 03:58:04 2012
+++ /src/robot/utils/robotenv.py Wed Feb 15 04:37:12 2012
@@ -20,11 +20,9 @@
def get_env_var(name, default=None):
- if sys.platform.startswith('java'):
- from java.lang import System
- value = System.getenv(unic(name))
- if value is not None:
- return value
+ value = _get_env_var_from_java(name)
+ if value is not None:
+ return value
try:
value = os.environ[_encode(name)]
except KeyError:
@@ -36,12 +34,21 @@
os.environ[_encode(name)] = _encode(value)
def del_env_var(name):
+ # cannot use os.environ.pop() due to http://bugs.python.org/issue1287
value = get_env_var(name)
if value is not None:
- # cannot use pop() due to http://bugs.python.org/issue1287
del os.environ[_encode(name)]
return value
+
+if sys.platform.startswith('java'):
+ from java.lang import System
+ def _get_env_var_from_java(name):
+ return System.getenv(unic(name))
+else:
+ def _get_env_var_from_java(name):
+ return None
+
def _encode(var):
if isinstance(var, str):
return var
==============================================================================
Revision: 3aec1d069e02
Author: Robot Framework Developers ([email protected])
Date: Wed Feb 15 04:42:59 2012
Log: Log Environment Variables: Fixed non-ASCII env var values with
Jython. Names
are still borken but fixing them requires a bit more work and also tests.
http://code.google.com/p/robotframework/source/detail?r=3aec1d069e02
Modified:
/src/robot/libraries/OperatingSystem.py
=======================================
--- /src/robot/libraries/OperatingSystem.py Wed Feb 15 03:44:44 2012
+++ /src/robot/libraries/OperatingSystem.py Wed Feb 15 04:42:59 2012
@@ -835,8 +835,8 @@
def log_environment_variables(self, level='INFO'):
"""Logs all environment variables with given log level."""
for name in sorted(os.environ, key=lambda s: s.lower()):
- value = decode_from_system(os.environ[name])
- self._log('%s = %s' % (decode_from_system(name), value), level)
+ name = decode_from_system(name)
+ self._log('%s = %s' % (name, get_env_var(name)), level)
# Path