Esempio n. 1
0
        public void SelectMethods()
        {
            var candidates    = new[] { CreateMethodStub(), CreateMethodStub(), CreateMethodStub() };
            var bindingFlags  = (BindingFlags)1;
            var declaringType = ReflectionObjectMother.GetSomeType();

            _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(candidates[0].Attributes, bindingFlags)).Return(true);
            _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(candidates[1].Attributes, bindingFlags)).Return(false);
            _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(candidates[2].Attributes, bindingFlags)).Return(true);

            var result = _selector.SelectMethods(candidates, bindingFlags, declaringType).ForceEnumeration();

            _bindingFlagsEvaluatorMock.VerifyAllExpectations();
            Assert.That(result, Is.EqualTo(new[] { candidates[0], candidates[2] }));
        }
Esempio n. 2
0
        public void SelectMethods()
        {
            const MethodAttributes wantedAttribute   = (MethodAttributes)1;
            const MethodAttributes unwantedAttribute = (MethodAttributes)2;
            var candidates = new[]
            {
                CreateMethodStub(attributes: wantedAttribute),
                CreateMethodStub(attributes: unwantedAttribute),
                CreateMethodStub(attributes: wantedAttribute)
            };
            var bindingFlags  = (BindingFlags)1;
            var declaringType = ReflectionObjectMother.GetSomeType();

            var sequence = new MockSequence();

            _bindingFlagsEvaluatorMock.InSequence(sequence).Setup(mock => mock.HasRightAttributes(wantedAttribute, bindingFlags)).Returns(true);
            _bindingFlagsEvaluatorMock.InSequence(sequence).Setup(mock => mock.HasRightAttributes(unwantedAttribute, bindingFlags)).Returns(false);
            _bindingFlagsEvaluatorMock.InSequence(sequence).Setup(mock => mock.HasRightAttributes(wantedAttribute, bindingFlags)).Returns(true);

            var result = _selector.SelectMethods(candidates, bindingFlags, declaringType).ForceEnumeration();

            _bindingFlagsEvaluatorMock.Verify();
            Assert.That(result, Is.EqualTo(new[] { candidates[0], candidates[2] }));
        }