What steps will reproduce the problem?
1. Configure a gallio project to automatically run when an assembly changes.
2. Using Visual Studio 2010, rebuild your project. My project is using both
MBUnit and NUnit, as well as SpecFlow.
3. When Gallio reloads the project, it'll run the tests. The failure occurs at
the end of execution.
What is the expected output?
No errors.
What do you see instead?
No errors, but a dialog that tells me than an exception occurred in an event
handler. Gallio then locks the file, so a rebuild is no longer possible in
Visual Studio.
What version of the product are you using? On what operating system?
I'm using 3.2 build 517 on a Windows Vista OS with Visual Studio 2010. Both
gallio and Visual Studio are running as Administrator (I thought it might be a
permissions issue, but it didn't make any difference). In addition, I have AVG
antivirus running in the background, but the directory where my binaries are
going is explicitly listed in the virus scanner's exclusion list. This issue
occurs when I am using the Isolated Process test runner factory, as well as the
Local process.
As an additional curiosity, if I close and re-open gallio, this bug does not
occur the first time the binaries are reloaded by rebuilding in Visual Studio
2010, but it does occur on the second and subsequent runs. Also, when I turn
off the generation of reports after the test run, the problem goes away (so I
suspect it is there).
I'm generating reports in HTML format and auto-condensing when the test count
exceeds 100 (I only have 6 tests in this project so far).
Please provide any additional information below.
Stack trace:
System.IO.IOException: The requested operation cannot be performed on a file
with a user-mapped section open.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
at System.IO.FileInfo.Open(FileMode mode, FileAccess access, FileShare share)
at Gallio.UI.Reports.HtmlTestStepRunFormatter.Format(ICollection`1 stepRuns, TestModelData modelData)
at Gallio.UI.Reports.TestStepRunViewer.Show(ICollection`1 testStepRuns, TestModelData testModelData)
at Gallio.Common.Policies.EventHandlerPolicy.SafeInvoke[T](EventHandler`1 handlerChain, Object sender, T e) in c:\Server\Projects\MbUnit v3.2\Work\src\Gallio\Gallio\Common\Policies\EventHandlerPolicy.cs:line 69
Reported by:
UnhandledExceptionPolicy
at Gallio.Icarus.Controllers.ExecutionLogController.<Update>b__1(Report report)
at Gallio.Common.Concurrency.LockBox`1.Read(ReadAction`1 action) in c:\Server\Projects\MbUnit v3.2\Work\src\Gallio\Gallio\Common\Concurrency\LockBox.cs:line 61
at System.Threading.ExecutionContext.runTryCode(Object userData)
at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Please email williamwgant at yahoo dot com if you need any additional details.
Original issue reported on code.google.com by williamw...@gmail.com on 7 Sep 2010 at 11:37
Original issue reported on code.google.com by
williamw...@gmail.com
on 7 Sep 2010 at 11:37