public void AFailingKoanReturnsItsException() { var container = new KoanContainer(); var result = container.RunKoans(new FailureContainer()).First(); Assert.AreEqual("FailureKoan has damaged your karma.", result.Message); }
public void TheOutcomeOfAllSuccessfulKoansIsReturned() { var result = new KoanContainer().RunKoans(new SomeSuccesses()).Select(x => x.Message).Aggregate((x, y) => x + System.Environment.NewLine + y); var expected = "One has expanded your awareness." + System.Environment.NewLine + "Two has expanded your awareness."; Assert.AreEqual(expected, result); }
public void AFailingKoanReturnsAFailureMessage() { var result = new KoanContainer().RunKoans(new FailureContainer()).First(); Assert.AreEqual("FailureKoan has damaged your karma.", result.Message); Assert.AreEqual("expected failure", (result as Failure).Exception.Message); }
////might want to change this behavior public void FailedKoansDontStopTheEnumeration() { var result = new KoanContainer().RunKoans(new MixedBag()).Select(x => x.Message).Aggregate((x, y) => x + System.Environment.NewLine + y); var expected = "One has damaged your karma." + System.Environment.NewLine + "Two has expanded your awareness."; Assert.AreEqual(expected, result); }
public void ASuccessfulKoanReturnsASuccessMessage() { var result = new KoanContainer().RunKoans(new SuccessContainer()).First(); Assert.AreEqual("SuccessKoan has expanded your awareness.", result.Message); }
private IList <string> GetKoanNames(KoanContainer container) { var names = from x in KoanContainer.FindKoanMethods(container) select x.Name; return(names.ToList()); }