static void Main(string[] args) { var runner = new KoanRunner(); var result = runner.ExecuteKoans(); if (result is KoanResult.Success) { var success = (KoanResult.Success)result; Console.WriteLine(success.Item); } else if (result is KoanResult.Failure) { var failure = (KoanResult.Failure)result; var ex = failure.Item2; Console.Write(failure.Item1); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("You have not yet reached enlightenment ..."); Console.WriteLine(ex.Message); Console.WriteLine(); Console.WriteLine("Please meditate on the following code:"); Console.WriteLine(ex.StackTrace); } Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }
public void Execute() { var runner = new KoanRunner(containers); var result = runner.ExecuteKoans(); if (result is Success) { Console.WriteLine(result.Message); } else { var failure = result as Failure; Console.WriteLine(result.Message); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine("You have not yet reached enlightenment ..."); Console.WriteLine(failure.Message); Console.WriteLine(""); Console.WriteLine("Please meditate on the following code:"); Console.WriteLine(failure.Exception.StackTrace); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine("Press any key to continue..."); System.Console.ReadKey(); } }
public void OutputContainsContainerNameFollowedByKoanResultsAndStopsOnFailure() { var runner = new KoanRunner(new List <KoanContainer> { new ContainerOne(), new ContainerTwo() }); var result = runner.ExecuteKoans(); var expected = @" When contemplating ContainerOne: One has expanded your awareness. Two has expanded your awareness. Three has expanded your awareness. When contemplating ContainerTwo: Four has expanded your awareness. Five has damaged your karma."; Assert.AreEqual(expected, result.Message); }