Browse Source

Reformatted the output of debugger tests: properties are outputted as attributes rather then elements

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3161 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
David Srbecký 18 years ago
parent
commit
d03abbe470
  1. 57
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/DebuggerTestsBase.cs
  2. 303
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ArrayValue.cs
  3. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Break.cs
  4. 47
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Breakpoint.cs
  5. 103
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Callstack.cs
  6. 13
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/DebuggerAttributes.cs
  7. 77
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/DefinedTypes.cs
  8. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Exception.cs
  9. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ExceptionCustom.cs
  10. 423
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionArgumentVariables.cs
  11. 127
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLifetime.cs
  12. 154
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionLocalVariables.cs
  13. 587
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionVariablesLifetime.cs
  14. 1081
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Generics.cs
  15. 13
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/HelloWorld.cs
  16. 149
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/MainThreadExit.cs
  17. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/MetadataIdentity.cs
  18. 381
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/PrimitiveValue.cs
  19. 13
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/SetIP.cs
  20. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/SimpleProgram.cs
  21. 25
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/StackOverflow.cs
  22. 13
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Stepping.cs
  23. 11
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/TerminatePausedProcess.cs
  24. 11
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/TerminateRunningProcess.cs
  25. 131
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ValueType.cs
  26. 7
      src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/_Template.cs

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

@ -86,7 +86,12 @@ namespace Debugger.Tests @@ -86,7 +86,12 @@ namespace Debugger.Tests
string endMark = "#endif // EXPECTED_OUTPUT";
MemoryStream newXmlStream = new MemoryStream();
testDoc.Save(newXmlStream);
XmlWriterSettings settings = new XmlWriterSettings();
settings.Encoding = Encoding.UTF8;
settings.Indent = true;
settings.NewLineOnAttributes = true;
XmlWriter writer = XmlTextWriter.Create(newXmlStream, settings);
testDoc.Save(writer);
newXmlStream.Seek(0, SeekOrigin.Begin);
string actualXml = new StreamReader(newXmlStream).ReadToEnd() + "\r\n";
@ -140,7 +145,7 @@ namespace Debugger.Tests @@ -140,7 +145,7 @@ namespace Debugger.Tests
LogEvent("LogMessage", e.Message.Replace("\r",@"\r").Replace("\n",@"\n"));
};
process.ModuleLoaded += delegate(object sender, ModuleEventArgs e) {
LogEvent("ModuleLoaded", e.Module.Filename).SetAttribute("symbols", e.Module.SymbolsLoaded.ToString());
LogEvent("ModuleLoaded", e.Module.Filename + (e.Module.SymbolsLoaded ? " (Has symbols)" : " (No symbols)"));
};
process.Paused += delegate(object sender, ProcessEventArgs e) {
LogEvent("DebuggingPaused", e.Process.PauseSession.PausedReason.ToString());
@ -174,7 +179,7 @@ namespace Debugger.Tests @@ -174,7 +179,7 @@ namespace Debugger.Tests
public void ObjectDump(object obj)
{
ObjectDump("Object", obj);
Serialize(testNode, obj, 16, new List<object>());
}
public void ObjectDump(string name, object obj)
@ -220,16 +225,16 @@ namespace Debugger.Tests @@ -220,16 +225,16 @@ namespace Debugger.Tests
container.AppendChild(doc.CreateTextNode("null"));
return;
}
if (maxDepth == -1) {
container.AppendChild(doc.CreateTextNode(obj.ToString()));
container.SetAttribute("warning", "max depth reached");
container.AppendChild(doc.CreateTextNode("{Max depth reached}"));
return;
}
if (parents.Contains(obj)) {
container.AppendChild(doc.CreateTextNode("{Recusion detected}"));
return;
}
if (obj.GetType().Namespace == "System") {
container.AppendChild(doc.CreateTextNode(obj.ToString()));
container.SetAttribute("warning", "recusion detected");
return;
}
@ -238,18 +243,10 @@ namespace Debugger.Tests @@ -238,18 +243,10 @@ namespace Debugger.Tests
Type type = obj.GetType();
if (type.Namespace == "System") {
container.AppendChild(doc.CreateTextNode(obj.ToString()));
return;
}
container.SetAttribute("Type", type.Name);
try {
container.SetAttribute("ToString", obj.ToString());
} catch (System.Exception e) {
while(e.InnerException != null) e = e.InnerException;
container.SetAttribute("ToString_exception", e.Message);
if (!(obj is IEnumerable)) {
XmlElement newContainer = doc.CreateElement(XmlConvert.EncodeName(type.Name));
container.AppendChild(newContainer);
container = newContainer;
}
List<SRPropertyInfo> properties = new List<SRPropertyInfo>();
@ -262,32 +259,32 @@ namespace Debugger.Tests @@ -262,32 +259,32 @@ namespace Debugger.Tests
if (property.GetGetMethod().GetParameters().Length > 0) continue;
if (property.GetCustomAttributes(typeof(Debugger.Tests.IgnoreAttribute), true).Length > 0) continue;
XmlElement propertyNode = doc.CreateElement(property.Name);
container.AppendChild(propertyNode);
object val;
try {
val = property.GetValue(obj, new object[] {});
} catch (System.Exception e) {
while(e.InnerException != null) e = e.InnerException;
propertyNode.SetAttribute("exception", e.Message);
continue;
val = "{Exception: " + e.Message + "}";
}
if (val == null) {
propertyNode.AppendChild(doc.CreateTextNode("null"));
} else if (ShouldExpandProperty(property)) {
if (val == null) val = "null";
container.SetAttribute(property.Name, val.ToString());
if (ShouldExpandProperty(property)) {
XmlElement propertyNode = doc.CreateElement(property.Name);
container.AppendChild(propertyNode);
Serialize(propertyNode, val, maxDepth - 1, parents);
} else {
propertyNode.AppendChild(doc.CreateTextNode(val.ToString()));
}
}
// Save all objects of an enumerable object
if (obj is IEnumerable) {
int id = 1;
foreach(object enumObject in (IEnumerable)obj) {
XmlElement enumRoot = doc.CreateElement("Item");
container.AppendChild(enumRoot);
Serialize(enumRoot, enumObject, maxDepth - 1, parents);
id++;
}
}
}

303
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ArrayValue.cs

