Пример #1
0
        public void Should_initialize_instance(double value)
        {
            var actual = new Kilometre(value);

            Assert.IsAssignableFrom <Kilometre>(actual);
            Assert.AreEqual(value, actual.Value, nameof(actual.Value));
        }
Пример #2
0
        public void Should_compare_with_null_instance(double value)
        {
            var instance = new Kilometre(value);

            Assert.IsFalse(instance.Equals(null), "Equals");
            Assert.AreEqual(1, instance.CompareTo(null), "CompareTo");
        }
Пример #3
0
        public void Should_not_throw_exception_on_division_by_zero(double value, double expectedValue)
        {
            var instance = new Kilometre(value);
            var actual   = instance / 0d;

            Assert.AreEqual(expectedValue, actual.Value);
        }
Пример #4
0
        public void Should_cast_to_double(double value)
        {
            var instance = new Kilometre(value);

            var actual = (double)instance;

            Assert.AreEqual(value, actual);
        }
Пример #5
0
        public void Should_cast_from_double(double value)
        {
            var expected = new Kilometre(value);

            var actual = (Kilometre)value;

            Assert.AreEqual(expected, actual);
        }
Пример #6
0
        public void Should_compare_with_another_type_of_instance(double value)
        {
            var    instance1 = new Kilometre(value);
            object instance2 = value;

            Assert.IsFalse(instance1.Equals(instance2), "Equals");
            Assert.Throws <ArgumentException>(() => instance1.CompareTo(instance2), "CompareTo");
        }
Пример #7
0
        public void Should_convert_from_kilometres(double expected, double kilometres)
        {
            var instance = new Kilometre(kilometres);

            Mile actual = instance;

            Assert.AreEqual(expected, actual.Value, Consts.DeltaAssert);
        }
Пример #8
0
        public void Should_convert_to_kilometres(double miles, double expected)
        {
            var instance = new Mile(miles);

            Kilometre actual = instance;

            Assert.AreEqual(expected, actual.Value, Consts.DeltaAssert);
        }
Пример #9
0
        public void Should_roundvalue_withMode(MidpointRounding mode, double value, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var instance = new Kilometre(value);
            var actual   = instance.Round(mode);

            Assert.AreEqual(expected, actual);
        }
Пример #10
0
        public void Should_round_value_withDigit(double value, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var instance = new Kilometre(value);
            var actual   = instance.Round(1);

            Assert.AreEqual(expected, actual);
        }
Пример #11
0
        public void Should_own_a_HashCode(double value)
        {
            var expected = value.GetHashCode();

            var instance = new Kilometre(value);
            var actual   = instance.GetHashCode();

            Assert.AreEqual(expected, actual);
        }
Пример #12
0
        public void Should_floor_value(double value, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var instance = new Kilometre(value);
            var actual   = instance.Floor();

            Assert.AreEqual(expected, actual);
        }
Пример #13
0
        public void Should_format_string(string format, string mask)
        {
            var expected = string.Format(Consts.CultureEnUS, mask, 1.757899e2);

            var instance = new Kilometre(1.757899e2);
            var actual   = instance.ToString(format, Consts.CultureEnUS);

            Assert.AreEqual(expected, actual);
        }
Пример #14
0
        public void Should_divide_instance_by_double(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var instance = new Kilometre(leftValue);
            var actual   = instance / rightValue;

            Assert.AreEqual(expected, actual);
        }
Пример #15
0
        public void Should_convert_to_string(double value)
        {
            var expected = $"{value:e} km";

            var instance = new Kilometre(value);
            var actual   = instance.ToString();

            Assert.AreEqual(expected, actual);
        }
Пример #16
0
        public void Should_multiply_double_by_instance(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var instance = new Kilometre(rightValue);

            var actual = leftValue * instance;

            Assert.AreEqual(expected, actual);
        }
Пример #17
0
        public void Should_subtract_two_instances(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new Kilometre(expectedValue);

            var leftInstance  = new Kilometre(leftValue);
            var rightInstance = new Kilometre(rightValue);
            var actual        = leftInstance - rightInstance;

            Assert.AreEqual(expected, actual);
        }
