Mercurial > paraspace
diff paraspace/tests/dex_deptracker_test.py @ 127:650244dcdd82
Sort arrays in rules requested by dalvik
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Mon, 08 Aug 2011 22:34:11 +0800 |
parents | ff6f869273b7 |
children | 52749d91cc22 |
line wrap: on
line diff
--- a/paraspace/tests/dex_deptracker_test.py Mon Aug 08 17:26:05 2011 +0800 +++ b/paraspace/tests/dex_deptracker_test.py Mon Aug 08 22:34:11 2011 +0800 @@ -189,3 +189,31 @@ assert linked_sz == (unlinked_sz + 4) pass + + +def dex_sort_sorted_arrays_test(): + from paraspace.dex_deptracker import dex_sort_sorted_arrays + + _install_dexfile_4_deptracker() + + srcdir = os.path.dirname(__file__) + srcroot = os.path.join(srcdir, '..', '..') + datadir = os.path.join(srcroot, 'data') + helloworld_path = os.path.join(datadir, 'helloworld.dex') + + decls = prepare_dep_decls() + + hello_dex = dexfile.DEXFile.open(helloworld_path) + hello_linked = \ + dexfile.DEXFile_linked.build_dependencies(hello_dex, decls) + + first = hello_linked.typeIds.items[0] + last = hello_linked.typeIds.items[-1] + hello_linked.typeIds.items[0] = last + hello_linked.typeIds.items[-1] = first + + dex_sort_sorted_arrays(hello_linked) + + assert hello_linked.typeIds.items[0] == first + assert hello_linked.typeIds.items[-1] == last + pass