public void Should_detect_parameters_annoted_with_IActionParameterBinder()
        {
            var descriptor = new MethodInfoActionDescriptor(GetType().GetMethod("WithDatabinder"));

            Assert.IsFalse(descriptor.IsParameterLess);
            Assert.AreEqual(1, descriptor.Parameters.Count);

            var param = descriptor.Parameters["user"];

            Assert.AreEqual(typeof(User), param.Type);
            Assert.IsTrue(param.DemandsCustomDataBinding);
            Assert.IsAssignableFrom<DataBindAttribute>(param.CustomBinder);
        }
Exemplo n.º 2
0
        public void Should_detect_parameters_annoted_with_IActionParameterBinder()
        {
            var descriptor = new MethodInfoActionDescriptor(GetType().GetMethod("WithDatabinder"));

            Assert.IsFalse(descriptor.IsParameterLess);
            Assert.AreEqual(1, descriptor.Parameters.Count);

            var param = descriptor.Parameters["user"];

            Assert.AreEqual(typeof(User), param.Type);
            Assert.IsTrue(param.DemandsCustomDataBinding);
            Assert.IsAssignableFrom <DataBindAttribute>(param.CustomBinder);
        }
        public void Should_build_reusable_lambda_function_for_method()
        {
            var descriptor = new MethodInfoActionDescriptor(GetType().GetMethod("LambdaTarget"));

            Assert.AreEqual("LambdaTarget", descriptor.Name);

            var lambdaContainer = new MethodInfoActionDescriptorTestCase();

            var date = (DateTime) descriptor.Action(lambdaContainer, new object[] { "string", 2 });

            Assert.AreEqual(DateTime.Now.Date, date);
            Assert.AreEqual("string", lambdaContainer._a);
            Assert.AreEqual(2, lambdaContainer._b);
        }
Exemplo n.º 4
0
        public void Should_build_reusable_lambda_function_for_method()
        {
            var descriptor = new MethodInfoActionDescriptor(GetType().GetMethod("LambdaTarget"));

            Assert.AreEqual("LambdaTarget", descriptor.Name);

            var lambdaContainer = new MethodInfoActionDescriptorTestCase();

            var date = (DateTime)descriptor.Action(lambdaContainer, new object[] { "string", 2 });

            Assert.AreEqual(DateTime.Now.Date, date);
            Assert.AreEqual("string", lambdaContainer._a);
            Assert.AreEqual(2, lambdaContainer._b);
        }