mirror of
https://github.com/ivellioscolin/pykd.git
synced 2025-04-20 03:23:23 +08:00
[0.1.x] + test of nested structure
git-svn-id: https://pykd.svn.codeplex.com/svn@73296 9b283d60-5439-405e-af05-b73fd8c4d996
This commit is contained in:
parent
858c5f2492
commit
7532741252
@ -132,6 +132,10 @@ class TypeInfoTest( unittest.TestCase ):
|
|||||||
ti = target.module.type("classChild")
|
ti = target.module.type("classChild")
|
||||||
self.assertRaises( pykd.BaseException, ti.deref );
|
self.assertRaises( pykd.BaseException, ti.deref );
|
||||||
|
|
||||||
|
def testNestedStruct( self ):
|
||||||
|
ti = target.module.type("StructWithNested")
|
||||||
|
self.assertTrue( hasattr( ti, "m_field" ) )
|
||||||
|
self.assertFalse( hasattr( ti, "m_nestedFiled" ) )
|
||||||
|
|
||||||
|
ti = target.module.type("StructWithNested::Nested")
|
||||||
|
self.assertTrue( hasattr( ti, "m_nestedFiled" ) )
|
||||||
|
@ -204,6 +204,16 @@ struct {
|
|||||||
int m_fieldOfUnNamed;
|
int m_fieldOfUnNamed;
|
||||||
}g_unNamedStruct;
|
}g_unNamedStruct;
|
||||||
|
|
||||||
|
struct StructWithNested {
|
||||||
|
struct Nested {
|
||||||
|
int m_nestedFiled;
|
||||||
|
};
|
||||||
|
int m_field;
|
||||||
|
};
|
||||||
|
|
||||||
|
StructWithNested g_structWithNested;
|
||||||
|
StructWithNested::Nested g_structNested;
|
||||||
|
|
||||||
#pragma pack( pop )
|
#pragma pack( pop )
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
@ -265,6 +275,7 @@ void FuncWithName0()
|
|||||||
std::cout << g_bigValue;
|
std::cout << g_bigValue;
|
||||||
std::cout << g_classChild.m_enumField;
|
std::cout << g_classChild.m_enumField;
|
||||||
std::cout << g_unNamedStruct.m_fieldNestedStruct;
|
std::cout << g_unNamedStruct.m_fieldNestedStruct;
|
||||||
|
std::cout << g_structNested.m_nestedFiled;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
@ -283,6 +294,7 @@ void FuncWithName1(int a)
|
|||||||
std::cout << _struct2.m_struct.m_field1;
|
std::cout << _struct2.m_struct.m_field1;
|
||||||
std::cout << g_string;
|
std::cout << g_string;
|
||||||
std::cout << g_unNamedStruct.m_fieldOfUnNamed;
|
std::cout << g_unNamedStruct.m_fieldOfUnNamed;
|
||||||
|
std::cout << g_structWithNested.m_field;
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
@ -377,6 +389,9 @@ int _tmain(int argc, _TCHAR* argv[])
|
|||||||
g_unNamedStruct.m_fieldNestedStruct = 4;
|
g_unNamedStruct.m_fieldNestedStruct = 4;
|
||||||
g_unNamedStruct.m_fieldOfUnNamed = 5;
|
g_unNamedStruct.m_fieldOfUnNamed = 5;
|
||||||
|
|
||||||
|
g_structWithNested.m_field = 34;
|
||||||
|
g_structNested.m_nestedFiled = 46;
|
||||||
|
|
||||||
// Let test scripts to execute
|
// Let test scripts to execute
|
||||||
__debugbreak();
|
__debugbreak();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user