Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Karlaš <david.karlas@xamarin.com>2015-01-16 01:35:50 +0300
committerDavid Karlaš <david.karlas@xamarin.com>2015-01-16 11:33:26 +0300
commitcaa29ba135b0cdf89783cb1d68599014c557f580 (patch)
tree362b404df871f7bdbba970cb4584319c9e2c654e /main/src/addins/MonoDevelop.Debugger
parentae9bf9e6daa47822ca60cb060889091eed36d48e (diff)
[DebuggerTests] Few more tests
Diffstat (limited to 'main/src/addins/MonoDevelop.Debugger')
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests.TestApp/BreakpointsAndStepping.cs76
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/BreakpointsAndSteppingTests.cs69
2 files changed, 135 insertions, 10 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests.TestApp/BreakpointsAndStepping.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests.TestApp/BreakpointsAndStepping.cs
index 916eed3482..14d5b8a969 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests.TestApp/BreakpointsAndStepping.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests.TestApp/BreakpointsAndStepping.cs
@@ -150,6 +150,13 @@ namespace MonoDevelop.Debugger.Tests.TestApp
action ();/*f3b6862d-732b-4f68-81f5-f362d5a092e2*/
}
+ public static void BreakpointInsideOneLineDelegateNoDisplayClass ()
+ {
+ var button = new Button ();
+ button.Clicked += (sender, e) => Console.WriteLine (); /*e72a2fa6-2d95-4f96-b3d0-ba321da3cb55*/
+ button.MakeClick ();/*e0a96c37-577f-43e3-9a20-2cdd8bf7824e*/
+ }
+
public void BreakpointInsideOneLineDelegate ()
{
var button = new Button ();
@@ -158,6 +165,14 @@ namespace MonoDevelop.Debugger.Tests.TestApp
button.MakeClick ();/*67ae4cce-22b3-49d8-8221-7e5b26a5e79b*/
}
+ public void BreakpointInsideOneLineDelegateAsync ()
+ {
+ var button = new Button ();
+ int numClicks = 0;
+ button.Clicked += async (sender, e) => button.SetTitle (String.Format ("clicked {0} times", numClicks++));/*b6a65e9e-5db2-4850-969a-b3747b2459af*/
+ button.MakeClick ();
+ }
+
public class Button
{
public event EventHandler Clicked;
@@ -587,6 +602,67 @@ namespace MonoDevelop.Debugger.Tests.TestApp
FirstDayOfWeek = date.AddDays (-1 * (int)date.DayOfWeek);
}
}
+
+ public void TestBug25358 ()
+ {
+ try {
+ throw new Exception ("2b2c4423-accf-4c2c-af31-7d8dcee31c32");
+ } catch (IOException e) {
+ Console.WriteLine (e);
+ } catch (Exception e) {
+ Console.WriteLine (e);/*4b30f826-2ba0-4b53-ab36-85b2cdde1069*/
+ }
+ }
+
+ public void TestBug21410 ()
+ {
+ Bug21410.Test ();
+ }
+
+ class Bug21410
+ {
+
+ interface willy
+ {
+ }
+
+ class snarf
+ {
+ }
+
+ class flap : snarf, willy
+ {
+ }
+
+ class point
+ {
+ public string Acme = "";
+ public snarf Lst = new flap ();
+ }
+
+ class zork
+ {
+ public point Point = new point ();
+ }
+
+ class narf
+ {
+ public zork Zork = new zork ();
+ }
+
+ static narf _narf = new narf ();
+
+ public static void Test ()
+ {
+ doStuff (_narf.Zork.Point.Acme, _narf.Zork.Point.Acme, (willy)_narf.Zork.Point.Lst, _narf.Zork.Point.Acme, (willy)_narf.Zork.Point.Lst);/*5e6663d0-9088-40ad-914d-0fcc05b2d0d5*/
+ doStuff (_narf.Zork.Point.Acme, _narf.Zork.Point.Acme, (willy)_narf.Zork.Point.Lst, _narf.Zork.Point.Acme, (willy)_narf.Zork.Point.Lst);
+ }
+
+ static void doStuff (string str, string str2, willy lst, string str3,
+ willy lst2)
+ {
+ }
+ }
}
}
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/BreakpointsAndSteppingTests.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/BreakpointsAndSteppingTests.cs
index 490e669c76..782fbaa2c7 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/BreakpointsAndSteppingTests.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/BreakpointsAndSteppingTests.cs
@@ -103,9 +103,6 @@ namespace MonoDevelop.Debugger.Tests
[Test]
public void StaticConstructorStepping ()
{
- if (Session is SoftDebuggerSession) {
- Assert.Ignore ("Sdb can't step in static constructor.");
- }
InitializeTest ();
AddBreakpoint ("6c42f31b-ca4f-4963-bca1-7d7c163087f1");
StartTest ("StaticConstructorStepping");
@@ -505,14 +502,24 @@ namespace MonoDevelop.Debugger.Tests
}
[Test]
+ public void BreakpointInsideOneLineDelegateNoDisplayClass ()
+ {
+ InitializeTest ();
+ AddBreakpoint ("e0a96c37-577f-43e3-9a20-2cdd8bf7824e");
+ AddBreakpoint ("e72a2fa6-2d95-4f96-b3d0-ba321da3cb55", statement: "Console.WriteLine");
+ StartTest ("BreakpointInsideOneLineDelegateNoDisplayClass");
+ CheckPosition ("e0a96c37-577f-43e3-9a20-2cdd8bf7824e");
+ StepOver ("e72a2fa6-2d95-4f96-b3d0-ba321da3cb55", "Console.WriteLine");
+ StepOut ("3be64647-76c1-455b-a4a7-a21b37383dcb");
+ StepOut ("e0a96c37-577f-43e3-9a20-2cdd8bf7824e");
+ }
+
+ [Test]
public void BreakpointInsideOneLineDelegate ()
{
- if (Session is SoftDebuggerSession) {
- Assert.Ignore ("TODO: Atm debugger-libs is in charge of placing breakpoints. It either needs more information about Instructions or Runtime has to place breakpoints based on filename+line+column.");
- }
InitializeTest ();
AddBreakpoint ("67ae4cce-22b3-49d8-8221-7e5b26a5e79b");
- AddBreakpoint ("22af08d6-dafc-47f1-b8d1-bee1526840fd");
+ AddBreakpoint ("22af08d6-dafc-47f1-b8d1-bee1526840fd", statement: "button.SetTitle");
StartTest ("BreakpointInsideOneLineDelegate");
CheckPosition ("67ae4cce-22b3-49d8-8221-7e5b26a5e79b");
StepOver ("22af08d6-dafc-47f1-b8d1-bee1526840fd", "button.SetTitle");
@@ -520,6 +527,23 @@ namespace MonoDevelop.Debugger.Tests
StepOut ("67ae4cce-22b3-49d8-8221-7e5b26a5e79b");
}
+ [Test]
+ public void BreakpointInsideOneLineDelegateAsync ()
+ {
+ InitializeTest ();
+ AddBreakpoint ("b6a65e9e-5db2-4850-969a-b3747b2459af", statement: "button.SetTitle");
+ AddBreakpoint ("b6a65e9e-5db2-4850-969a-b3747b2459af", 1);
+ StartTest ("BreakpointInsideOneLineDelegateAsync");
+ CheckPosition ("b6a65e9e-5db2-4850-969a-b3747b2459af", 1);
+ StepOver ("b6a65e9e-5db2-4850-969a-b3747b2459af", "button.SetTitle");
+ if (Session is SoftDebuggerSession) {
+ StepOut ("3be64647-76c1-455b-a4a7-a21b37383dcb");
+ } else {
+ StepOut ("3be64647-76c1-455b-a4a7-a21b37383dcb", 1);//Feels like CorDebugger bug
+ }
+ StepOut ("b6a65e9e-5db2-4850-969a-b3747b2459af", 1);
+ }
+
/// <summary>
/// Bug 2851
/// </summary>
@@ -769,7 +793,7 @@ namespace MonoDevelop.Debugger.Tests
public void SetNextStatementTest ()
{
if (Session is SoftDebuggerSession) {
- Assert.Ignore ("TODO: Sdb SetNextStatment");
+ Assert.Ignore ("TODO: Bug 26033");
}
InitializeTest ();
AddBreakpoint ("eef5bea2-aaa6-4718-b26f-b35be6a6a13e");
@@ -784,7 +808,7 @@ namespace MonoDevelop.Debugger.Tests
public void SetNextStatementTest2 ()
{
if (Session is SoftDebuggerSession) {
- Assert.Ignore ("TODO: Sdb SetNextStatment");
+ Assert.Ignore ("TODO: Bug 26033");
}
InitializeTest ();
AddBreakpoint ("eef5bea2-aaa6-4718-b26f-b35be6a6a13e");
@@ -798,7 +822,7 @@ namespace MonoDevelop.Debugger.Tests
public void SetNextStatementTest3 ()
{
if (Session is SoftDebuggerSession) {
- Assert.Ignore ("TODO: Sdb SetNextStatment");
+ Assert.Ignore ("TODO: Bug 26033");
}
InitializeTest ();
AddBreakpoint ("f4e3a214-229e-44dd-9da2-db82ddfbec11", 1);
@@ -1069,6 +1093,31 @@ namespace MonoDevelop.Debugger.Tests
Assert.Fail ("Unexcpected Error list has following items:" + string.Join (",", unexpectedError));
if (unexpectedDebug.Count > 0)
Assert.Fail ("Unexcpected Debug list has following items:" + string.Join (",", unexpectedDebug));
+ }
+
+ [Test]
+ public void Bug25358 ()
+ {
+ InitializeTest ();
+ AddBreakpoint ("4b30f826-2ba0-4b53-ab36-85b2cdde1069");
+ StartTest ("TestBug25358");
+ CheckPosition ("4b30f826-2ba0-4b53-ab36-85b2cdde1069");
+ var val = Eval ("e");
+ val = val.GetChild ("Message");
+ Assert.AreEqual ("\"2b2c4423-accf-4c2c-af31-7d8dcee31c32\"", val.Value);
+ }
+
+ [Test]
+ public void Bug21410 ()
+ {
+ if (Session is SoftDebuggerSession) {
+ Assert.Ignore ("Runtime bug.");
+ }
+ InitializeTest ();
+ AddBreakpoint ("5e6663d0-9088-40ad-914d-0fcc05b2d0d5");
+ StartTest ("TestBug21410");
+ CheckPosition ("5e6663d0-9088-40ad-914d-0fcc05b2d0d5");
+ StepOver ("5e6663d0-9088-40ad-914d-0fcc05b2d0d5", 1);
}
}
}