private HttpControllerContext CreateControllerContext(string controllerName, Type controllerType)
        {
            ComplexTypeAwareActionSelector actionSelector       = new ComplexTypeAwareActionSelector();
            HttpControllerContext          controllerContext    = ContextUtil.CreateControllerContext();
            HttpControllerDescriptor       controllerDescriptor = new HttpControllerDescriptor(controllerContext.Configuration, controllerName, controllerType);

            controllerDescriptor.Configuration.Services.Replace(typeof(IHttpActionSelector), actionSelector);
            controllerContext.ControllerDescriptor = controllerDescriptor;

            return(controllerContext);
        }
 public void ComplexTypeUriParamFriendlyActionSelector_SelectAction_Throws_IfContextIsNull()
 {
     ComplexTypeAwareActionSelector actionSelector = new ComplexTypeAwareActionSelector();
     Assert.Throws<ArgumentNullException>(() => actionSelector.SelectAction(null));
 }
        private HttpControllerContext CreateControllerContext(string controllerName, Type controllerType)
        {
            ComplexTypeAwareActionSelector actionSelector = new ComplexTypeAwareActionSelector();
            HttpControllerContext controllerContext = ContextUtil.CreateControllerContext();
            HttpControllerDescriptor controllerDescriptor = new HttpControllerDescriptor(controllerContext.Configuration, controllerName, controllerType);
            controllerDescriptor.Configuration.Services.Replace(typeof(IHttpActionSelector), actionSelector);
            controllerContext.ControllerDescriptor = controllerDescriptor;

            return controllerContext;
        }
        public void ComplexTypeUriParamFriendlyActionSelector_SelectAction_Throws_IfContextIsNull()
        {
            ComplexTypeAwareActionSelector actionSelector = new ComplexTypeAwareActionSelector();

            Assert.Throws <ArgumentNullException>(() => actionSelector.SelectAction(null));
        }