コード例 #1
0
        public void RealRateOfReturn_IEnumerableToScalar_FloatProperty_SourceRealRateOfReturnToOverflow_InfinityReturned()
        {
            IEnumerable <RealRateOfReturnSampleItem <float> > source = new RealRateOfReturnSampleItem <float>[] {
                new RealRateOfReturnSampleItem <float>(new DateTime(2012, 01, 01), float.MaxValue, float.MaxValue),
                new RealRateOfReturnSampleItem <float>(new DateTime(2012, 02, 01), float.MaxValue, float.MaxValue)
            };

            var result = source
                         .OrderBy(x => x.ReferenceDate)
                         .RealRateOfReturn(x => x.NominalRateOfReturn, x => x.InflationReturn);

            float.IsPositiveInfinity(result).Should().BeFalse();
        }
コード例 #2
0
        public void RealRateOfReturn_IEnumerableToScalar_DecimalProperty_SourceRealRateOfReturnToOverflow_OverflowExceptionThrown()
        {
            IEnumerable <RealRateOfReturnSampleItem <decimal> > source = new RealRateOfReturnSampleItem <decimal>[] {
                new RealRateOfReturnSampleItem <decimal>(new DateTime(2012, 01, 01), decimal.MaxValue, decimal.MaxValue),
                new RealRateOfReturnSampleItem <decimal>(new DateTime(2012, 02, 01), decimal.MaxValue, decimal.MaxValue)
            };

            Action comparison = () =>
            {
                source
                .OrderBy(x => x.ReferenceDate)
                .RealRateOfReturn(x => x.NominalRateOfReturn, x => x.InflationReturn);
            };

            comparison.ShouldThrow <OverflowException>();
        }