public void MethodCallTransformer_Transform_StaticMethod_WrongParameterCount()
        {
            var call        = Expression.Call(typeof(LinqCastMethodAttributeTest).GetMethod("InvalidStaticCastMethod"));
            var transformer = new LinqCastMethodAttribute.MethodCallTransformer();

            transformer.Transform(call);
        }
        public void MethodCallTransformer_Transform_InstanceMethod_WrongParameterCount()
        {
            var instance    = Expression.Constant(null, typeof(LinqCastMethodAttributeTest));
            var call        = Expression.Call(instance, typeof(LinqCastMethodAttributeTest).GetMethod("InvalidInstanceCastMethod"), Expression.Constant(0));
            var transformer = new LinqCastMethodAttribute.MethodCallTransformer();

            transformer.Transform(call);
        }
        public void MethodCallTransformer_Transform_StaticMethod()
        {
            var instance    = Expression.Constant(null, typeof(TargetClassForPersistentMixin));
            var call        = Expression.Call(typeof(TargetClassForPersistentMixinExtensions).GetMethod("GetMixedMembers"), instance);
            var transformer = new LinqCastMethodAttribute.MethodCallTransformer();

            var result = transformer.Transform(call);

            var expected = Expression.Convert(instance, typeof(IMixinAddingPersistentProperties));

            SqlExpressionTreeComparer.CheckAreEqualTrees(expected, result);
        }