public void UseUsingThrowsException() { Assert.Throws <InvalidOperationException>(delegate { //LOG: using(this.LogBlock(Flow.Enter)) { this.Log(Flow.Output("say hello")); try { this.Log(Flow.Throws(new InvalidOperationException("Test"))); throw Flow.LoggedException; } catch (InvalidOperationException ex) { this.Log(Flow.Catch(ex)); this.Log(Flow.Output("something wrong here")); this.Log(Flow.Retrow()); throw; } } }); }