comparison paraspace/tests/dexfile_test.py @ 60:f295d82646e0

testcase for restore_dependencies()
author Thinker K.F. Li <thinker@codemud.net>
date Mon, 27 Jun 2011 18:09:31 +0800
parents 08c220217076
children 3e34c7d33182
comparison
equal deleted inserted replaced
59:08c220217076 60:f295d82646e0
298 update_offset(dex, all_dep_decls) 298 update_offset(dex, all_dep_decls)
299 299
300 assert dex.typeLists.items[0].value.data_offset == offset0 300 assert dex.typeLists.items[0].value.data_offset == offset0
301 assert dex.typeLists.items[1].value.data_offset == offset1 301 assert dex.typeLists.items[1].value.data_offset == offset1
302 pass 302 pass
303
304
305 def restore_dependencies_test():
306 from paraspace.dex_deptracker import collect_all_dep_decls
307 from paraspace.dex_deptracker import build_dependencies
308 from paraspace.dex_deptracker import _install_markers
309 from paraspace.dex_deptracker import _patch_dex_type_markers
310 from paraspace.dex_deptracker import restore_dependencies
311
312 _install_dexfile_4_deptracker()
313
314 all_dep_decls = collect_all_dep_decls()
315 _install_markers(all_dep_decls)
316 _patch_dex_type_markers(all_dep_decls)
317
318 srcdir = os.path.dirname(__file__)
319 srcroot = os.path.join(srcdir, '..', '..')
320 testdatapath = os.path.join(srcroot, 'data', 'testdata1.dex')
321 dex = dexfile.DEXFile.open(testdatapath)
322
323 build_dependencies(dex, all_dep_decls)
324
325 restore_dependencies(dex, all_dep_decls)
326
327 stringid = dex.stringIds.items[0]
328 assert isinstance(stringid.stringDataOff, int)
329 pass
330