Browse Source

Debugger tests - do not expand properties by default.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@2853 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
David Srbecký 18 years ago
parent
commit
9aaa783bf9
  1. 1
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Debugger.Core.csproj
  2. 1
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Breakpoints/Breakpoint.cs
  3. 1
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/DebuggerObject.cs
  4. 2
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Tests/ExpandAttribute.cs
  5. 17
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Tests/ToStringOnlyAttribute.cs
  6. 4
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/Thread.cs
  7. 14
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Types/MemberInfo.cs
  8. 7
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Types/MethodInfo.cs
  9. 1
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/Value.Array.cs
  10. 2
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/Value.cs
  11. 5
      src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/ValueCollection.cs
  12. 34
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/DebuggerTestsBase.cs
  13. 138
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Callstack.cs
  14. 356
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionArgumentVariables.cs
  15. 204
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLifetime.cs
  16. 103
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLocalVariables.cs
  17. 508
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Generics.cs
  18. 207
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Stepping.cs
  19. 60
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ValueType.cs

1
src/AddIns/Misc/Debugger/Debugger.Core/Project/Debugger.Core.csproj

@ -199,7 +199,6 @@ @@ -199,7 +199,6 @@
<Compile Include="Src\Modules\Process-Modules.cs" />
<Compile Include="Src\Tests\ExpandAttribute.cs" />
<Compile Include="Src\Tests\IgnoreAttribute.cs" />
<Compile Include="Src\Tests\ToStringOnlyAttribute.cs" />
<Compile Include="Src\Threads\Exception.cs" />
<Compile Include="Src\Threads\ExceptionType.cs" />
<Compile Include="Src\Threads\StackFrame.cs" />

1
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Breakpoints/Breakpoint.cs

