public void Given_no_arguments_When_creating_Then_empty_array_is_returned() { var emptyArguments = new List<Argument>(); var builder = new MatchExpressionBuilder<object>(); var result = builder.CreateArgumentValuesArray(emptyArguments); Assert.NotNull(result); Assert.Equal(0, result.Length); }
public void Given_no_arguments_When_creating_Then_empty_array_is_returned() { var emptyArguments = new List <Argument>(); var builder = new MatchExpressionBuilder <object>(); var result = builder.CreateArgumentValuesArray(emptyArguments); Assert.NotNull(result); Assert.Empty(result); }
public void Given_one_argument_When_creating_Then_array_with_the_value_is_returned() { var argument = new Argument(null, (Action<int>)(_ => { }), true); var arguments = new List<Argument> { argument }; var builder = new MatchExpressionBuilder<object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Equal(1, result.Length); Assert.Same(argument.Value, result[0]); }
public void Given_15_arguments_When_creating_Then_array_with_the_values_are_returned() { var arguments = Enumerable.Range(1, 15).Select(i => new Argument(null, (Action <int>)(_ => { }), true)).ToList(); var builder = new MatchExpressionBuilder <object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Equal(15, result.Length); for (var i = 0; i < 15; i++) { XAssert.Same(arguments[i].Value, result[0], "Argument " + i + " does not have the correct value"); } }
public void Given_one_argument_When_creating_Then_array_with_the_value_is_returned() { var argument = new Argument(null, (Action <int>)(_ => { }), true); var arguments = new List <Argument> { argument }; var builder = new MatchExpressionBuilder <object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Single(result); Assert.Same(argument.Value, result[0]); }
public void Given_15_arguments_When_creating_Then_array_with_the_values_are_returned() { var arguments = Enumerable.Range(1, 15).Select(i => new Argument(null, (Action<int>)(_ => { }), true)).ToList(); var builder = new MatchExpressionBuilder<object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Equal(15, result.Length); for(var i = 0; i < 15; i++) { XAssert.Same(arguments[i].Value, result[0], "Argument " + i + " does not have the correct value"); } }
public void Given_16_arguments_When_creating_Then_last_value_is_an_object_array_with_argument_14_and_15() { var arguments = Enumerable.Range(1, 16).Select(i => new Argument(null, (Action<int>)(_ => { }), true)).ToList(); var builder = new MatchExpressionBuilder<object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Equal(15, result.Length); for(var i = 0; i < 14; i++) { XAssert.Same(arguments[i].Value, result[0], "Argument " + i + " does not have the correct value"); } Assert.IsType<object[]>(result[14]);//Last value should be the extraArgs object[] var extraArgs = (object[])result[14]; Assert.Equal(2, extraArgs.Length);// Extra args should contain 2 values (argument 14 and 15) XAssert.Same(arguments[14].Value, extraArgs[0], "Argument 14 did not match"); XAssert.Same(arguments[15].Value, extraArgs[1], "Argument 15 did not match"); }
public void Given_16_arguments_When_creating_Then_last_value_is_an_object_array_with_argument_14_and_15() { var arguments = Enumerable.Range(1, 16).Select(i => new Argument(null, (Action <int>)(_ => { }), true)).ToList(); var builder = new MatchExpressionBuilder <object>(); var result = builder.CreateArgumentValuesArray(arguments); Assert.NotNull(result); Assert.Equal(15, result.Length); for (var i = 0; i < 14; i++) { XAssert.Same(arguments[i].Value, result[0], "Argument " + i + " does not have the correct value"); } Assert.IsType <object[]>(result[14]);//Last value should be the extraArgs object[] var extraArgs = (object[])result[14]; Assert.Equal(2, extraArgs.Length);// Extra args should contain 2 values (argument 14 and 15) XAssert.Same(arguments[14].Value, extraArgs[0], "Argument 14 did not match"); XAssert.Same(arguments[15].Value, extraArgs[1], "Argument 15 did not match"); }