public void ListOfStrings_BecomesListOfAcceptableStringValues() { var valuesToTry = new[] { "One", "Three" }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.AString).ForValues(valuesToTry); sut.AcceptableValues.Should().BeEquivalentTo(valuesToTry); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectWithAStringOfOne).Should().BeTrue(); compiled.Invoke(ABusinessObjectWithAStringOfTwo).Should().BeFalse(); compiled.Invoke(ABusinessObjectWithAStringOfThree).Should().BeTrue(); }
public void ListOfInts_BecomesListOfAcceptableValues() { var valuesToTry = new List<int> { 1, 3 }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.AnInt).ForValues(valuesToTry); sut.AcceptableValues.Should().BeEquivalentTo(valuesToTry); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectWithAnIntOf1).Should().BeTrue(); compiled.Invoke(ABusinessObjectWithAnIntOf2).Should().BeFalse(); compiled.Invoke(ABusinessObjectWithAnIntOf3).Should().BeTrue(); }
public void SpacesAreIgnoreOnEitherSideOfitems() { var valuesToTry = new List<int> { 1, 3 }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.AnInt).ForValues(" 1 , 3 "); sut.AcceptableValues.Should().BeEquivalentTo(valuesToTry); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectWithAnIntOf1).Should().BeTrue(); compiled.Invoke(ABusinessObjectWithAnIntOf2).Should().BeFalse(); compiled.Invoke(ABusinessObjectWithAnIntOf3).Should().BeTrue(); }
public void MultipleCommaSeparatedDatesInStringForm_BecomeAcceptableDates() { var valuesToTry = new List<DateTime> { new DateTime(2010, 7, 25), new DateTime(2014, 5, 26) }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.ADateTime) .ForValues("7/25/2010, 5/26/2014"); sut.AcceptableValues.Should().BeEquivalentTo(valuesToTry); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectFor2010725).Should().BeTrue(); compiled.Invoke(ABusinessObjectFor2014526).Should().BeTrue(); compiled.Invoke(ABusinessObjectForTodaysDate).Should().BeFalse(); }
public void MultipleCommaSeparatedIntsInStringForm_BecomeAcceptableInts() { var valuesToTry = new List<int> { 1, 3 }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.AnInt).ForValues("1, 3"); sut.AcceptableValues.Should().BeEquivalentTo(valuesToTry); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectWithAnIntOf1).Should().BeTrue(); compiled.Invoke(ABusinessObjectWithAnIntOf2).Should().BeFalse(); compiled.Invoke(ABusinessObjectWithAnIntOf3).Should().BeTrue(); }
public void MultipleStringEntries_ForStringBasedSieve_BecomeMultipleAcceptableValues() { var expectedValues = new List<string> { "One", "Three" }; var sut = new EqualitySieve<ABusinessObject>().ForProperty(x => x.AString).ForValues("One, Three"); sut.AcceptableValues.ShouldBeEquivalentTo(expectedValues); var compiled = sut.ToCompiledExpression(); compiled.Invoke(ABusinessObjectWithAStringOfOne).Should().BeTrue(); compiled.Invoke(ABusinessObjectWithAStringOfTwo).Should().BeFalse(); compiled.Invoke(ABusinessObjectWithAStringOfThree).Should().BeTrue(); }