public void GetSelectorsWrapsSelectorAttributes()
        {
            // Arrange
            ControllerContext controllerContext = new Mock <ControllerContext>().Object;
            Mock <MethodInfo> mockMethod        = new Mock <MethodInfo>();

            Mock <ActionMethodSelectorAttribute> mockAttr =
                new Mock <ActionMethodSelectorAttribute>();

            mockAttr
            .Setup(attr => attr.IsValidForRequest(controllerContext, mockMethod.Object))
            .Returns(true)
            .Verifiable();
            mockMethod
            .Setup(m => m.GetCustomAttributes(typeof(ActionMethodSelectorAttribute), true))
            .Returns(new ActionMethodSelectorAttribute[] { mockAttr.Object });

            ReflectedActionDescriptor ad = GetActionDescriptor(mockMethod.Object);

            // Act
            ICollection <ActionSelector> selectors = ad.GetSelectors();
            bool executedSuccessfully = selectors.All(s => s(controllerContext));

            // Assert
            Assert.Single(selectors);
            Assert.True(executedSuccessfully);
            mockAttr.Verify();
        }