diff options
| author | Olivier Dony <odo@openerp.com> | 2010-06-01 10:28:29 +0200 |
|---|---|---|
| committer | Olivier Dony <odo@openerp.com> | 2010-06-01 10:28:29 +0200 |
| commit | c3397574ffcc7c9411deeeb34d1bb1f407cd87c4 (patch) | |
| tree | 474e4d01c9a2aeba47da75a8142e2049c3711b17 /bin/tools/convert.py | |
| parent | b020dc836345cadebb2e97ed883cb129f798e386 (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.py | 13 |
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' \ |
