public void WithReceiptItem_should_return_ReceiptItemSetAssertions() { var receiptItems = ReceiptItemTestData.CreateRandomReceiptItems(); var receiptCard = new ReceiptCard(items: receiptItems); var sut = new ReceiptCardAssertions(receiptCard); sut.WithReceiptItem().Should().BeAssignableTo <ReceiptItemSetAssertions>().And.NotBeNull(); }
public void WithCardImage_should_return_CardImageAssertions() { var cardImage = new CardImage(); var receiptItems = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(image: cardImage); var sut = new ReceiptItemSetAssertions(receiptItems); sut.WithCardImage().Should().BeAssignableTo <CardImageSetAssertions>().And.NotBeNull(); }
public void WithTapAction_should_return_CardActionAssertions() { var tap = new CardAction(); var receiptItems = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(tap: tap); var sut = new ReceiptItemSetAssertions(receiptItems); sut.WithTapAction().Should().BeAssignableTo <CardActionSetAssertions>().And.NotBeNull(); }
public void WithReceiptItem_should_return_ReceiptItemSetAssertions() { var receiptItems = ReceiptItemTestData.CreateRandomReceiptItems(); var cards = ReceiptCardTestData.CreateReceiptCardSetWithOneCardThatHasSetProperties(items: receiptItems); var sut = new ReceiptCardSetAssertions(cards); sut.WithReceiptItem().Should().BeAssignableTo <ReceiptItemSetAssertions>().And.NotBeNull(); }
public void TextMatching_should_pass_if_regex_exactly_matches_Text_of_at_least_1_item_regardless_of_case(string itemText, string regex) { var items = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(text: itemText); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching(regex); act.ShouldNotThrow <Exception>(); }
public void TextMatching_should_pass_if_regex_exactly_matches_message_Text_of_one_item(string itemTextAndRegex) { var items = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(text: itemTextAndRegex); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching(itemTextAndRegex); act.ShouldNotThrow <Exception>(); }
public void TextMatching_should_throw_ArgumentNullException_if_regex_is_null() { var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching(null); act.ShouldThrow <ArgumentNullException>(); }
public void TextMatching_should_throw_ReceiptItemAssertionFailedException_when_regex_matches_no_items(string regex) { var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching(regex); act.ShouldThrow <ReceiptItemAssertionFailedException>(); }
public void TextMatching_should_pass_when_using_standard_regex_features(string itemText, string regex) { var items = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(text: itemText); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching(regex); act.ShouldNotThrow <Exception>(); }
public void TextMatching_should_throw_ArgumentNullException_if_groupMatchRegex_is_null() { IList <string> matches; var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching("(.*)", null, out matches); act.ShouldThrow <ArgumentNullException>(); }
public void TextMatching_should_not_output_matches_when_groupMatchingRegex_does_not_match_Text_of_any_item() { IList <string> matches; var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); sut.TextMatching(".*", "(non matching)", out matches); matches.Should().BeNull(); }
public void SubtitleMatching_should_throw_ArgumentNullException_if_when_capturing_groups_regex_is_null() { IList <string> matches; var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.SubtitleMatching(null, "(.*)", out matches); act.ShouldThrow <ArgumentNullException>(); }
public void TextMatching_should_output_matches_when_groupMatchingRegex_matches_Text_of_any_item() { IList <string> matches; const string someText = "some text"; var items = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(text: someText); var sut = new ReceiptItemSetAssertions(items); sut.TextMatching(someText, $"({someText})", out matches); matches.First().Should().Be(someText); }
public void Only_non_null_ReceiptItems_from_ReceiptItem_list_should_be_available_for_assertion() { var nonNullReceiptItems = ReceiptItemTestData.CreateRandomReceiptItems(); var receiptItems = new List <ReceiptItem> { null }; receiptItems.AddRange(nonNullReceiptItems); var sut = new ReceiptItemSetAssertions(receiptItems); sut.ReceiptItems.ShouldBeEquivalentTo(nonNullReceiptItems); }
public void TextMatching_should_not_output_matches_when_regex_does_not_match_Text_of_any_items() { IList <string> matches = null; var items = ReceiptItemTestData.CreateRandomReceiptItems(); var sut = new ReceiptItemSetAssertions(items); Action act = () => sut.TextMatching("non matching regex", "(some text)", out matches); act.ShouldThrow <ReceiptItemAssertionFailedException>(); matches.Should().BeNull(); }
public void TextMatching_should_output_multiple_matches_when_groupMatchingRegex_matches_Text_on_multiple_items() { IList <string> matches; var items = ReceiptItemTestData.CreateRandomReceiptItems(); items.Add(new ReceiptItem(text: "some text")); items.Add(new ReceiptItem(text: "same text")); var sut = new ReceiptItemSetAssertions(items); sut.TextMatching(".*", @"(s[oa]me) (text)", out matches); matches.Should().Contain("some", "same", "text"); }
public void TextMatching_should_output_multiple_matches_when_groupMatchingRegex_matches_Text_several_times_for_a_single_item() { IList <string> matches; const string someText = "some text"; var items = ReceiptItemTestData.CreateReceiptItemSetWithOneItemThatHasSetProperties(text: someText); var sut = new ReceiptItemSetAssertions(items); const string match1 = "some"; const string match2 = "text"; sut.TextMatching(someText, $"({match1}) ({match2})", out matches); matches.Should().Contain(match1, match2); }