示例#1
0
        public void TryGetVariable_Name_Is_Invalid(string name)
        {
            // arrange
            var values    = new Dictionary <string, VariableValue>();
            var variables = new VariableValueCollection(TypeConversion.Default, values);

            // act
            Action action = () => variables.TryGetVariable <string>(name, out _);

            // assert
            Assert.Throws <ArgumentException>(action);
        }
示例#2
0
        public void TryGetVariable_Converted()
        {
            // arrange
            var values = new Dictionary <string, VariableValue>
            {
                { "abc", new VariableValue("abc", new StringType(), "123") }
            };

            var variables = new VariableValueCollection(TypeConversion.Default, values);

            // act
            bool success = variables.TryGetVariable <int>(
                "abc", out var value);

            // assert
            Assert.True(success);
            Assert.Equal(123, value);
        }
示例#3
0
        public void TryGetVariable_Variable_Does_Not_Exist()
        {
            // arrange
            var values = new Dictionary <string, VariableValue>
            {
                { "abc", new VariableValue("abc", new StringType(), "123") }
            };

            var variables = new VariableValueCollection(TypeConversion.Default, values);

            // act
            bool success = variables.TryGetVariable <int>(
                "def", out var value);

            // assert
            Assert.False(success);
            Assert.Equal(default(int), value);
        }
示例#4
0
        public void TryGetVariable_Casted()
        {
            // arrange
            var values = new Dictionary <string, object>
            {
                { "abc", "def" }
            };

            var variables = new VariableValueCollection(
                TypeConversion.Default,
                values);

            // act
            bool success = variables.TryGetVariable <string>(
                "abc", out var value);

            // assert
            Assert.True(success);
            Assert.Equal("def", value);
        }