コード例 #1
0
        public void Should_not_throw_exception_on_division_by_zero(double value, double expectedValue)
        {
            var instance = new SquareAttometre(value);
            var actual   = instance / 0d;

            Assert.AreEqual(expectedValue, actual.Value);
        }
コード例 #2
0
        public void Should_initialize_instance(double value)
        {
            var actual = new SquareAttometre(value);

            Assert.IsAssignableFrom <SquareAttometre>(actual);
            Assert.AreEqual(value, actual.Value, nameof(actual.Value));
        }
コード例 #3
0
        public void Should_compare_with_null_instance(double value)
        {
            var instance = new SquareAttometre(value);

            Assert.IsFalse(instance.Equals(null), "Equals");
            Assert.AreEqual(1, instance.CompareTo(null), "CompareTo");
        }
コード例 #4
0
        public void Should_cast_to_double(double value)
        {
            var instance = new SquareAttometre(value);

            var actual = (double)instance;

            Assert.AreEqual(value, actual);
        }
コード例 #5
0
        public void Should_cast_from_double(double value)
        {
            var expected = new SquareAttometre(value);

            var actual = (SquareAttometre)value;

            Assert.AreEqual(expected, actual);
        }
コード例 #6
0
        public void Should_compare_with_another_type_of_instance(double value)
        {
            var    instance1 = new SquareAttometre(value);
            object instance2 = value;

            Assert.IsFalse(instance1.Equals(instance2), "Equals");
            Assert.Throws <ArgumentException>(() => instance1.CompareTo(instance2), "CompareTo");
        }
コード例 #7
0
        public void Should_round_value_withDigit(double value, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #8
0
        public void Should_own_a_HashCode(double value)
        {
            var expected = value.GetHashCode();

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

            Assert.AreEqual(expected, actual);
        }
コード例 #9
0
        public void Should_floor_value(double value, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #10
0
        public void Should_format_string(string format, string mask)
        {
            var expected = string.Format(Consts.CultureEnUS, mask, 1.757899e2);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #11
0
        public void Should_roundvalue_withMode(MidpointRounding mode, double value, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #12
0
        public void Should_convert_to_string(double value)
        {
            var expected = $"{value:e} am²";

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

            Assert.AreEqual(expected, actual);
        }
コード例 #13
0
        public void Should_divide_instance_by_double(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #14
0
        public void Should_multiply_double_by_instance(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

            var instance = new SquareAttometre(rightValue);

            var actual = leftValue * instance;

            Assert.AreEqual(expected, actual);
        }
コード例 #15
0
        public void Should_subtract_two_instances(double leftValue, double rightValue, double expectedValue)
        {
            var expected = new SquareAttometre(expectedValue);

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

            Assert.AreEqual(expected, actual);
        }
コード例 #16
0
        public void Should_cast_from_SquareMegametre(double squareMegametreValue, double expectedValue)
        {
            var squareMegametreInstance = new SystemOfUnits.Area.SquareMetre.SquareMegametre(squareMegametreValue);

            SquareAttometre actual = squareMegametreInstance;

            Assert.IsAssignableFrom <SquareAttometre>(actual);

            var actualValue = actual.Value;

            Assert.AreEqual(expectedValue.ToString("E"), actualValue.ToString("E"));
        }
コード例 #17
0
        public void Should_compare_with_same_value(double value)
        {
            var baseInstance  = new SquareAttometre(value);
            var otherInstance = new SquareAttometre(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, ">=");
        }
コード例 #18
0
        public void Should_compare_with_smaller_value(double baseValue, double smallerValue)
        {
            var baseInstance    = new SquareAttometre(baseValue);
            var smallerInstance = new SquareAttometre(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, ">=");
        }
コード例 #19
0
        public void Should_compare_with_bigger_value(double baseValue, double biggerValue)
        {
            var baseInstance   = new SquareAttometre(baseValue);
            var biggerInstance = new SquareAttometre(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, ">=");
        }
コード例 #20
0
        public void Should_have_a_symbol(double value)
        {
            IUnit actual = new SquareAttometre(value);

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