summaryrefslogtreecommitdiff
path: root/bin/tools/convert.py
diff options
context:
space:
mode:
authorOlivier Dony <odo@openerp.com>2010-06-01 10:28:29 +0200
committerOlivier Dony <odo@openerp.com>2010-06-01 10:28:29 +0200
commitc3397574ffcc7c9411deeeb34d1bb1f407cd87c4 (patch)
tree474e4d01c9a2aeba47da75a8142e2049c3711b17 /bin/tools/convert.py
parentb020dc836345cadebb2e97ed883cb129f798e386 (diff)
[FIX] continuing implementation of safe_eval: fixed some evaluation contexts
bzr revid: odo@openerp.com-20100601082829-n6iqqm8f0wuscvtm
Diffstat (limited to 'bin/tools/convert.py')
-rw-r--r--bin/tools/convert.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/bin/tools/convert.py b/bin/tools/convert.py
index 5fb20530408..7f318b377f2 100644
--- a/bin/tools/convert.py
+++ b/bin/tools/convert.py
@@ -404,7 +404,8 @@ form: module.record_id""" % (xml_id,)
def ref(str_id):
return self.id_get(cr, None, str_id)
- context = eval(context)
+
+ context=eval(context, locals_dict=locals())
# domain = eval(domain) # XXX need to test this line -> uid, active_id, active_ids, ...
res = {
@@ -652,14 +653,14 @@ form: module.record_id""" % (xml_id,)
if key in brrec:
return brrec[key]
return dict.__getitem__(self2, key)
- globals = d()
- globals['floatEqual'] = self._assert_equals
- globals['ref'] = ref
- globals['_ref'] = ref
+ globals_dict = d()
+ globals_dict['floatEqual'] = self._assert_equals
+ globals_dict['ref'] = ref
+ globals_dict['_ref'] = ref
for test in rec.findall('./test'):
f_expr = test.get("expr",'').encode('utf-8')
expected_value = _eval_xml(self, test, self.pool, cr, uid, self.idref, context=context) or True
- expression_value = eval(f_expr, globals)
+ expression_value = eval(f_expr, globals_dict, nocopy=True)
if expression_value != expected_value: # assertion failed
self.assert_report.record_assertion(False, severity)
msg = 'assertion "%s" failed!\n' \