public void Add_SingleDouble_AllAddUpThatAmount()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                2, 3, 4
            };

            var actual = dataColumn.Add(1);

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void Subtract_SingleDouble_AllSubtractedByThatAmount()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                0, 1, 2
            };

            var actual = dataColumn.Subtract(1);

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void Times_SingleDouble_AllMultipliedByThatAmount()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                2, 4, 6
            };

            var actual = dataColumn.Times(2);

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void DividedBy_SingleDouble_AllDividedByThatAmount()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                1 / 2.0, 2 / 2.0, 3 / 2.0
            };


            var actual = dataColumn.DividedBy(2);

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void Subtract_ACollectionOfDouble_CorrespondinglySubtracted()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                0, 0, 0
            };

            var actual = dataColumn.Subtract(new List <double> {
                1, 2, 3
            }).ToList();

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void Times_ACollectionOfDouble_CorrespondinglyMultiplied()
        {
            var dataColumn = CreateDataColumn();
            var expected   = new List <double> {
                1, 4, 9
            };

            var actual = dataColumn.Times(new List <double> {
                1, 2, 3
            }).ToList();

            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actual, expected));
        }
        public void EstimateBiasedMillimeterDistances_WhenTwoRequiredColumnsValid_CalcBiasProperly()
        {
            var rectificationEntity = CreateRectificationEntity("X1");

            rectificationEntity.PixelColumn         = MeasuredData.X1_Pixel;
            rectificationEntity.MillimeterColumnOMM = OMMData.X1;
            rectificationEntity.Weight = Weights.X;
            var expectedBias     = Biases.X1;
            var expectedEstimate = Estimates.X1;

            rectificationEntity.EstimateBiasedMillimeterDistances();
            var actualBias     = rectificationEntity.Bias;
            var actualEstimate = rectificationEntity.MillimeterColumnEstimate;

            Assert.True(FloatingCompare.FloatingNumberAreClose(actualBias, expectedBias));
            Assert.True(FloatingCompare.FloatingEnumerablesAreVeryClose(actualEstimate, expectedEstimate));
        }