public async Task DebugAsync_Good_Code_Run_Until_Breakpoint_WithStep_Over_CurrentLine_Should_Be_Equails_To(int breakpoint)
        {
            var session = new CSharpDebuggingSession(new CSharpDebugger());
            var result  = await session.DebugAsync(new BuildingTask("test", CSharpSnippets.GoodCode) { Breakpoints = new[] { breakpoint }, IsRunToNextBreakpoint = true });

            result = await session.DebugAsync(new BuildingTask("test", CSharpSnippets.GoodCode) { Breakpoints = new[] { breakpoint }, CurrentLine = ++result.CurrentLine });

            result.CurrentLine.Should().Be(breakpoint);
        }
        public void DebugAsync_Disposed_Should_Throw_ObjectDisposedException()
        {
            var session = new CSharpDebuggingSession(new CSharpDebugger());

            session.Dispose();
            Func <Task <BuildingResult> > act = () => session.DebugAsync(new BuildingTask(null, null));

            act.Should().ThrowExactly <ObjectDisposedException>();
        }