# HG changeset patch # User Thinker K.F. Li # Date 1306935067 -28800 # Node ID 265f39947b36c90fc9dba3e592468e46089a0b57 # Parent 6008b9a9d33ec375e3f1844af86c2b5456a97e89 Unit test for dependencies of dexfile.py diff -r 6008b9a9d33e -r 265f39947b36 paraspace/tests/dexfile_test.py --- a/paraspace/tests/dexfile_test.py Wed Jun 01 20:48:35 2011 +0800 +++ b/paraspace/tests/dexfile_test.py Wed Jun 01 21:31:07 2011 +0800 @@ -24,3 +24,20 @@ pass +def dependencies_test(): + srcdir = os.path.dirname(__file__) + srcroot = os.path.join(srcdir, '..', '..') + testdatapath = os.path.join(srcroot, 'data', 'testdata1.dex') + dex = dexfile.DEXFile.open(testdatapath) + + deps = dexfile.collect_dependencies() + assert deps['_DEX_AnnotationItem.typeIdx'][0] == dexfile.depend_idx + assert deps['_DEX_AnnotationItem.typeIdx'][1] == 'DEXFile.typeIds' + assert deps['_DEX_FieldId.typeIdx'][0] == dexfile.depend_idx + assert deps['_DEX_FieldId.typeIdx'][1] == 'DEXFile.typeIds' + assert deps['_DEX_ClassDef.staticValuesOff'][0] == dexfile.depend_off + assert deps['_DEX_ClassDef.staticValuesOff'][1] == '_DEX_EncodedArrayItem' + assert deps['_DEX_Try.handlerOff'][0] == dexfile.depend_off_rel + assert deps['_DEX_Try.handlerOff'][1] == '_DEX_Catch' + assert deps['_DEX_Try.handlerOff'][2] == None + pass