Пример #18
0
        public void LengthTestPassing()
        {
            double value1 = 100;
            double value2 = 300;

            Metre metre1 = new Metre(value1, 100, 600);
            Metre metre2 = new Metre(value2);

            Kilometre kilometre = metre1 + metre2;

            Assert.AreEqual(expected: (value2 + value1) * 1 / Kilometre.KilometreConversionFactor, actual: kilometre.Value);
        }
Пример #19
0
        public void Should_cast_from_Megametre(double megametreValue, double expectedValue)
        {
            var megametreInstance = new SystemOfUnits.Length.Metre.Megametre(megametreValue);

            Kilometre actual = megametreInstance;

            Assert.IsAssignableFrom <Kilometre>(actual);

            var actualValue = actual.Value;

            Assert.AreEqual(expectedValue.ToString("E"), actualValue.ToString("E"));
        }
Пример #20
0
        public void Should_compare_with_same_value(double value)
        {
            var baseInstance  = new Kilometre(value);
            var otherInstance = new Kilometre(value);

            Assert.IsTrue(baseInstance.Equals(otherInstance), "Equals");
            Assert.IsTrue(baseInstance.Equals((object)otherInstance), "Equals object");

            Assert.IsTrue(baseInstance == otherInstance, "==");
            Assert.IsFalse(baseInstance != otherInstance, "!=");

            Assert.AreEqual(0, baseInstance.CompareTo(otherInstance), "CompareTo");
            Assert.AreEqual(0, baseInstance.CompareTo((object)otherInstance), "CompareTo object");

            Assert.IsFalse(baseInstance < otherInstance, "<");
            Assert.IsFalse(baseInstance > otherInstance, ">");

            Assert.IsTrue(baseInstance <= otherInstance, "<=");
            Assert.IsTrue(baseInstance >= otherInstance, ">=");
        }
Пример #21
0
        public void Should_compare_with_smaller_value(double baseValue, double smallerValue)
        {
            var baseInstance    = new Kilometre(baseValue);
            var smallerInstance = new Kilometre(smallerValue);

            Assert.IsFalse(baseInstance.Equals(smallerInstance), "Equals");
            Assert.IsFalse(baseInstance.Equals((object)smallerInstance), "Equals object");

            Assert.IsFalse(baseInstance == smallerInstance, "==");
            Assert.IsTrue(baseInstance != smallerInstance, "!=");

            Assert.AreEqual(+1, baseInstance.CompareTo(smallerInstance), "CompareTo");
            Assert.AreEqual(+1, baseInstance.CompareTo((object)smallerInstance), "CompareTo object");

            Assert.IsFalse(baseInstance < smallerInstance, "<");
            Assert.IsTrue(baseInstance > smallerInstance, ">");

            Assert.IsFalse(baseInstance <= smallerInstance, "<=");
            Assert.IsTrue(baseInstance >= smallerInstance, ">=");
        }
Пример #22
0
        public void Should_compare_with_bigger_value(double baseValue, double biggerValue)
        {
            var baseInstance   = new Kilometre(baseValue);
            var biggerInstance = new Kilometre(biggerValue);

            Assert.IsFalse(baseInstance.Equals(biggerInstance), "Equals");
            Assert.IsFalse(baseInstance.Equals((object)biggerInstance), "Equals object");

            Assert.IsFalse(baseInstance == biggerInstance, "==");
            Assert.IsTrue(baseInstance != biggerInstance, "!=");

            Assert.AreEqual(-1, baseInstance.CompareTo(biggerInstance), "CompareTo");
            Assert.AreEqual(-1, baseInstance.CompareTo((object)biggerInstance), "CompareTo object");

            Assert.IsTrue(baseInstance < biggerInstance, "<");
            Assert.IsFalse(baseInstance > biggerInstance, ">");

            Assert.IsTrue(baseInstance <= biggerInstance, "<=");
            Assert.IsFalse(baseInstance >= biggerInstance, ">=");
        }
Пример #23
0
        public void Should_have_a_symbol(double value)
        {
            IUnit actual = new Kilometre(value);

            Assert.AreEqual(Kilometre.Symbol, actual.Symbol);
        }