@ -27,7 +27,6 @@ namespace Debugger @@ -27,7 +27,6 @@ namespace Debugger
}
}
[Debugger.Tests.ToStringOnly]
public SourcecodeSegment SourcecodeSegment {
get {
return sourcecodeSegment;

1
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Debugger/DebuggerObject.cs

@ -12,7 +12,6 @@ namespace Debugger @@ -12,7 +12,6 @@ namespace Debugger
/// <summary>
/// A base class for all classes declared by the debugger
/// </summary>
[Debugger.Tests.Expand]
public class DebuggerObject: MarshalByRefObject
{

2
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Tests/ExpandAttribute.cs

@ -9,7 +9,7 @@ using System; @@ -9,7 +9,7 @@ using System;
namespace Debugger.Tests
{
[AttributeUsage(AttributeTargets.Class)]
[AttributeUsage(AttributeTargets.Property)]
public class ExpandAttribute: Attribute
{

17
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Tests/ToStringOnlyAttribute.cs

@ -1,17 +0,0 @@ @@ -1,17 +0,0 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="David Srbecký" email="dsrbecky@gmail.com"/>
// <version>$Revision$</version>
// </file>
using System;
namespace Debugger.Tests
{
[AttributeUsage(AttributeTargets.Property)]
public class ToStringOnlyAttribute: Attribute
{
}
}

4
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Threads/Thread.cs

@ -262,7 +262,6 @@ namespace Debugger @@ -262,7 +262,6 @@ namespace Debugger
}
}
[Debugger.Tests.ToStringOnly]
public StackFrame SelectedStackFrame {
get {
// Forum-20456: Do not return expired StackFrame
@ -277,7 +276,6 @@ namespace Debugger @@ -277,7 +276,6 @@ namespace Debugger
}
}
[Debugger.Tests.ToStringOnly]
public StackFrame LastStackFrameWithLoadedSymbols {
get {
foreach (StackFrame stackFrame in CallstackEnum) {
@ -293,7 +291,6 @@ namespace Debugger @@ -293,7 +291,6 @@ namespace Debugger
/// Returns the most recent stack frame on callstack.
/// Returns null if callstack is empty.
/// </summary>
[Debugger.Tests.ToStringOnly]
public StackFrame LastStackFrame {
get {
foreach(StackFrame stackFrame in CallstackEnum) {
@ -306,7 +303,6 @@ namespace Debugger @@ -306,7 +303,6 @@ namespace Debugger
/// <summary>
/// Returns the first stack frame that was called on thread
/// </summary>
[Debugger.Tests.ToStringOnly]
public StackFrame FirstStackFrame {
get {
StackFrame first = null;

14
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Types/MemberInfo.cs

@ -31,8 +31,14 @@ namespace Debugger @@ -31,8 +31,14 @@ namespace Debugger
/// <summary> Gets the name of this member </summary>
public abstract string Name { get; }
/// <summary> Gets name of the method including the full name of the declaring type </summary>
public string FullName {
get {
return this.DeclaringType.FullName + "." + this.Name;
}
}
/// <summary> Gets the module in which this member is defined </summary>
[Debugger.Tests.ToStringOnly]
public Module Module {
get {
return declaringType.Module;
@ -40,7 +46,6 @@ namespace Debugger @@ -40,7 +46,6 @@ namespace Debugger
}
/// <summary> Gets the type that declares this member element </summary>
[Debugger.Tests.ToStringOnly]
public DebugType DeclaringType {
get {
return declaringType;
@ -64,5 +69,10 @@ namespace Debugger @@ -64,5 +69,10 @@ namespace Debugger
{
this.declaringType = declaringType;
}
public override string ToString()
{
return this.Name;
}
}
}

7
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Types/MethodInfo.cs

@ -28,13 +28,6 @@ namespace Debugger @@ -28,13 +28,6 @@ namespace Debugger
}
}
/// <summary> Gets name of the method including the full name of the declaring type </summary>
public string FullName {
get {
return this.DeclaringType.FullName + "." + methodProps.Name;
}
}
/// <summary> Gets a value indicating whether this method is private </summary>
public override bool IsPrivate {
get {

1
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/Value.Array.cs

@ -57,7 +57,6 @@ namespace Debugger @@ -57,7 +57,6 @@ namespace Debugger
}
/// <summary> Gets the dimensions of the array </summary>
[Debugger.Tests.ToStringOnly]
public ArrayDimensions ArrayDimensions {
get {
int rank = this.ArrayRank;

2
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/Value.cs

@ -51,7 +51,6 @@ namespace Debugger @@ -51,7 +51,6 @@ namespace Debugger
bool hasExpired = false;
/// <summary> Expression which can be used to reobtain this value. </summary>
[Debugger.Tests.ToStringOnly]
public Expression Expression {
get { return expression; }
}
@ -179,7 +178,6 @@ namespace Debugger @@ -179,7 +178,6 @@ namespace Debugger
}
/// <summary> Returns the <see cref="Debugger.DebugType"/> of the value </summary>
[Debugger.Tests.ToStringOnly]
public DebugType Type {
get {
return type;

5
src/AddIns/Misc/Debugger/Debugger.Core/Project/Src/Variables/Values/ValueCollection.cs

@ -96,5 +96,10 @@ namespace Debugger @@ -96,5 +96,10 @@ namespace Debugger
throw new DebuggerException("Variable \"" + variableName + "\" is not in collection");
}
}
public override string ToString()
{
return string.Format(@"[{0} Count={1}]", this.GetType().Name, this.Count);
}
}
}

34
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/DebuggerTestsBase.cs

@ -167,30 +167,24 @@ namespace Debugger.Tests @@ -167,30 +167,24 @@ namespace Debugger.Tests
Serialize(dumpNode, obj, 16, new List<object>());
}
static bool ShouldExpandType(Type type)
{
return type.GetCustomAttributes(typeof(ExpandAttribute), true).Length > 0 ||
( typeof(IEnumerable).IsAssignableFrom(type) &&
type.Namespace != "System"
);
}
public static void Serialize(XmlElement container, object obj, int maxDepth, List<object> parents)
{
XmlDocument doc = container.OwnerDocument;
if (maxDepth == -1) {
container.AppendChild(doc.CreateElement("MaxDepthReached"));
if (obj == null) {
container.AppendChild(doc.CreateTextNode("null"));
return;
}
if (obj == null) {
container.AppendChild(doc.CreateElement("Null"));
if (maxDepth == -1) {
container.AppendChild(doc.CreateTextNode(obj.ToString()));
container.SetAttribute("warning", "max depth reached");
return;
}
if (parents.Contains(obj)) {
container.AppendChild(doc.CreateElement("RecusionDetected"));
container.AppendChild(doc.CreateTextNode(obj.ToString()));
container.SetAttribute("warning", "recusion detected");
return;
}
@ -199,13 +193,14 @@ namespace Debugger.Tests @@ -199,13 +193,14 @@ namespace Debugger.Tests
Type type = obj.GetType();
container.SetAttribute("Type", type.Name);
if (!ShouldExpandType(type)) {
if (type.Namespace == "System") {
container.AppendChild(doc.CreateTextNode(obj.ToString()));
return;
}
container.SetAttribute("Type", type.Name);
foreach(System.Reflection.PropertyInfo property in type.GetProperties()) {
if (property.GetGetMethod() == null) continue;
if (property.GetGetMethod().GetParameters().Length > 0) continue;
@ -224,11 +219,10 @@ namespace Debugger.Tests @@ -224,11 +219,10 @@ namespace Debugger.Tests
}
if (val == null) {
propertyNode.AppendChild(doc.CreateTextNode("null"));
} else if (!ShouldExpandType(val.GetType()) || property.GetCustomAttributes(typeof(Debugger.Tests.ToStringOnlyAttribute), true).Length > 0) {
// Only write ToString() text
propertyNode.AppendChild(doc.CreateTextNode(val.ToString()));
} else {
} else if (property.GetCustomAttributes(typeof(Debugger.Tests.ExpandAttribute), true).Length > 0) {
Serialize(propertyNode, val, maxDepth - 1, parents);
} else {
propertyNode.AppendChild(doc.CreateTextNode(val.ToString()));
}
}

138
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Callstack.cs

@ -66,168 +66,78 @@ namespace Debugger.Tests { @@ -66,168 +66,78 @@ namespace Debugger.Tests {
<ObjectDump name="Callstack" Type="ReadOnlyCollection`1">
<Count>3</Count>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub2</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Sub2</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Sub2</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=26,4 End=26,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub1</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Sub1</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Sub1</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=21,4 End=21,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=16,4 End=16,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="Callstack" Type="ReadOnlyCollection`1">
<Count>2</Count>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub1</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Sub1</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Sub1</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=21,4 End=21,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=16,4 End=16,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="Callstack" Type="ReadOnlyCollection`1">
<Count>1</Count>
<Item Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Callstack.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Callstack.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Callstack</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=16,4 End=16,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</Item>
</ObjectDump>
<ProcessExited />

356
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionArgumentVariables.cs

@ -98,377 +98,63 @@ namespace Debugger.Tests { @@ -98,377 +98,63 @@ namespace Debugger.Tests {
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>StaticFunction</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionArgumentVariables.StaticFunction</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionArgumentVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionArgumentVariables</DeclaringType>
</MethodInfo>
<MethodInfo>StaticFunction</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=51,4 End=51,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>9</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>9</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>i</Expression>
<Name>i</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>A</PrimitiveValue>
<Expression>s</Expression>
<Name>s</Name>
<IsNull>False</IsNull>
<AsString>A</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>s_null</Expression>
<Name>s_null</Name>
<IsNull>True</IsNull>
<AsString>&lt;null&gt;</AsString>
<HasExpired>False</HasExpired>
<Type>System.Object</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>2</PrimitiveValue>
<Expression>ref_i</Expression>
<Name>ref_i</Name>
<IsNull>False</IsNull>
<AsString>2</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>3</PrimitiveValue>
<Expression>out_i</Expression>
<Name>out_i</Name>
<IsNull>False</IsNull>
<AsString>3</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>0</PrimitiveValue>
<Expression>out_i2</Expression>
<Name>out_i2</Name>
<IsNull>False</IsNull>
<AsString>0</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>B</PrimitiveValue>
<Expression>ref_s</Expression>
<Name>ref_s</Name>
<IsNull>False</IsNull>
<AsString>B</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>iNull</Expression>
<Name>iNull</Name>
<IsNull>False</IsNull>
<AsString>{System.Nullable&lt;System.Int32&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>System.Nullable&lt;System.Int32&gt;</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>iNull_null</Expression>
<Name>iNull_null</Name>
<IsNull>False</IsNull>
<AsString>{System.Nullable&lt;System.Int32&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>System.Nullable&lt;System.Int32&gt;</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=9]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>VarArgs</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionArgumentVariables.VarArgs</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionArgumentVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionArgumentVariables</DeclaringType>
</MethodInfo>
<MethodInfo>VarArgs</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=57,4 End=57,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>1</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>1</Count>
<Item Type="Value">
<IsArray>True</IsArray>
<ArrayLenght>0</ArrayLenght>
<ArrayRank>1</ArrayRank>
<ArrayDimensions>[0]</ArrayDimensions>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>args</Expression>
<Name>args</Name>
<IsNull>False</IsNull>
<AsString>{System.String[]}</AsString>
<HasExpired>False</HasExpired>
<Type>System.String[]</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=1]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>VarArgs</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionArgumentVariables.VarArgs</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionArgumentVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionArgumentVariables</DeclaringType>
</MethodInfo>
<MethodInfo>VarArgs</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=57,4 End=57,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>1</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>1</Count>
<Item Type="Value">
<IsArray>True</IsArray>
<ArrayLenght>1</ArrayLenght>
<ArrayRank>1</ArrayRank>
<ArrayDimensions>[1]</ArrayDimensions>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>args</Expression>
<Name>args</Name>
<IsNull>False</IsNull>
<AsString>{System.String[]}</AsString>
<HasExpired>False</HasExpired>
<Type>System.String[]</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=1]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>VarArgs</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionArgumentVariables.VarArgs</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionArgumentVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionArgumentVariables</DeclaringType>
</MethodInfo>
<MethodInfo>VarArgs</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=57,4 End=57,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>1</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>1</Count>
<Item Type="Value">
<IsArray>True</IsArray>
<ArrayLenght>2</ArrayLenght>
<ArrayRank>1</ArrayRank>
<ArrayDimensions>[2]</ArrayDimensions>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>args</Expression>
<Name>args</Name>
<IsNull>False</IsNull>
<AsString>{System.String[]}</AsString>
<HasExpired>False</HasExpired>
<Type>System.String[]</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=1]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionArgumentVariables.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>False</IsStatic>
<Module>FunctionArgumentVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionArgumentVariables</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=62,4 End=62,40</NextStatement>
<ThisValue Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>this</Expression>
<Name>this</Name>
<IsNull>False</IsNull>
<AsString>{Debugger.Tests.TestPrograms.FunctionArgumentVariables}</AsString>
<HasExpired>False</HasExpired>
<Type>Debugger.Tests.TestPrograms.FunctionArgumentVariables</Type>
</ThisValue>
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ThisValue>Debugger.Value</ThisValue>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>i</Expression>
<Name>i</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>A</PrimitiveValue>
<Expression>s</Expression>
<Name>s</Name>
<IsNull>False</IsNull>
<AsString>A</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ProcessExited />
</Test>

204
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLifetime.cs

@ -76,241 +76,95 @@ namespace Debugger.Tests { @@ -76,241 +76,95 @@ namespace Debugger.Tests {
<ModuleLoaded symbols="True">FunctionLifetime.exe</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=22,4 End=22,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>1</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>1</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>i</Expression>
<Name>i</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=1]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="Old StackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>True</HasExpired>
<NextStatement exception="StackFrame has expired" />
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount exception="StackFrame has expired" />
<Arguments exception="StackFrame has expired" />
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>SubFunction</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.SubFunction</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>SubFunction</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=29,4 End=29,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="Old StackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>True</HasExpired>
<NextStatement exception="StackFrame has expired" />
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount exception="StackFrame has expired" />
<Arguments exception="StackFrame has expired" />
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=24,4 End=24,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>1</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>1</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>i</Expression>
<Name>i</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=1]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="Main" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=17,4 End=17,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ObjectDump name="Old StackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Function</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Function</FullName>
<IsPrivate>True</IsPrivate>
<IsPublic>False</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Function</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>True</HasExpired>
<NextStatement exception="StackFrame has expired" />
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount exception="StackFrame has expired" />
<Arguments exception="StackFrame has expired" />
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLifetime.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLifetime.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLifetime</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=17,4 End=17,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ProcessExited />
</Test>

103
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLocalVariables.cs

@ -51,110 +51,15 @@ namespace Debugger.Tests { @@ -51,110 +51,15 @@ namespace Debugger.Tests {
<ModuleLoaded symbols="True">FunctionLocalVariables.exe</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.FunctionLocalVariables.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>FunctionLocalVariables.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.FunctionLocalVariables</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=21,4 End=21,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>5</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>0</PrimitiveValue>
<Expression>i</Expression>
<Name>i</Name>
<IsNull>False</IsNull>
<AsString>0</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>S</PrimitiveValue>
<Expression>s</Expression>
<Name>s</Name>
<IsNull>False</IsNull>
<AsString>S</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
<Item Type="Value">
<IsArray>True</IsArray>
<ArrayLenght>1</ArrayLenght>
<ArrayRank>1</ArrayRank>
<ArrayDimensions>[1]</ArrayDimensions>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>args</Expression>
<Name>args</Name>
<IsNull>False</IsNull>
<AsString>{System.String[]}</AsString>
<HasExpired>False</HasExpired>
<Type>System.String[]</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>n</Expression>
<Name>n</Name>
<IsNull>True</IsNull>
<AsString>&lt;null&gt;</AsString>
<HasExpired>False</HasExpired>
<Type>System.Object</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>o</Expression>
<Name>o</Name>
<IsNull>False</IsNull>
<AsString>{System.Object}</AsString>
<HasExpired>False</HasExpired>
<Type>System.Object</Type>
</Item>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=5]</LocalVariables>
</ObjectDump>
<ProcessExited />
</Test>

508
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Generics.cs

@ -117,535 +117,99 @@ namespace Debugger.Tests { @@ -117,535 +117,99 @@ namespace Debugger.Tests {
<ModuleLoaded symbols="True">Generics.exe</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Metod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;.Metod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>False</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>Metod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=36,4 End=36,40</NextStatement>
<ThisValue Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>this</Expression>
<Name>this</Name>
<IsNull>False</IsNull>
<AsString>{Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</Type>
</ThisValue>
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ThisValue>Debugger.Value</ThisValue>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>GenericMethod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;.GenericMethod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>False</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>GenericMethod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=42,4 End=42,40</NextStatement>
<ThisValue Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>this</Expression>
<Name>this</Name>
<IsNull>False</IsNull>
<AsString>{Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</Type>
</ThisValue>
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ThisValue>Debugger.Value</ThisValue>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>StaticMetod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;.StaticMetod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>StaticMetod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=48,4 End=48,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>StaticGenericMethod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;.StaticGenericMethod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericClass&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>StaticGenericMethod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=54,4 End=54,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Metod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;.Metod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>False</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>Metod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=63,4 End=63,40</NextStatement>
<ThisValue Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>this</Expression>
<Name>this</Name>
<IsNull>False</IsNull>
<AsString>{Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</Type>
</ThisValue>
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ThisValue>Debugger.Value</ThisValue>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>GenericMethod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;.GenericMethod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>False</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>GenericMethod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=69,4 End=69,40</NextStatement>
<ThisValue Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue exception="Value is not a primitive type" />
<Expression>this</Expression>
<Name>this</Name>
<IsNull>False</IsNull>
<AsString>{Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;}</AsString>
<HasExpired>False</HasExpired>
<Type>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</Type>
</ThisValue>
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ThisValue>Debugger.Value</ThisValue>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>StaticMetod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;.StaticMetod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>StaticMetod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=75,4 End=75,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>StaticGenericMethod</Name>
<FullName>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;.StaticGenericMethod</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Generics.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.GenericStruct&lt;System.Int32,System.String&gt;</DeclaringType>
</MethodInfo>
<MethodInfo>StaticGenericMethod</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=81,4 End=81,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>2</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>2</Count>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>True</IsInteger>
<PrimitiveValue>1</PrimitiveValue>
<Expression>v</Expression>
<Name>v</Name>
<IsNull>False</IsNull>
<AsString>1</AsString>
<HasExpired>False</HasExpired>
<Type>System.Int32</Type>
</Item>
<Item Type="Value">
<IsArray>False</IsArray>
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<ArrayDimensions exception="Value is not an array" />
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<IsInteger>False</IsInteger>
<PrimitiveValue>1!</PrimitiveValue>
<Expression>k</Expression>
<Name>k</Name>
<IsNull>False</IsNull>
<AsString>1!</AsString>
<HasExpired>False</HasExpired>
<Type>System.String</Type>
</Item>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=2]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />

207
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Stepping.cs

@ -94,253 +94,118 @@ namespace Debugger.Tests { @@ -94,253 +94,118 @@ namespace Debugger.Tests {
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=16,4 End=16,40</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=17,4 End=17,44</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<LogMessage>1\r\n</LogMessage>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=18,4 End=18,10</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Sub</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Sub</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=23,3 End=23,4</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Sub</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Sub</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=24,4 End=24,44</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<LogMessage>2\r\n</LogMessage>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Sub</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Sub</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Sub</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=25,4 End=25,44</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<LogMessage>3\r\n</LogMessage>
<LogMessage>4\r\n</LogMessage>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=18,4 End=18,10</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=19,4 End=19,11</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<LogMessage>5\r\n</LogMessage>
<DebuggingPaused>StepComplete</DebuggingPaused>
<ObjectDump name="SelectedStackFrame" Type="StackFrame">
<MethodInfo Type="MethodInfo">
<Name>Main</Name>
<FullName>Debugger.Tests.TestPrograms.Stepping.Main</FullName>
<IsPrivate>False</IsPrivate>
<IsPublic>True</IsPublic>
<IsSpecialName>False</IsSpecialName>
<IsStatic>True</IsStatic>
<Module>Stepping.exe</Module>
<DeclaringType>Debugger.Tests.TestPrograms.Stepping</DeclaringType>
</MethodInfo>
<MethodInfo>Main</MethodInfo>
<HasSymbols>True</HasSymbols>
<HasExpired>False</HasExpired>
<NextStatement>Start=20,3 End=20,4</NextStatement>
<ThisValue exception="Static method does not have 'this'." />
<ContaingClassVariables Type="ValueCollection">
<Count>0</Count>
</ContaingClassVariables>
<ContaingClassVariables>[ValueCollection Count=0]</ContaingClassVariables>
<ArgumentCount>0</ArgumentCount>
<Arguments Type="ValueCollection">
<Count>0</Count>
</Arguments>
<LocalVariables Type="ValueCollection">
<Count>0</Count>
</LocalVariables>
<Arguments>[ValueCollection Count=0]</Arguments>
<LocalVariables>[ValueCollection Count=0]</LocalVariables>
</ObjectDump>
<ProcessExited />
</Test>

60
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ValueType.cs

@ -69,17 +69,7 @@ namespace Debugger.Tests { @@ -69,17 +69,7 @@ namespace Debugger.Tests {
</ObjectDump>
<ObjectDump name="typeof(this)" Type="DebugType">
<ManagedType>null</ManagedType>
<Module Type="Module">
<Unloaded>False</Unloaded>
<SymReader>Debugger.Wrappers.CorSym.ISymUnmanagedReader</SymReader>
<CorModule>Debugger.Wrappers.CorDebug.ICorDebugModule</CorModule>
<BaseAdress>4194304</BaseAdress>
<IsDynamic>False</IsDynamic>
<IsInMemory>False</IsInMemory>
<Filename>ValueType.exe</Filename>
<SymbolsLoaded>True</SymbolsLoaded>
<OrderOfLoading>1</OrderOfLoading>
</Module>
<Module>ValueType.exe</Module>
<MetadataToken>33554434</MetadataToken>
<FullName>Debugger.Tests.ValueType</FullName>
<HasElementType>False</HasElementType>
@ -89,53 +79,7 @@ namespace Debugger.Tests { @@ -89,53 +79,7 @@ namespace Debugger.Tests {
<IsValueType>True</IsValueType>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<BaseType Type="DebugType">
<ManagedType>null</ManagedType>
<Module Type="Module">
<Unloaded>False</Unloaded>
<SymReader>null</SymReader>
<CorModule>Debugger.Wrappers.CorDebug.ICorDebugModule</CorModule>
<BaseAdress>2030829568</BaseAdress>
<IsDynamic>False</IsDynamic>
<IsInMemory>False</IsInMemory>
<Filename>mscorlib.dll</Filename>
<SymbolsLoaded>False</SymbolsLoaded>
<OrderOfLoading>0</OrderOfLoading>
</Module>
<MetadataToken>33554446</MetadataToken>
<FullName>System.ValueType</FullName>
<HasElementType>False</HasElementType>
<IsArray>False</IsArray>
<IsGenericType>False</IsGenericType>
<IsClass>True</IsClass>
<IsValueType>False</IsValueType>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<BaseType Type="DebugType">
<ManagedType>null</ManagedType>
<Module Type="Module">
<Unloaded>False</Unloaded>
<SymReader>null</SymReader>
<CorModule>Debugger.Wrappers.CorDebug.ICorDebugModule</CorModule>
<BaseAdress>2030829568</BaseAdress>
<IsDynamic>False</IsDynamic>
<IsInMemory>False</IsInMemory>
<Filename>mscorlib.dll</Filename>
<SymbolsLoaded>False</SymbolsLoaded>
<OrderOfLoading>0</OrderOfLoading>
</Module>
<MetadataToken>33554434</MetadataToken>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<IsArray>False</IsArray>
<IsGenericType>False</IsGenericType>
<IsClass>True</IsClass>
<IsValueType>False</IsValueType>
<IsPrimitive>False</IsPrimitive>
<IsInteger>False</IsInteger>
<BaseType>null</BaseType>
</BaseType>
</BaseType>
<BaseType>System.ValueType</BaseType>
</ObjectDump>
<ProcessExited />
</Test>

Loading…
Cancel
Save