@ -49,160 +49,177 @@ namespace Debugger.Tests { @@ -49,160 +49,177 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="ArrayValue.cs">
<Test
name="ArrayValue.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">ArrayValue.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>ArrayValue.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<array Type="Value" ToString="array = {System.Int32[]}">
<ArrayDimensions>[5]</ArrayDimensions>
<ArrayLenght>5</ArrayLenght>
<ArrayRank>1</ArrayRank>
<AsString>{System.Int32[]}</AsString>
<Expression>array</Expression>
<HasExpired>False</HasExpired>
<IsArray>True</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Int32[]</Type>
<array>
<Value
ArrayDimensions="[5]"
ArrayLenght="5"
ArrayRank="1"
AsString="{System.Int32[]}"
Expression="array"
HasExpired="False"
IsArray="True"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Int32[]" />
</array>
<array_elements Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="array[0] = 0">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>0</AsString>
<Expression>array[0]</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>0</PrimitiveValue>
<Type>System.Int32</Type>
<array_elements>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="0"
Expression="array[0]"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="0"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="array[1] = 1">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>1</AsString>
<Expression>array[1]</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>1</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="1"
Expression="array[1]"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="1"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="array[2] = 2">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>2</AsString>
<Expression>array[2]</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>2</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="2"
Expression="array[2]"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="2"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="array[3] = 3">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>3</AsString>
<Expression>array[3]</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>3</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="3"
Expression="array[3]"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="3"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="array[4] = 4">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>4</AsString>
<Expression>array[4]</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>4</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="4"
Expression="array[4]"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="4"
Type="System.Int32" />
</Item>
</array_elements>
<type Type="DebugType" ToString="System.Int32[]">
<BaseType Type="DebugType" ToString="System.Array">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
<type>
<DebugType
BaseType="System.Array"
FullName="System.Int32[]"
HasElementType="True"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="True"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="System.Array"
Module="{Exception: The type is not a class or value type.}">
<BaseType>
<DebugType
BaseType="System.Object"
FullName="System.Array"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</BaseType>
<FullName>System.Array</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.Int32[]</FullName>
<HasElementType>True</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>True</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>System.Array</ManagedType>
<Module exception="The type is not a class or value type." />
</DebugType>
</type>
<array.Length Type="Value" ToString="array.Length = 5">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>5</AsString>
<Expression>array.Length</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>5</PrimitiveValue>
<Type>System.Int32</Type>
<array.Length>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="5"
Expression="array.Length"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="5"
Type="System.Int32" />
</array.Length>
<ProcessExited />
</Test>

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Break.cs

@ -36,10 +36,11 @@ namespace Debugger.Tests { @@ -36,10 +36,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="Break.cs">
<Test
name="Break.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">Break.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>Break.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />
</Test>

47
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Breakpoint.cs

@ -51,37 +51,36 @@ namespace Debugger.Tests { @@ -51,37 +51,36 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="Breakpoint.cs">
<Test
name="Breakpoint.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">Breakpoint.exe</ModuleLoaded>
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>Breakpoint.exe (Has symbols)</ModuleLoaded>
<ModuleLoaded>System.dll (No symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<Object Type="Breakpoint" ToString="Debugger.Breakpoint">
<CheckSum>null</CheckSum>
<Column>0</Column>
<Enabled>True</Enabled>
<FileName>Breakpoint.cs</FileName>
<IsSet>True</IsSet>
<Line>18</Line>
<OriginalLocation>Breakpoint.cs:18,4-18,49</OriginalLocation>
</Object>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<Breakpoint
CheckSum="null"
Column="0"
Enabled="True"
FileName="Breakpoint.cs"
IsSet="True"
Line="18"
OriginalLocation="Breakpoint.cs:18,4-18,49" />
<ModuleLoaded>System.Configuration.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Xml.dll (No symbols)</ModuleLoaded>
<LogMessage>Main 1\r\n</LogMessage>
<DebuggingPaused>Breakpoint</DebuggingPaused>
<LogMessage>Main 2\r\n</LogMessage>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />
<Object Type="Breakpoint" ToString="Debugger.Breakpoint">
<CheckSum>null</CheckSum>
<Column>0</Column>
<Enabled>True</Enabled>
<FileName>Breakpoint.cs</FileName>
<IsSet>False</IsSet>
<Line>18</Line>
<OriginalLocation>Breakpoint.cs:18,4-18,49</OriginalLocation>
</Object>
<Breakpoint
CheckSum="null"
Column="0"
Enabled="True"
FileName="Breakpoint.cs"
IsSet="False"
Line="18"
OriginalLocation="Breakpoint.cs:18,4-18,49" />
</Test>
</DebuggerTests>
#endif // EXPECTED_OUTPUT

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

@ -52,65 +52,72 @@ namespace Debugger.Tests { @@ -52,65 +52,72 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="Callstack.cs">
<Test
name="Callstack.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">Callstack.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>Callstack.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<Callstack Type="StackFrame[]" ToString="Debugger.StackFrame[]">
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Sub2">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Sub2</MethodInfo>
<NextStatement>Callstack.cs:26,4-26,40</NextStatement>
<Callstack>
<Item>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Sub2"
NextStatement="Callstack.cs:26,4-26,40" />
</Item>
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Sub1">
<ArgumentCount>0</ArgumentCount>
<Depth>1</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Sub1</MethodInfo>
<NextStatement>Callstack.cs:21,4-21,11</NextStatement>
<Item>
<StackFrame
ArgumentCount="0"
Depth="1"
HasExpired="False"
HasSymbols="True"
MethodInfo="Sub1"
NextStatement="Callstack.cs:21,4-21,11" />
</Item>
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Main">
<ArgumentCount>0</ArgumentCount>
<Depth>2</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Main</MethodInfo>
<NextStatement>Callstack.cs:16,4-16,11</NextStatement>
<Item>
<StackFrame
ArgumentCount="0"
Depth="2"
HasExpired="False"
HasSymbols="True"
MethodInfo="Main"
NextStatement="Callstack.cs:16,4-16,11" />
</Item>
</Callstack>
<DebuggingPaused>StepComplete</DebuggingPaused>
<Callstack Type="StackFrame[]" ToString="Debugger.StackFrame[]">
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Sub1">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Sub1</MethodInfo>
<NextStatement>Callstack.cs:21,4-21,11</NextStatement>
<Callstack>
<Item>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Sub1"
NextStatement="Callstack.cs:21,4-21,11" />
</Item>
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Main">
<ArgumentCount>0</ArgumentCount>
<Depth>1</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Main</MethodInfo>
<NextStatement>Callstack.cs:16,4-16,11</NextStatement>
<Item>
<StackFrame
ArgumentCount="0"
Depth="1"
HasExpired="False"
HasSymbols="True"
MethodInfo="Main"
NextStatement="Callstack.cs:16,4-16,11" />
</Item>
</Callstack>
<DebuggingPaused>StepComplete</DebuggingPaused>
<Callstack Type="StackFrame[]" ToString="Debugger.StackFrame[]">
<Item Type="StackFrame" ToString="Debugger.Tests.TestPrograms.Callstack.Main">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Main</MethodInfo>
<NextStatement>Callstack.cs:16,4-16,11</NextStatement>
<Callstack>
<Item>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Main"
NextStatement="Callstack.cs:16,4-16,11" />
</Item>
</Callstack>
<ProcessExited />

13
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/DebuggerAttributes.cs

@ -66,13 +66,14 @@ namespace Debugger.Tests { @@ -66,13 +66,14 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="DebuggerAttributes.cs">
<Test
name="DebuggerAttributes.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">DebuggerAttributes.exe</ModuleLoaded>
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>DebuggerAttributes.exe (Has symbols)</ModuleLoaded>
<ModuleLoaded>System.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Configuration.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Xml.dll (No symbols)</ModuleLoaded>
<LogMessage>Start\r\n</LogMessage>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>StepComplete</DebuggingPaused>

77
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/DefinedTypes.cs

@ -49,50 +49,53 @@ namespace Debugger.Tests { @@ -49,50 +49,53 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="DefinedTypes.cs">
<Test
name="DefinedTypes.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">DefinedTypes.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>DefinedTypes.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<TypesAsString Type="List`1" ToString="System.Collections.Generic.List`1[System.String]">
<Capacity>4</Capacity>
<Count>3</Count>
<TypesAsString
Capacity="4"
Count="3">
<Item>Debugger.Tests.TestPrograms.DefinedTypes_Class</Item>
<Item>Debugger.Tests.TestPrograms.DefinedTypes_Struct</Item>
<Item>Debugger.Tests.TestPrograms.DefinedTypes_GenericClass`2</Item>
</TypesAsString>
<Types Type="List`1" ToString="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]">
<Capacity>4</Capacity>
<Count>2</Count>
<Item Type="DebugType" ToString="Debugger.Tests.TestPrograms.DefinedTypes_Class">
<BaseType>System.Object</BaseType>
<FullName>Debugger.Tests.TestPrograms.DefinedTypes_Class</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>DefinedTypes.exe</Module>
<Types
Capacity="4"
Count="2">
<Item>
<DebugType
BaseType="System.Object"
FullName="Debugger.Tests.TestPrograms.DefinedTypes_Class"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="DefinedTypes.exe" />
</Item>
<Item Type="DebugType" ToString="Debugger.Tests.TestPrograms.DefinedTypes_Struct">
<BaseType>System.ValueType</BaseType>
<FullName>Debugger.Tests.TestPrograms.DefinedTypes_Struct</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>True</IsValueType>
<ManagedType>null</ManagedType>
<Module>DefinedTypes.exe</Module>
<Item>
<DebugType
BaseType="System.ValueType"
FullName="Debugger.Tests.TestPrograms.DefinedTypes_Struct"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="True"
ManagedType="null"
Module="DefinedTypes.exe" />
</Item>
</Types>
<ProcessExited />

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/Exception.cs

@ -50,10 +50,11 @@ namespace Debugger.Tests { @@ -50,10 +50,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="Exception.cs">
<Test
name="Exception.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">Exception.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>Exception.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ExceptionThrown>test</ExceptionThrown>
<ProcessExited />

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/ExceptionCustom.cs

@ -44,10 +44,11 @@ namespace Debugger.Tests { @@ -44,10 +44,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="ExceptionCustom.cs">
<Test
name="ExceptionCustom.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">ExceptionCustom.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>ExceptionCustom.exe (Has symbols)</ModuleLoaded>
<ExceptionThrown>test</ExceptionThrown>
<DebuggingPaused>Exception</DebuggingPaused>
<ProcessExited />

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

@ -87,234 +87,249 @@ namespace Debugger.Tests { @@ -87,234 +87,249 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="FunctionArgumentVariables.cs">
<Test
name="FunctionArgumentVariables.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">FunctionArgumentVariables.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>FunctionArgumentVariables.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>Break</DebuggingPaused>
<Arguments Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="i = 1">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>1</AsString>
<Expression>i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>1</PrimitiveValue>
<Type>System.Int32</Type>
<Arguments>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="1"
Expression="i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="1"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="s = A">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>A</AsString>
<Expression>s</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>A</PrimitiveValue>
<Type>System.String</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="A"
Expression="s"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="A"
Type="System.String" />
</Item>
<Item Type="Value" ToString="s_null = null">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>null</AsString>
<Expression>s_null</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>True</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Object</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="null"
Expression="s_null"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="True"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Object" />
</Item>
<Item Type="Value" ToString="ref_i = 2">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>2</AsString>
<Expression>ref_i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>2</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="2"
Expression="ref_i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="2"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="out_i = 3">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>3</AsString>
<Expression>out_i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>3</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="3"
Expression="out_i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="3"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="out_i2 = 0">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>0</AsString>
<Expression>out_i2</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>0</PrimitiveValue>
<Type>System.Int32</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="0"
Expression="out_i2"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="0"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="ref_s = B">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>B</AsString>
<Expression>ref_s</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>B</PrimitiveValue>
<Type>System.String</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="B"
Expression="ref_s"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="B"
Type="System.String" />
</Item>
<Item Type="Value" ToString="iNull = {System.Nullable&lt;System.Int32&gt;}">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>{System.Nullable&lt;System.Int32&gt;}</AsString>
<Expression>iNull</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Nullable&lt;System.Int32&gt;</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="{System.Nullable&lt;System.Int32&gt;}"
Expression="iNull"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="True"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Nullable&lt;System.Int32&gt;" />
</Item>
<Item Type="Value" ToString="iNull_null = {System.Nullable&lt;System.Int32&gt;}">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>{System.Nullable&lt;System.Int32&gt;}</AsString>
<Expression>iNull_null</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Nullable&lt;System.Int32&gt;</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="{System.Nullable&lt;System.Int32&gt;}"
Expression="iNull_null"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="True"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Nullable&lt;System.Int32&gt;" />
</Item>
</Arguments>
<DebuggingPaused>Break</DebuggingPaused>
<Arguments Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="args = {System.String[]}">
<ArrayDimensions>[0]</ArrayDimensions>
<ArrayLenght>0</ArrayLenght>
<ArrayRank>1</ArrayRank>
<AsString>{System.String[]}</AsString>
<Expression>args</Expression>
<HasExpired>False</HasExpired>
<IsArray>True</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.String[]</Type>
<Arguments>
<Item>
<Value
ArrayDimensions="[0]"
ArrayLenght="0"
ArrayRank="1"
AsString="{System.String[]}"
Expression="args"
HasExpired="False"
IsArray="True"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.String[]" />
</Item>
</Arguments>
<DebuggingPaused>Break</DebuggingPaused>
<Arguments Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="args = {System.String[]}">
<ArrayDimensions>[1]</ArrayDimensions>
<ArrayLenght>1</ArrayLenght>
<ArrayRank>1</ArrayRank>
<AsString>{System.String[]}</AsString>
<Expression>args</Expression>
<HasExpired>False</HasExpired>
<IsArray>True</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.String[]</Type>
<Arguments>
<Item>
<Value
ArrayDimensions="[1]"
ArrayLenght="1"
ArrayRank="1"
AsString="{System.String[]}"
Expression="args"
HasExpired="False"
IsArray="True"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.String[]" />
</Item>
</Arguments>
<DebuggingPaused>Break</DebuggingPaused>
<Arguments Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="args = {System.String[]}">
<ArrayDimensions>[2]</ArrayDimensions>
<ArrayLenght>2</ArrayLenght>
<ArrayRank>1</ArrayRank>
<AsString>{System.String[]}</AsString>
<Expression>args</Expression>
<HasExpired>False</HasExpired>
<IsArray>True</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.String[]</Type>
<Arguments>
<Item>
<Value
ArrayDimensions="[2]"
ArrayLenght="2"
ArrayRank="1"
AsString="{System.String[]}"
Expression="args"
HasExpired="False"
IsArray="True"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.String[]" />
</Item>
</Arguments>
<DebuggingPaused>Break</DebuggingPaused>
<Arguments Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="i = 1">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>1</AsString>
<Expression>i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>1</PrimitiveValue>
<Type>System.Int32</Type>
<Arguments>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="1"
Expression="i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="1"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="s = A">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>A</AsString>
<Expression>s</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>A</PrimitiveValue>
<Type>System.String</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="A"
Expression="s"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="A"
Type="System.String" />
</Item>
</Arguments>
<ProcessExited />

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

@ -65,77 +65,86 @@ namespace Debugger.Tests { @@ -65,77 +65,86 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="FunctionLifetime.cs">
<Test
name="FunctionLifetime.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">FunctionLifetime.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>FunctionLifetime.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<SelectedStackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Function">
<ArgumentCount>1</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Function</MethodInfo>
<NextStatement>FunctionLifetime.cs:22,4-22,40</NextStatement>
<SelectedStackFrame>
<StackFrame
ArgumentCount="1"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Function"
NextStatement="FunctionLifetime.cs:22,4-22,40" />
</SelectedStackFrame>
<DebuggingPaused>Break</DebuggingPaused>
<Old_StackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Function">
<ArgumentCount exception="StackFrame has expired" />
<Depth>0</Depth>
<HasExpired>True</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Function</MethodInfo>
<NextStatement exception="StackFrame has expired" />
<Old_StackFrame>
<StackFrame
ArgumentCount="{Exception: StackFrame has expired}"
Depth="0"
HasExpired="True"
HasSymbols="True"
MethodInfo="Function"
NextStatement="{Exception: StackFrame has expired}" />
</Old_StackFrame>
<SelectedStackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.SubFunction">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>SubFunction</MethodInfo>
<NextStatement>FunctionLifetime.cs:29,4-29,40</NextStatement>
<SelectedStackFrame>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="SubFunction"
NextStatement="FunctionLifetime.cs:29,4-29,40" />
</SelectedStackFrame>
<DebuggingPaused>Break</DebuggingPaused>
<Old_StackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Function">
<ArgumentCount exception="StackFrame has expired" />
<Depth>0</Depth>
<HasExpired>True</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Function</MethodInfo>
<NextStatement exception="StackFrame has expired" />
<Old_StackFrame>
<StackFrame
ArgumentCount="{Exception: StackFrame has expired}"
Depth="0"
HasExpired="True"
HasSymbols="True"
MethodInfo="Function"
NextStatement="{Exception: StackFrame has expired}" />
</Old_StackFrame>
<SelectedStackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Function">
<ArgumentCount>1</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Function</MethodInfo>
<NextStatement>FunctionLifetime.cs:24,4-24,40</NextStatement>
<SelectedStackFrame>
<StackFrame
ArgumentCount="1"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Function"
NextStatement="FunctionLifetime.cs:24,4-24,40" />
</SelectedStackFrame>
<DebuggingPaused>Break</DebuggingPaused>
<Main Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Main">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Main</MethodInfo>
<NextStatement>FunctionLifetime.cs:17,4-17,40</NextStatement>
<Main>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Main"
NextStatement="FunctionLifetime.cs:17,4-17,40" />
</Main>
<Old_StackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Function">
<ArgumentCount exception="StackFrame has expired" />
<Depth>0</Depth>
<HasExpired>True</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Function</MethodInfo>
<NextStatement exception="StackFrame has expired" />
<Old_StackFrame>
<StackFrame
ArgumentCount="{Exception: StackFrame has expired}"
Depth="0"
HasExpired="True"
HasSymbols="True"
MethodInfo="Function"
NextStatement="{Exception: StackFrame has expired}" />
</Old_StackFrame>
<SelectedStackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.FunctionLifetime.Main">
<ArgumentCount>0</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Main</MethodInfo>
<NextStatement>FunctionLifetime.cs:17,4-17,40</NextStatement>
<SelectedStackFrame>
<StackFrame
ArgumentCount="0"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Main"
NextStatement="FunctionLifetime.cs:17,4-17,40" />
</SelectedStackFrame>
<ProcessExited />
</Test>

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

@ -43,86 +43,92 @@ namespace Debugger.Tests { @@ -43,86 +43,92 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="FunctionLocalVariables.cs">
<Test
name="FunctionLocalVariables.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">FunctionLocalVariables.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>FunctionLocalVariables.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<LocalVariables Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="i = 0">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>0</AsString>
<Expression>i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>0</PrimitiveValue>
<Type>System.Int32</Type>
<LocalVariables>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="0"
Expression="i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="0"
Type="System.Int32" />
</Item>
<Item Type="Value" ToString="s = S">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>S</AsString>
<Expression>s</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>S</PrimitiveValue>
<Type>System.String</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="S"
Expression="s"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="S"
Type="System.String" />
</Item>
<Item Type="Value" ToString="args = {System.String[]}">
<ArrayDimensions>[1]</ArrayDimensions>
<ArrayLenght>1</ArrayLenght>
<ArrayRank>1</ArrayRank>
<AsString>{System.String[]}</AsString>
<Expression>args</Expression>
<HasExpired>False</HasExpired>
<IsArray>True</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.String[]</Type>
<Item>
<Value
ArrayDimensions="[1]"
ArrayLenght="1"
ArrayRank="1"
AsString="{System.String[]}"
Expression="args"
HasExpired="False"
IsArray="True"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.String[]" />
</Item>
<Item Type="Value" ToString="n = null">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>null</AsString>
<Expression>n</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>True</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Object</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="null"
Expression="n"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="True"
IsObject="False"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Object" />
</Item>
<Item Type="Value" ToString="o = {System.Object}">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>{System.Object}</AsString>
<Expression>o</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type>System.Object</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="{System.Object}"
Expression="o"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="True"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="System.Object" />
</Item>
</LocalVariables>
<ProcessExited />

587
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/FunctionVariablesLifetime.cs

@ -93,314 +93,335 @@ namespace Debugger.Tests { @@ -93,314 +93,335 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="FunctionVariablesLifetime.cs">
<Test
name="FunctionVariablesLifetime.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">FunctionVariablesLifetime.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>FunctionVariablesLifetime.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<argument Type="Value" ToString="argument = 1">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>1</AsString>
<Expression>argument</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>1</PrimitiveValue>
<Type>System.Int32</Type>
<argument>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="1"
Expression="argument"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="1"
Type="System.Int32" />
</argument>
<local Type="Value" ToString="local = 2">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>2</AsString>
<Expression>local</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>2</PrimitiveValue>
<Type>System.Int32</Type>
<local>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="2"
Expression="local"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="2"
Type="System.Int32" />
</local>
<_x0040_class Type="Value" ToString="this.class = 3">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>3</AsString>
<Expression>this.class</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>3</PrimitiveValue>
<Type>System.Int32</Type>
<_x0040_class>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="3"
Expression="this.class"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="3"
Type="System.Int32" />
</_x0040_class>
<DebuggingPaused>Break</DebuggingPaused>
<argument Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>argument</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<argument>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="argument"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</argument>
<local Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>local</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<local>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="local"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</local>
<_x0040_class Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>this.class</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<_x0040_class>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="this.class"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</_x0040_class>
<localInSubFunction Type="Value" ToString="localInSubFunction = 4">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>4</AsString>
<Expression>localInSubFunction</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>4</PrimitiveValue>
<Type>System.Int32</Type>
<localInSubFunction>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="4"
Expression="localInSubFunction"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="4"
Type="System.Int32" />
</localInSubFunction>
<DebuggingPaused>Break</DebuggingPaused>
<argument Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>argument</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<argument>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="argument"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</argument>
<local Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>local</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<local>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="local"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</local>
<_x0040_class Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>this.class</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<_x0040_class>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="this.class"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</_x0040_class>
<localInSubFunction Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>localInSubFunction</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<localInSubFunction>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="localInSubFunction"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</localInSubFunction>
<DebuggingPaused>Break</DebuggingPaused>
<argument Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>argument</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<argument>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="argument"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</argument>
<local Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>local</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<local>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="local"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</local>
<_x0040_class Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>this.class</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<_x0040_class>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="this.class"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</_x0040_class>
<localInSubFunction Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>localInSubFunction</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<localInSubFunction>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="localInSubFunction"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</localInSubFunction>
<localInSubFunction_x0028_new_x0029_ Type="Value" ToString="localInSubFunction = 4">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>4</AsString>
<Expression>localInSubFunction</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>4</PrimitiveValue>
<Type>System.Int32</Type>
<localInSubFunction_x0028_new_x0029_>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="4"
Expression="localInSubFunction"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="4"
Type="System.Int32" />
</localInSubFunction_x0028_new_x0029_>
<DebuggingPaused>Break</DebuggingPaused>
<argument Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>argument</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<argument>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="argument"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</argument>
<local Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>local</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<local>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="local"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</local>
<_x0040_class Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>this.class</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<_x0040_class>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="this.class"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</_x0040_class>
<localInSubFunction Type="Value" ToString_exception="Value has expired">
<ArrayDimensions exception="Value has expired" />
<ArrayLenght exception="Value has expired" />
<ArrayRank exception="Value has expired" />
<AsString exception="Value has expired" />
<Expression>localInSubFunction</Expression>
<HasExpired>True</HasExpired>
<IsArray exception="Value has expired" />
<IsInteger exception="Value has expired" />
<IsNull exception="Value has expired" />
<IsObject exception="Value has expired" />
<IsPrimitive exception="Value has expired" />
<PrimitiveValue exception="Value has expired" />
<Type>System.Int32</Type>
<localInSubFunction>
<Value
ArrayDimensions="{Exception: Value has expired}"
ArrayLenght="{Exception: Value has expired}"
ArrayRank="{Exception: Value has expired}"
AsString="{Exception: Value has expired}"
Expression="localInSubFunction"
HasExpired="True"
IsArray="{Exception: Value has expired}"
IsInteger="{Exception: Value has expired}"
IsNull="{Exception: Value has expired}"
IsObject="{Exception: Value has expired}"
IsPrimitive="{Exception: Value has expired}"
PrimitiveValue="{Exception: Value has expired}"
Type="System.Int32" />
</localInSubFunction>
<ProcessExited />
</Test>

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

File diff suppressed because it is too large Load Diff

13
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/HelloWorld.cs

@ -38,13 +38,14 @@ namespace Debugger.Tests { @@ -38,13 +38,14 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="HelloWorld.cs">
<Test
name="HelloWorld.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">HelloWorld.exe</ModuleLoaded>
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>HelloWorld.exe (Has symbols)</ModuleLoaded>
<ModuleLoaded>System.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Configuration.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Xml.dll (No symbols)</ModuleLoaded>
<LogMessage>Hello world!\r\n</LogMessage>
<ProcessExited />
</Test>

149
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/MainThreadExit.cs

@ -53,86 +53,89 @@ namespace Debugger.Tests { @@ -53,86 +53,89 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="MainThreadExit.cs">
<Test
name="MainThreadExit.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">MainThreadExit.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>MainThreadExit.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ThreadsBeforeExit Type="ReadOnlyCollection`1" ToString="System.Collections.ObjectModel.ReadOnlyCollection`1[Debugger.Thread]">
<Count>2</Count>
<Item Type="Thread" ToString="Thread Name = Suspended = False">
<CurrentException>null</CurrentException>
<CurrentExceptionIsUnhandled>False</CurrentExceptionIsUnhandled>
<CurrentExceptionType>0</CurrentExceptionType>
<HasExited>False</HasExited>
<IsAtSafePoint>True</IsAtSafePoint>
<IsInValidState>True</IsInValidState>
<IsMostRecentStackFrameNative>False</IsMostRecentStackFrameNative>
<MostRecentStackFrame>Debugger.Tests.TestPrograms.MainThreadExit.Main</MostRecentStackFrame>
<MostRecentStackFrameWithLoadedSymbols>Debugger.Tests.TestPrograms.MainThreadExit.Main</MostRecentStackFrameWithLoadedSymbols>
<Name>
</Name>
<OldestStackFrame>Debugger.Tests.TestPrograms.MainThreadExit.Main</OldestStackFrame>
<Priority>Normal</Priority>
<RuntimeValue>? = {System.Threading.Thread}</RuntimeValue>
<SelectedStackFrame>Debugger.Tests.TestPrograms.MainThreadExit.Main</SelectedStackFrame>
<Suspended>False</Suspended>
<ThreadsBeforeExit
Count="2">
<Item>
<Thread
CurrentException="null"
CurrentExceptionIsUnhandled="False"
CurrentExceptionType="0"
HasExited="False"
IsAtSafePoint="True"
IsInValidState="True"
IsMostRecentStackFrameNative="False"
MostRecentStackFrame="Debugger.Tests.TestPrograms.MainThreadExit.Main"
MostRecentStackFrameWithLoadedSymbols="Debugger.Tests.TestPrograms.MainThreadExit.Main"
Name=""
OldestStackFrame="Debugger.Tests.TestPrograms.MainThreadExit.Main"
Priority="Normal"
RuntimeValue="? = {System.Threading.Thread}"
SelectedStackFrame="Debugger.Tests.TestPrograms.MainThreadExit.Main"
Suspended="False" />
</Item>
<Item Type="Thread" ToString="Thread Name = Worker thread Suspended = False">
<CurrentException>null</CurrentException>
<CurrentExceptionIsUnhandled>False</CurrentExceptionIsUnhandled>
<CurrentExceptionType>0</CurrentExceptionType>
<HasExited>False</HasExited>
<IsAtSafePoint>True</IsAtSafePoint>
<IsInValidState>True</IsInValidState>
<IsMostRecentStackFrameNative>False</IsMostRecentStackFrameNative>
<MostRecentStackFrame>System.Threading.WaitHandle.WaitOne</MostRecentStackFrame>
<MostRecentStackFrameWithLoadedSymbols>Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime</MostRecentStackFrameWithLoadedSymbols>
<Name>Worker thread</Name>
<OldestStackFrame>System.Threading.ThreadHelper.ThreadStart</OldestStackFrame>
<Priority>Normal</Priority>
<RuntimeValue>? = {System.Threading.Thread}</RuntimeValue>
<SelectedStackFrame>null</SelectedStackFrame>
<Suspended>False</Suspended>
<Item>
<Thread
CurrentException="null"
CurrentExceptionIsUnhandled="False"
CurrentExceptionType="0"
HasExited="False"
IsAtSafePoint="True"
IsInValidState="True"
IsMostRecentStackFrameNative="False"
MostRecentStackFrame="System.Threading.WaitHandle.WaitOne"
MostRecentStackFrameWithLoadedSymbols="Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime"
Name="Worker thread"
OldestStackFrame="System.Threading.ThreadHelper.ThreadStart"
Priority="Normal"
RuntimeValue="? = {System.Threading.Thread}"
SelectedStackFrame="null"
Suspended="False" />
</Item>
</ThreadsBeforeExit>
<DebuggingPaused>ForcedBreak</DebuggingPaused>
<ThreadsAfterExit Type="ReadOnlyCollection`1" ToString="System.Collections.ObjectModel.ReadOnlyCollection`1[Debugger.Thread]">
<Count>2</Count>
<Item Type="Thread" ToString="Thread Name = Suspended = False">
<CurrentException>null</CurrentException>
<CurrentExceptionIsUnhandled>False</CurrentExceptionIsUnhandled>
<CurrentExceptionType>0</CurrentExceptionType>
<HasExited>False</HasExited>
<IsAtSafePoint>False</IsAtSafePoint>
<IsInValidState>False</IsInValidState>
<IsMostRecentStackFrameNative>False</IsMostRecentStackFrameNative>
<MostRecentStackFrame>null</MostRecentStackFrame>
<MostRecentStackFrameWithLoadedSymbols>null</MostRecentStackFrameWithLoadedSymbols>
<Name>
</Name>
<OldestStackFrame>null</OldestStackFrame>
<Priority>Normal</Priority>
<RuntimeValue exception="The state of the thread is invalid. (Exception from HRESULT: 0x8013132D)" />
<SelectedStackFrame>null</SelectedStackFrame>
<Suspended>False</Suspended>
<ThreadsAfterExit
Count="2">
<Item>
<Thread
CurrentException="null"
CurrentExceptionIsUnhandled="False"
CurrentExceptionType="0"
HasExited="False"
IsAtSafePoint="False"
IsInValidState="False"
IsMostRecentStackFrameNative="False"
MostRecentStackFrame="null"
MostRecentStackFrameWithLoadedSymbols="null"
Name=""
OldestStackFrame="null"
Priority="Normal"
RuntimeValue="{Exception: The state of the thread is invalid. (Exception from HRESULT: 0x8013132D)}"
SelectedStackFrame="null"
Suspended="False" />
</Item>
<Item Type="Thread" ToString="Thread Name = Worker thread Suspended = False">
<CurrentException>null</CurrentException>
<CurrentExceptionIsUnhandled>False</CurrentExceptionIsUnhandled>
<CurrentExceptionType>0</CurrentExceptionType>
<HasExited>False</HasExited>
<IsAtSafePoint>True</IsAtSafePoint>
<IsInValidState>True</IsInValidState>
<IsMostRecentStackFrameNative>False</IsMostRecentStackFrameNative>
<MostRecentStackFrame>System.Threading.WaitHandle.WaitOne</MostRecentStackFrame>
<MostRecentStackFrameWithLoadedSymbols>Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime</MostRecentStackFrameWithLoadedSymbols>
<Name>Worker thread</Name>
<OldestStackFrame>System.Threading.ThreadHelper.ThreadStart</OldestStackFrame>
<Priority>Normal</Priority>
<RuntimeValue>? = {System.Threading.Thread}</RuntimeValue>
<SelectedStackFrame>Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime</SelectedStackFrame>
<Suspended>False</Suspended>
<Item>
<Thread
CurrentException="null"
CurrentExceptionIsUnhandled="False"
CurrentExceptionType="0"
HasExited="False"
IsAtSafePoint="True"
IsInValidState="True"
IsMostRecentStackFrameNative="False"
MostRecentStackFrame="System.Threading.WaitHandle.WaitOne"
MostRecentStackFrameWithLoadedSymbols="Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime"
Name="Worker thread"
OldestStackFrame="System.Threading.ThreadHelper.ThreadStart"
Priority="Normal"
RuntimeValue="? = {System.Threading.Thread}"
SelectedStackFrame="Debugger.Tests.TestPrograms.MainThreadExit.WaitForALongTime"
Suspended="False" />
</Item>
</ThreadsAfterExit>
<ProcessExited />

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/MetadataIdentity.cs

@ -52,10 +52,11 @@ namespace Debugger.Tests { @@ -52,10 +52,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="MetadataIdentity.cs">
<Test
name="MetadataIdentity.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">MetadataIdentity.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>MetadataIdentity.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />

381
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/PrimitiveValue.cs

@ -50,183 +50,220 @@ namespace Debugger.Tests { @@ -50,183 +50,220 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="PrimitiveValue.cs">
<Test
name="PrimitiveValue.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">PrimitiveValue.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>PrimitiveValue.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<locals Type="Value[]" ToString="Debugger.Value[]">
<Item Type="Value" ToString="b = True">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>True</AsString>
<Expression>b</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>True</PrimitiveValue>
<Type Type="DebugType" ToString="System.Boolean">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.Boolean</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>True</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>System.Boolean</ManagedType>
<Module exception="The type is not a class or value type." />
</Type>
<locals>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="True"
Expression="b"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="True"
Type="System.Boolean">
<Type>
<DebugType
BaseType="System.Object"
FullName="System.Boolean"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="True"
IsValueType="False"
ManagedType="System.Boolean"
Module="{Exception: The type is not a class or value type.}">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</Type>
</Value>
</Item>
<Item Type="Value" ToString="i = 5">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>5</AsString>
<Expression>i</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>True</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>5</PrimitiveValue>
<Type Type="DebugType" ToString="System.Int32">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.Int32</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>True</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>True</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>System.Int32</ManagedType>
<Module exception="The type is not a class or value type." />
</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="5"
Expression="i"
HasExpired="False"
IsArray="False"
IsInteger="True"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="5"
Type="System.Int32">
<Type>
<DebugType
BaseType="System.Object"
FullName="System.Int32"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="True"
IsInterface="False"
IsPrimitive="True"
IsValueType="False"
ManagedType="System.Int32"
Module="{Exception: The type is not a class or value type.}">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</Type>
</Value>
</Item>
<Item Type="Value" ToString="s = five">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>five</AsString>
<Expression>s</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>five</PrimitiveValue>
<Type Type="DebugType" ToString="System.String">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.String</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>True</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>System.String</ManagedType>
<Module exception="The type is not a class or value type." />
</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="five"
Expression="s"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="five"
Type="System.String">
<Type>
<DebugType
BaseType="System.Object"
FullName="System.String"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="True"
IsValueType="False"
ManagedType="System.String"
Module="{Exception: The type is not a class or value type.}">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</Type>
</Value>
</Item>
<Item Type="Value" ToString="d = 5.5">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>5.5</AsString>
<Expression>d</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>False</IsObject>
<IsPrimitive>True</IsPrimitive>
<PrimitiveValue>5.5</PrimitiveValue>
<Type Type="DebugType" ToString="System.Double">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.Double</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>True</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>System.Double</ManagedType>
<Module exception="The type is not a class or value type." />
</Type>
<Item>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="5.5"
Expression="d"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="False"
IsPrimitive="True"
PrimitiveValue="5.5"
Type="System.Double">
<Type>
<DebugType
BaseType="System.Object"
FullName="System.Double"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="True"
IsValueType="False"
ManagedType="System.Double"
Module="{Exception: The type is not a class or value type.}">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</Type>
</Value>
</Item>
</locals>
<b_as_string>True</b_as_string>

13
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/SetIP.cs

@ -45,13 +45,14 @@ namespace Debugger.Tests { @@ -45,13 +45,14 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="SetIP.cs">
<Test
name="SetIP.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">SetIP.exe</ModuleLoaded>
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>SetIP.exe (Has symbols)</ModuleLoaded>
<ModuleLoaded>System.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Configuration.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Xml.dll (No symbols)</ModuleLoaded>
<LogMessage>1\r\n</LogMessage>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>SetIP</DebuggingPaused>

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/SimpleProgram.cs

@ -38,10 +38,11 @@ namespace Debugger.Tests { @@ -38,10 +38,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="SimpleProgram.cs">
<Test
name="SimpleProgram.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">SimpleProgram.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>SimpleProgram.exe (Has symbols)</ModuleLoaded>
<ProcessExited />
</Test>
</DebuggerTests>

25
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/StackOverflow.cs

@ -45,21 +45,22 @@ namespace Debugger.Tests { @@ -45,21 +45,22 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="StackOverflow.cs">
<Test
name="StackOverflow.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">StackOverflow.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>StackOverflow.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ExceptionThrown>
</ExceptionThrown>
<ExceptionThrown></ExceptionThrown>
<DebuggingPaused>Exception</DebuggingPaused>
<LastStackFrame Type="StackFrame" ToString="Debugger.Tests.TestPrograms.StackOverflow.Fun">
<ArgumentCount>1</ArgumentCount>
<Depth>0</Depth>
<HasExpired>False</HasExpired>
<HasSymbols>True</HasSymbols>
<MethodInfo>Fun</MethodInfo>
<NextStatement>StackOverflow.cs:21,3-21,4</NextStatement>
<LastStackFrame>
<StackFrame
ArgumentCount="1"
Depth="0"
HasExpired="False"
HasSymbols="True"
MethodInfo="Fun"
NextStatement="StackOverflow.cs:21,3-21,4" />
</LastStackFrame>
<ProcessExited />
</Test>

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

@ -77,17 +77,18 @@ namespace Debugger.Tests { @@ -77,17 +77,18 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="Stepping.cs">
<Test
name="Stepping.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">Stepping.exe</ModuleLoaded>
<ModuleLoaded symbols="False">System.dll</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>Stepping.exe (Has symbols)</ModuleLoaded>
<ModuleLoaded>System.dll (No symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<NextStatement>Stepping.cs:16,4-16,40</NextStatement>
<DebuggingPaused>StepComplete</DebuggingPaused>
<NextStatement>Stepping.cs:17,4-17,44</NextStatement>
<ModuleLoaded symbols="False">System.Configuration.dll</ModuleLoaded>
<ModuleLoaded symbols="False">System.Xml.dll</ModuleLoaded>
<ModuleLoaded>System.Configuration.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>System.Xml.dll (No symbols)</ModuleLoaded>
<LogMessage>1\r\n</LogMessage>
<DebuggingPaused>StepComplete</DebuggingPaused>
<NextStatement>Stepping.cs:18,4-18,10</NextStatement>

11
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/TerminatePausedProcess.cs

@ -40,15 +40,16 @@ namespace Debugger.Tests { @@ -40,15 +40,16 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="TerminatePausedProcess.cs">
<Test
name="TerminatePausedProcess.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">TerminatePausedProcess.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>TerminatePausedProcess.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">TerminatePausedProcess.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>TerminatePausedProcess.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />
</Test>

11
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/TerminateRunningProcess.cs

@ -52,17 +52,18 @@ namespace Debugger.Tests { @@ -52,17 +52,18 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="TerminateRunningProcess.cs">
<Test
name="TerminateRunningProcess.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">TerminateRunningProcess.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>TerminateRunningProcess.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>StepComplete</DebuggingPaused>
<Log>Calling terminate</Log>
<ProcessExited />
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">TerminateRunningProcess.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>TerminateRunningProcess.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<DebuggingPaused>StepComplete</DebuggingPaused>
<Log>Calling terminate</Log>

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

@ -47,67 +47,80 @@ namespace Debugger.Tests { @@ -47,67 +47,80 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="ValueType.cs">
<Test
name="ValueType.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">ValueType.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>ValueType.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<this Type="Value" ToString="this = {Debugger.Tests.ValueType}">
<ArrayDimensions exception="Value is not an array" />
<ArrayLenght exception="Value is not an array" />
<ArrayRank exception="Value is not an array" />
<AsString>{Debugger.Tests.ValueType}</AsString>
<Expression>this</Expression>
<HasExpired>False</HasExpired>
<IsArray>False</IsArray>
<IsInteger>False</IsInteger>
<IsNull>False</IsNull>
<IsObject>True</IsObject>
<IsPrimitive>False</IsPrimitive>
<PrimitiveValue exception="Value is not a primitive type" />
<Type Type="DebugType" ToString="Debugger.Tests.ValueType">
<BaseType Type="DebugType" ToString="System.ValueType">
<BaseType Type="DebugType" ToString="System.Object">
<BaseType>null</BaseType>
<FullName>System.Object</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>System.ValueType</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>True</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>False</IsValueType>
<ManagedType>null</ManagedType>
<Module>mscorlib.dll</Module>
</BaseType>
<FullName>Debugger.Tests.ValueType</FullName>
<HasElementType>False</HasElementType>
<Interfaces>System.Collections.Generic.List`1[Debugger.MetaData.DebugType]</Interfaces>
<IsArray>False</IsArray>
<IsClass>False</IsClass>
<IsGenericType>False</IsGenericType>
<IsInteger>False</IsInteger>
<IsInterface>False</IsInterface>
<IsPrimitive>False</IsPrimitive>
<IsValueType>True</IsValueType>
<ManagedType>null</ManagedType>
<Module>ValueType.exe</Module>
</Type>
<this>
<Value
ArrayDimensions="{Exception: Value is not an array}"
ArrayLenght="{Exception: Value is not an array}"
ArrayRank="{Exception: Value is not an array}"
AsString="{Debugger.Tests.ValueType}"
Expression="this"
HasExpired="False"
IsArray="False"
IsInteger="False"
IsNull="False"
IsObject="True"
IsPrimitive="False"
PrimitiveValue="{Exception: Value is not a primitive type}"
Type="Debugger.Tests.ValueType">
<Type>
<DebugType
BaseType="System.ValueType"
FullName="Debugger.Tests.ValueType"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="False"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="True"
ManagedType="null"
Module="ValueType.exe">
<BaseType>
<DebugType
BaseType="System.Object"
FullName="System.ValueType"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>
<DebugType
BaseType="null"
FullName="System.Object"
HasElementType="False"
Interfaces="System.Collections.Generic.List`1[Debugger.MetaData.DebugType]"
IsArray="False"
IsClass="True"
IsGenericType="False"
IsInteger="False"
IsInterface="False"
IsPrimitive="False"
IsValueType="False"
ManagedType="null"
Module="mscorlib.dll">
<BaseType>null</BaseType>
</DebugType>
</BaseType>
</DebugType>
</BaseType>
</DebugType>
</Type>
</Value>
</this>
<ProcessExited />
</Test>

7
src/AddIns/Misc/Debugger/Debugger.Tests/Project/Src/TestPrograms/_Template.cs

@ -36,10 +36,11 @@ namespace Debugger.Tests { @@ -36,10 +36,11 @@ namespace Debugger.Tests {
#if EXPECTED_OUTPUT
<?xml version="1.0" encoding="utf-8"?>
<DebuggerTests>
<Test name="_Template.cs">
<Test
name="_Template.cs">
<ProcessStarted />
<ModuleLoaded symbols="False">mscorlib.dll</ModuleLoaded>
<ModuleLoaded symbols="True">_Template.exe</ModuleLoaded>
<ModuleLoaded>mscorlib.dll (No symbols)</ModuleLoaded>
<ModuleLoaded>_Template.exe (Has symbols)</ModuleLoaded>
<DebuggingPaused>Break</DebuggingPaused>
<ProcessExited />
</Test>

Loading…
Cancel
Save