Beispiel #1
0
        public void GivenAValidString_WhenParsed_ThenCorrectSearchValueShouldBeCreated()
        {
            NumberSearchValue value = NumberSearchValue.Parse("245234.34");

            Assert.NotNull(value);
            Assert.Equal(245234.34m, value.Number);
        }
Beispiel #2
0
        void ISearchValueVisitor.Visit(NumberSearchValue number)
        {
            if (number.Low == number.High)
            {
                AddProperty(SearchValueConstants.NumberName, number.Low);
            }

            AddProperty(SearchValueConstants.LowNumberName, number.Low);
            AddProperty(SearchValueConstants.HighNumberName, number.High);
        }
Beispiel #3
0
        public void GivenAStringWithTrailingZero_WhenParsed_ThenTrailingZeroShouldBePreserved()
        {
            string expected = "0.010";

            NumberSearchValue value = NumberSearchValue.Parse(expected);

            Assert.NotNull(value);
            Assert.Equal(0.010m, value.Number);
            Assert.Equal(expected, value.ToString());
        }
        public void GivenANumberSearchValue_WhenGenerated_ThenCorrectJObjectShouldBeCreated()
        {
            const decimal number = 1.25m;

            var value = new NumberSearchValue(number);

            TestAndValidateOutput(
                "number",
                value,
                new[] { CreateTuple("n", number) });
        }
        void ISearchValueVisitor.Visit(NumberSearchValue number)
        {
            EnsureArg.IsNotNull(number, nameof(number));

            if (_modifier != null)
            {
                ThrowModifierNotSupported();
            }

            _outputExpression = GenerateNumberExpression(FieldName.Number, number.Number);
        }
Beispiel #6
0
        public void GivenANumberSearchValueWithUnequalLowAndHighValues_WhenGenerated_ThenCorrectJObjectShouldBeCreated()
        {
            const decimal low  = 1.25m;
            const decimal high = 2.25m;

            var value = new NumberSearchValue(low, high);

            TestAndValidateOutput(
                "number",
                value,
                new[] { CreateTuple("ln", low), CreateTuple("hn", high) });
        }
        void ISearchValueVisitor.Visit(NumberSearchValue number)
        {
            EnsureArg.IsNotNull(number, nameof(number));

            if (_modifier != null)
            {
                ThrowModifierNotSupported();
            }

            Debug.Assert(number.Low.HasValue && number.Low == number.High, "number low and high should be the same and not null");
            _outputExpression = GenerateNumberExpression(FieldName.Number, number.Low.Value);
        }
        public void Visit(NumberSearchValue number)
        {
            switch (_prefix)
            {
            case SearchValueConstants.SortLowValueFieldName:
                AddProperty(_prefix, number.Low ?? number.High);
                break;

            case SearchValueConstants.SortHighValueFieldName:
                AddProperty(_prefix, number.High ?? number.Low);
                break;

            default:
                throw new NotSupportedException();
            }
        }
Beispiel #9
0
        public void GivenASearchValueWithUnequalLowAndHighValues_WhenToStringIsCalled_ThenCorrectStringShouldBeReturned()
        {
            NumberSearchValue value = new NumberSearchValue(23.56m, 27);

            Assert.Equal("[23.56, 27)", value.ToString());
        }
Beispiel #10
0
        public void GivenASearchValue_WhenIsValidCompositeComponentIsCalled_ThenTrueShouldBeReturned()
        {
            var value = new NumberSearchValue(123);

            Assert.True(value.IsValidAsCompositeComponent);
        }
Beispiel #11
0
 public void GivenAStringThatOverflows_WhenParsing_ThenExceptionShouldBeThrown()
 {
     Assert.Throws <OverflowException>(() => NumberSearchValue.Parse("79228162514264337593543950336"));
 }
Beispiel #12
0
 public void GivenAStringThatIsNotDecimalNumber_WhenParsing_ThenExceptionShouldBeThrown()
 {
     Assert.Throws <FormatException>(() => NumberSearchValue.Parse("abc"));
 }
Beispiel #13
0
 public void GivenAnInvalidString_WhenParsing_ThenExceptionShouldBeThrown(string s)
 {
     Assert.Throws <ArgumentException>(ParamNameS, () => NumberSearchValue.Parse(s));
 }
Beispiel #14
0
 public void GivenANullString_WhenParsing_ThenExceptionShouldBeThrown()
 {
     Assert.Throws <ArgumentNullException>(ParamNameS, () => NumberSearchValue.Parse(null));
 }
Beispiel #15
0
 void ISearchValueVisitor.Visit(NumberSearchValue number)
 {
     AddProperty(SearchValueConstants.NumberName, number.Number);
 }
Beispiel #16
0
        public void GivenASearchValue_WhenToStringIsCalled_ThenCorrectStringShouldBeReturned()
        {
            NumberSearchValue value = new NumberSearchValue(23.56m);

            Assert.Equal("23.56", value.ToString());
        }