コード例 #1
0
        public void OnActionExecuting_CopiesParametersIfControllerIsAsync()
        {
            // Arrange
            CopyAsyncParametersAttribute attr       = new CopyAsyncParametersAttribute();
            SampleAsyncController        controller = new SampleAsyncController();

            ActionExecutingContext filterContext = new ActionExecutingContext
            {
                ActionParameters = new Dictionary <string, object>(StringComparer.OrdinalIgnoreCase),
                Controller       = controller
            };

            filterContext.ActionParameters["foo"]     = "fooAction";
            filterContext.ActionParameters["bar"]     = "barAction";
            controller.AsyncManager.Parameters["bar"] = "barAsync";
            controller.AsyncManager.Parameters["baz"] = "bazAsync";

            // Act
            attr.OnActionExecuting(filterContext);

            // Assert
            Assert.Equal("fooAction", controller.AsyncManager.Parameters["foo"]);
            Assert.Equal("barAction", controller.AsyncManager.Parameters["bar"]);
            Assert.Equal("bazAsync", controller.AsyncManager.Parameters["baz"]);
        }
コード例 #2
0
        public void OnActionExecuting_CopiesParametersIfControllerIsAsync() {
            // Arrange
            CopyAsyncParametersAttribute attr = new CopyAsyncParametersAttribute();
            SampleAsyncController controller = new SampleAsyncController();

            ActionExecutingContext filterContext = new ActionExecutingContext() {
                ActionParameters = new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase),
                Controller = controller
            };
            filterContext.ActionParameters["foo"] = "fooAction";
            filterContext.ActionParameters["bar"] = "barAction";
            controller.AsyncManager.Parameters["bar"] = "barAsync";
            controller.AsyncManager.Parameters["baz"] = "bazAsync";

            // Act
            attr.OnActionExecuting(filterContext);

            // Assert
            Assert.AreEqual("fooAction", controller.AsyncManager.Parameters["foo"]);
            Assert.AreEqual("barAction", controller.AsyncManager.Parameters["bar"]);
            Assert.AreEqual("bazAsync", controller.AsyncManager.Parameters["baz"]);
        }