Age | Commit message (Collapse) | Author |
|
The Invoke API now can take both an Action and an EventHandler. delegate {} causes ambiguous results.
|
|
Fixes BXC #53549
|
|
|
|
This is a tentative fix for a concurrency case on registering unit tests.
Based on the stacktrace in the bug report, this seems like the TestRecord
is modified concurrently, thus causing issues on getting an item that
would've been added/removed (i.e. array resize).
Bug 42513 - Test result store seems to be corrupted - internal error when running many tests
|
|
|
|
If the test store has corrupted data it may throw exceptions when
queried. Those exceptions are now catched and logged.
Fixes bug #44337 - Some test names are not shown in Unit Tests Pad.
|
|
Roslyn 2.x needs this so we have to do it for MonoDevelop.Core
and every assembly that references it.
|
|
|
|
|
|
Run all the selected unit tests, not just one of them.
Partially fixes #19843.
https://bugzilla.xamarin.com/show_bug.cgi?id=19843
|
|
This reverts commit cad2f34bd33a96d970dae80475cbf315b8f4a521.
|
|
Run all the selected unit tests, not just one of them.
Partially fixes #19843.
https://bugzilla.xamarin.com/show_bug.cgi?id=19843
|
|
|
|
|
|
|
|
|
|
throws error on large test suite
|
|
This allows us to see the real stacktrace causing the bug in 41921
|
|
translated string
|
|
With this change MultiStartupItems in solution is actually respected and user can right-click on any project while already debugging some project and execute "Start Debugging Item" command and debug both projects at same time.
Files changes:
DebuggingService.cs:
This is file with most changes...
Bunch of static variables and methods had to move into SessionManager and `session` was changed into `sessions`. This is important because some session callbacks don't have `sender` argument by having methods on SessionManager object we can distinguish for which method that call back is and static fields weren't able to handle multiple sessions...
currentSession field represents session that is currently paused and being inspected
SetupSession and CleanUp methods were adjusted to handle setting up/cleaning up single session instead of everything...
StopsQueue serves as way to let other processes run(as opposed to being paused) when 1st process hits breakpoint... So if 2nd process which is running also hits breakpoint, it doesn't interrupt user inspection of variable in 1st process(or any other use case that user has), but instead it stores this stop(breakpoint hit, exception catchpoint, stepping finished...) and when user who is interacting with 1st process presses Continue, StepOver... It Dequeues stop operation from queue and instantly switches to 2nd process view...
ProjectOperations.cs:
UnitTestService.cs:
Extensions.cs:
Before this commit CurrentRunOperation was overridden when new debug process was started if 2nd process finished before 1st it would signal that debugging is finished which in fact was not true since 1st process was still running, so MultipleAsyncOperation addresses this problem
DebugComamnds.cs:
I noticed that BuildAdnDebug command dines't do really what is says it does instead just starts debugging so I removed it(DebuggingService.IsDebuggingSupported is always true, otherwise we wouldn't get this far, in past Run without debugging was same command as Debug)
GetRunTarget is now GetRunTargets so we can handle MultiStartupItems
Changed few commands behaviours to allow "Start Debugging Item" when we are already debugging...
SourceEditorView.cs:
DebugValueWindow.cs:
DebugValueTooltipProvider:
StackTracePad.cs:
ObjectValuePad.cs:
DebugExecutionHandlerFactory.cs:
DisassemblyView.cs:
ImmediatePad.cs:
All this files handle the fact that Session can finish but more sessions might be still executing so cleanup has to be limited to specific session.
SourceEditorView.cs:
Beside above comment also calling new method DebuggingService.GetBreakpointStatus, which handles all sessions instead of just 1.
ThreadsPad.cs:
Calls new method DebuggingService.GetProcesses() which combines processes from all sessions.
|
|
|
|
|
|
|
|
|
|
The summary is shown in configuration selection lists.
|
|
* [AspNet] New template images
* [Ide] New project dialog template icons and images:
* Workspace
* Solution
* Project
* Shared Project
* Library Project
* PCL Project
* GUI Project
* Console Project
* Test Project
* Package Project
* [NUnit] New project dialog template icons and images
* [GetText] New project dialog template icons and images
* [Deployment] New project dialog template icons and images
|
|
As per 14872cd219d96421caee9a69935c474488fcf94b, we were no longer
checking whether the passed context was null.
The context we are not assigning as per this change will be fixed up by
TestContext in the constructor and assigned a fallback value.
Bug 41320 - Run Unit Tests from Run Menu isn't working. Shows NRE in log
|
|
Introduced SolutionItemRunConfiguration. RunConfiguraiton is now the
base class for all run configuration types.
Added IRunTarget, which is an executable entity.
Added stock execution modes, and added support for registering
handlers on them.
Created IConfigurableExecutionHandler, which can be used to configure
a project or handler before execution.
|
|
|
|
|
|
|
|
|
|
|
|
When a project contains unit tests, create a run configuration which
can be used to run them.
|
|
|
|
|
|
|
|
Groups pads inside pad view category lists (View menu)
by specified "group" identifiers, devidided by a separator.
The groups are ordered in alphabetical order, the
group names are not visible.
|
|
Commit 3ad588e98f4de560294567f034a9178cbd90b1f5 fixes this issue
for all PadTreeView based tables, hence this fix is obsolete.
This reverts commit 0bceafc1a793ad124de7252369ad74eb4a635cd1.
|
|
Getting the source code location is too slow.
|
|
|
|
in tree view nodes
This change is going to bring speed improvements after the optimizations done to AppendValues inside Gtk# are released.
Batch calls to AddChild, as the collection insertion is guarded against multiple resorts on insertion.
|
|
Fixed bug #39525 - UITests fail to run connect
https://bugzilla.xamarin.com/show_bug.cgi?id=39525
The UnitTestService fires an TestSessionStarting event just before the
test is started. The event args passed contains a TestSession. In
Xamarin Studio 5 there was a completed event on the TestSession that
could be used to indicate the test had finished. This completed event
has been replaced with a Task. At the time the TestSessionStarting
event is fired the Task is not yet started but the existing Task says
it is completed. Since the TestSession's Task is marked as completed
when the TestSessionStarting event is fired any action that uses the
Task will run straight away since the Task is already completed even
though the test has not been started yet.
To fix this the creation of the Task and the starting of it have been
separated. The TestSession's constructor creates a new unstarted Task
so it is available for any callers using the TestSessionStarting event.
After this event is fired the Task is started by the Start method,
which runs the tests.
|
|
|
|
|
|
[NUnit] Escape test names. Fixes #39210
|
|
|
|
created using [TestCase (TestName="blah")] the test name keeps
changing'
|
|
I needed to change the ConsoleFactory API a bit.
|
|
pad, Application output is brought to focus instead'
|