Example #1
0
        public void SuccesfullyCreateObjectWithNullArguments()
        {
            var value = new AgnosticValue();

            Assert.NotNull(value);
            Assert.Null(value.Value);
            Assert.Null(value.ValueType);
        }
Example #2
0
        public void FailToCreateObjectWithArrayType()
        {
            var defaultValue = new int[] { 1, 2, 3 };

            Assert.Throws <ArgumentException>(() =>
            {
                var value = new AgnosticValue(defaultValue);
            });
        }
Example #3
0
        public void SuccesfullyCreateObjectWithMinimalArguments()
        {
            var defaultValue = 123;

            var value = new AgnosticValue(defaultValue);

            Assert.NotNull(value);
            Assert.Equal(defaultValue, value.Value);
            Assert.Equal(defaultValue.GetType(), value.ValueType);
        }
Example #4
0
        public void SuccessfullySetValueOfNullTypeWithNonNullType()
        {
            var newValue = 321;

            var value = new AgnosticValue();

            value.Value = newValue;

            Assert.Equal(newValue, value.Value);
            Assert.Equal(newValue.GetType(), value.ValueType);
        }
Example #5
0
        public void SuccessfullySetNewValueOfSameType()
        {
            var defaultValue = 123;
            var newValue     = 321;

            var value = new AgnosticValue(defaultValue);

            value.Value = newValue;

            Assert.Equal(newValue, value.Value);
            Assert.Equal(newValue.GetType(), value.ValueType);
        }
Example #6
0
        public void FailToSetNewValueThatIsAnArrayType()
        {
            var defaultValue = 123;
            var newValue     = new int[] { 4, 5, 6, 7 };

            var value = new AgnosticValue(defaultValue);

            Assert.Throws <ArgumentException>(() =>
            {
                value.Value = newValue;
            });
        }
Example #7
0
        public void FailToCreateObjectWithInvalidValue()
        {
            var defaultValue = 123;
            var name         = "foobar";
            var description  = "foobar description";
            var unit         = new XCalculateLib.Unit("foobar", "foobars", "fb", "fbs");

            bool validator(object i) => (int)i >= 0 && (int)i < 100;

            Assert.Throws <ArgumentException>(() =>
            {
                var value = new AgnosticValue(defaultValue, new ValueInfo(name, description, unit), validator);
            });
        }
Example #8
0
        public void FailToSetNewValueThatIsInvalid()
        {
            var defaultValue = 123;
            var newValue     = 321.0;
            var name         = "foobar";
            var description  = "foobar description";
            var unit         = new XCalculateLib.Unit("foobar", "foobars", "fb", "fbs");

            bool validator(object i) => TypeConverter.ToObject <int>(i) > 0 && TypeConverter.ToObject <int>(i) < 200;

            var value = new AgnosticValue(defaultValue, new ValueInfo(name, description, unit), validator);

            Assert.Throws <ArgumentException>(() =>
            {
                value.Value = newValue;
            });
        }
Example #9
0
        public void SuccesfullyCreateObjectWithAllArguments()
        {
            var defaultValue = 123;
            var name         = "foobar";
            var description  = "foobar description";
            var unit         = new XCalculateLib.Unit("foobar", "foobars", "fb", "fbs");

            bool validator(object i) => (int)i >= 0 && (int)i < 200;

            var value = new AgnosticValue(defaultValue, new ValueInfo(name, description, unit), validator);

            Assert.NotNull(value);
            Assert.Equal(defaultValue, value.Value);
            Assert.Equal(defaultValue.GetType(), value.ValueType);
            Assert.NotNull(value.Info);
            Assert.Equal(name, value.Info.Name);
            Assert.Equal(description, value.Info.Description);
            Assert.Equal(unit, value.Info.Unit);
        }