public void change_should_add_lang_cookie()
        {
            // Arrange
            var controllerContext = new Mock<ControllerContext>();
            var httpContext = new Mock<HttpContextBase>();
            controllerContext.Setup(x => x.HttpContext).Returns(httpContext.Object);

            var httpRequest = new Mock<HttpRequestBase>();
            var httpResponse = new Mock<HttpResponseBase>();
            httpContext.Setup(x => x.Request).Returns(httpRequest.Object);
            httpContext.Setup(x => x.Response).Returns(httpResponse.Object);
            httpResponse.Setup(x => x.SetCookie(It.IsAny<HttpCookie>()));

            var authService = new Mock<IFormsAuthenticationService>();
            var demoService = new Mock<IDemoDataService>();

            // Act
            var controller = new LangController(authService.Object, demoService.Object);
            controller.ControllerContext = controllerContext.Object;

            var view = controller.Change("tr");

            // Assert

            Assert.NotNull(view);
        }
        public void change_should_return_add_lang_cookie()
        {
            // Arrange
            var authService = new Mock<IFormsAuthenticationService>();
            var demoService = new Mock<IDemoDataService>();

            //todo: mock https response

            // Act
            var controller = new LangController(authService.Object, demoService.Object);
            var view = controller.Change("tr");

            // Assert
            Assert.NotNull(view);
        }
        public void change_should_add_lang_cookie()
        {
            // Arrange
            var controllerContext = new Mock<ControllerContext>();
            var httpContext = new Mock<HttpContextBase>();
            var httpRequest = new Mock<HttpRequestBase>();
            var httpResponse = new Mock<HttpResponseBase>();

            controllerContext.Setup(x => x.HttpContext).Returns(httpContext.Object);
            httpContext.Setup(x => x.Request).Returns(httpRequest.Object);
            httpContext.Setup(x => x.Response).Returns(httpResponse.Object);
            httpResponse.Setup(x => x.SetCookie(It.IsAny<HttpCookie>()));

            // Act
            var controller = new LangController(null, null);
            controller.ControllerContext = controllerContext.Object;
            var view = controller.Change("tr");

            // Assert
            Assert.NotNull(view);
            controller.AssertGetAttribute("Change", new[] { typeof(string) });
            httpResponse.Verify(x => x.SetCookie(It.IsAny<HttpCookie>()), Times.AtLeastOnce);
        }