public void ShouldParseExpression() { var expression = new ExpressiveRouteValidator <CustomController>().ValidateExpression( (ctrlr, ctx, cld) => ctrlr.Execute(ctx, cld, 3)); expression.MethodName.Should().Be("Execute"); // expression.Parameters.Should().BeEquivalentTo(new object[] { 3 }); expression.Parameters.Length.Should().Be(1); expression.Parameters.First().As <ConstantRouteExpressionParameter>().Value.Should().Be(3); }
public void ShouldParseExpressionNamedIndex() { var expression = new ExpressiveRouteValidator <CustomController>().ValidateExpression( (ctrlr, ctx, cld) => ctrlr.Edit(ctx, cld, 3, "h")); expression.MethodName.Should().Be("Edit"); // expression.Parameters.Should().BeEquivalentTo(new object[] { 3, "h" }); expression.Parameters.Length.Should().Be(2); expression.Parameters.First().As <ConstantRouteExpressionParameter>().Value.Should().Be(3); expression.Parameters.Skip(1).First().As <ConstantRouteExpressionParameter>().Value.Should().Be("h"); }