public void CannotFindKindervriend() { // Arrange var handler = new KindervriendQueryHandlerBuilder().Build(); // Act Action zoekKindervriend = () => handler.ExecuteQuery("Boeman"); // Assert zoekKindervriend.Should().Throw <Exception>() .WithMessage("Wie is de Boeman?!!11!"); }
public void CannotFindKindervriend_MockBlacklist() { // Arrange var handler = new KindervriendQueryHandlerBuilder() .WithBlacklist(new Blacklist { "DIT-IS-GEEN-KINDERVRIEND" }) // <== hier kun je dus ook eventuele andere mocks gemaakt met Moq doorgeven .Build(); // Act Action act = () => handler.ExecuteQuery("DIT-IS-GEEN-KINDERVRIEND"); // Assert act.Should().Throw <Exception>() .WithMessage("Wie is de DIT-IS-GEEN-KINDERVRIEND?!!11!"); }
public void CanFindPerson_MaarWeZijnEchtAlleenInDeNaamGeinteresseerd() { // Arrange var handler = new KindervriendQueryHandlerBuilder().Build(); // <== BUILDER voor de SUT // Act var actual = handler.ExecuteQuery("Sinterklaas"); // Assert // Gebruik een builder zodat je alleen de relevante properties specificeert // Zodat je ook alleen maar die aspecten ziet in de test waar het om gaat. // We willen weten of de naam klopt. Andere aspecten boeit on (hier) niet. var expectedKindervriend = new KindervriendBuilder() .WithName("Sinterklaas") .Build(); // <== BUILDER voor objecten die je in test gebruikt // Bij testen kun je aangeven waar test naar moet kijken // Gebruik options om alleen te asserten op wat relevant is actual.Should().BeEquivalentTo(expectedKindervriend, options => options.Including(x => x.Name)); }