private Invocation InvocationWithArguments(params object[] args)
        {
            var paramsInfo = new ParameterInfo[args.Length];

            for (int i = 0; i < paramsInfo.Length; i++)
            {
                paramsInfo[i] = new ParameterInfoStub("arg" + i, ParameterAttributes.In);
            }

            return new Invocation(new NamedObject("receiver"), new MethodInfoStub("method", paramsInfo), args);
        }
        public void SetUp()
        {
            ParameterInfo inParam = new ParameterInfoStub("inParam", ParameterAttributes.In);
            ParameterInfo refParam = new ParameterInfoStub("refParam", ParameterAttributes.None);
            ParameterInfo outParam = new ParameterInfoStub("outParam", ParameterAttributes.Out);

            method = new MethodInfoStub("method", inParam, refParam, outParam);

            parameterValues = new[] {inValue, refValue, null};

            list = new ParameterList(method, parameterValues);
        }