Exemplo n.º 1
0
        public void Bind_CommandNotInRegistry_ThrowsException()
        {
            // assert
            var    sut       = CreateCommandParameterBinder();
            var    command   = new NumberedParameterCommand();
            var    input     = CreateCommandInput("num");
            Action sutAction = () => sut.Bind(command, input);

            // act, assert
            var ex = Assert.Throws <InvalidOperationException>(sutAction);

            Assert.Contains("Descriptor for command 'num' could not be resolved", ex.Message);
        }
Exemplo n.º 2
0
        public void Bind_NumberedParameter1StringProperty_PropertyIsSet()
        {
            // arrange
            var sut     = CreateCommandParameterBinder(typeof(NumberedParameterCommand));
            var command = new NumberedParameterCommand();
            var input   = CreateCommandInput("num", new LiteralCommandParameter("value"));

            // act
            var result = sut.Bind(command, input);

            // assert
            Assert.True(result.Success);
            Assert.Equal("value", command.NumberedParameter1);
        }
Exemplo n.º 3
0
        public void Bind_OneTooManyNumberedParametersProvided_ErrorIncludedInResult()
        {
            // arrange
            var sut     = CreateCommandParameterBinder(typeof(NumberedParameterCommand));
            var command = new NumberedParameterCommand();
            var input   = CreateCommandInput(
                "num",
                new LiteralCommandParameter("value1"),
                new LiteralCommandParameter("value2"),
                new LiteralCommandParameter("value3")
                );

            // act
            var result = sut.Bind(command, input);

            // assert
            Assert.False(result.Success);
            Assert.Equal(new[] { "Unexpected numbered parameter 'value3'" }, result.Errors);
        }