コード例 #1
0
        public void Initialization()
        {
            Assert.That(_constructor.DeclaringType, Is.SameAs(_declaringType));
            Assert.That(_constructor.Attributes, Is.EqualTo(_attributes));
            var parameters = _constructor.GetParameters();

            Assert.That(parameters, Has.Length.EqualTo(2));
            CustomParameterInfoTest.CheckParameter(parameters[0], _constructor, 0, _parameters[0].Name, _parameters[0].Type, _parameters[0].Attributes);
            CustomParameterInfoTest.CheckParameter(parameters[1], _constructor, 1, _parameters[1].Name, _parameters[1].Type, _parameters[1].Attributes);
        }
コード例 #2
0
        public void Initialization()
        {
            Assert.That(_method.DeclaringType, Is.SameAs(_declaringType));
            Assert.That(_method.Name, Is.EqualTo(_name));
            Assert.That(_method.Attributes, Is.EqualTo(_attributes));
            Assert.That(_method.GetGenericArguments(), Is.EqualTo(_typeArguments));
            CustomParameterInfoTest.CheckParameter(_method.ReturnParameter, _method, -1, null, _returnType, ParameterAttributes.None);
            var parameters = _method.GetParameters();

            Assert.That(parameters, Has.Length.EqualTo(2));
            CustomParameterInfoTest.CheckParameter(parameters[0], _method, 0, _parameters[0].Name, _parameters[0].Type, _parameters[0].Attributes);
            CustomParameterInfoTest.CheckParameter(parameters[1], _method, 1, _parameters[1].Name, _parameters[1].Type, _parameters[1].Attributes);
        }
コード例 #3
0
        public void CreateProxy_CopiesAccessibleInstanceConstructors_WithPublicVisibility()
        {
            var result = _factory.CreateProxy(_domainType, ProxyKind.AssembledType).Type;

            Assert.That(result.AddedConstructors, Has.Count.EqualTo(1));
            var ctor = result.AddedConstructors.Single();

            Assert.That(ctor.IsStatic, Is.False);
            Assert.That(ctor.IsPublic, Is.True, "Changed from 'family or assembly'.");
            Assert.That(ctor.IsHideBySig, Is.True);

            var parameter = ctor.GetParameters().Single();

            CustomParameterInfoTest.CheckParameter(parameter, ctor, 0, "i", typeof(int).MakeByRefType(), ParameterAttributes.Out);

            var baseCtor     = NormalizingMemberInfoFromExpressionUtility.GetConstructor(() => new DomainType(out Dev <int> .Dummy));
            var expectedBody = Expression.Call(
                new ThisExpression(result), NonVirtualCallMethodInfoAdapter.Adapt(baseCtor), ctor.ParameterExpressions.Cast <Expression>());

            ExpressionTreeComparer.CheckAreEqualTrees(expectedBody, ctor.Body);
        }