public void SelectEvents() { var candidates = new[] { CreateEventStub(adder: CreateMethodStub(attributes: MethodAttributes.Assembly)), CreateEventStub(adder: CreateMethodStub(attributes: MethodAttributes.Family)), CreateEventStub(adder: CreateMethodStub(attributes: MethodAttributes.FamORAssem)) }; var bindingFlags = (BindingFlags)1; _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(MethodAttributes.Assembly, bindingFlags)).Return(true); _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(MethodAttributes.Family, bindingFlags)).Return(false); _bindingFlagsEvaluatorMock.Expect(mock => mock.HasRightAttributes(MethodAttributes.FamORAssem, bindingFlags)).Return(true); var result = _selector.SelectEvents(candidates, bindingFlags, _someDeclaringType).ForceEnumeration(); _bindingFlagsEvaluatorMock.VerifyAllExpectations(); Assert.That(result, Is.EqualTo(new[] { candidates[0], candidates[2] })); }