Example #1
0
 /// <summary>
 /// Protected Constructor
 /// </summary>
 protected CalculatorFixtureBase()
 {
     Calculator = new TCalculator();
     Comparer   = new QuantityComparer(Precision);
     // TODO: should be a first class unit test closer to the primary QuantityComparer assembly(ies)...
     Assert.That(Comparer.Epsilon, Is.EqualTo(Math.Pow(10d, Precision)));
 }
Example #2
0
        /// <summary>
        /// Disposes the object.
        /// </summary>
        public override void Dispose()
        {
            var expectedValue = _expected(_aQty.ToBase().Value, _bQty.ToBase().Value);

            var expectedQty = new Quantity(expectedValue, Dimensions.ToArray());

            var calc = _actual(Calculator);

            Assert.That(calc, Is.Not.Null);

            var actualQty = calc(_aQty, _bQty);

            var comparer = new QuantityComparer(-4);

            Assert.That(comparer.Epsilon, Is.EqualTo(1e-4));

            Assert.That(comparer.Compare(expectedQty, actualQty), Is.EqualTo(0),
                        "Given {{{0}}}, {{{1}}} and {{{2}}} expected {{{3}}} but was {{{4}}}:"
                        + " values were {{{5}}} and {{{6}}}",
                        _type, _aQty, _bQty, expectedQty, actualQty,
                        expectedQty.Value.ToString("R"), actualQty.Value.ToString("R"));

            Console.WriteLine(
                "Given {{{0}}}, {{{1}}} and {{{2}}} expected {{{3}}} but was {{{4}}}:"
                + " values were {{{5}}} and {{{6}}}",
                _type, _aQty, _bQty, expectedQty, actualQty,
                expectedQty.Value.ToString("R"), actualQty.Value.ToString("R"));
        }