public void AddCacheDependencies_NullKeys_ThrowsArgumentNullException()
        {
            Controller controller = new DesignerController();

            /// TODO: fix always is null expression
            controller.AddCacheDependencies(null);
        }
        public void AddCacheDependencies_NoCacheItem_CreatesAndAddsNewList()
        {
            // Arrange
            var context = new HttpContextWrapper(new HttpContext(new HttpRequest(null, "http://tempuri.org/", null), new HttpResponse(null)));

            var controller   = new DesignerController();
            var dependencies = new List <CacheDependencyKey>();

            var depKey1 = new CacheDependencyKey {
                Key = "mykey1", Type = this.GetType()
            };
            var depKey2 = new CacheDependencyKey {
                Key = "mykey2", Type = this.GetType()
            };

            dependencies.Add(depKey1);
            dependencies.Add(depKey2);

            // Act
            SystemManager.RunWithHttpContext(context, () => controller.AddCacheDependencies(dependencies));

            // Assert
            var cacheObject = context.Items[PageCacheDependencyKeys.PageData];

            Assert.IsNotNull(cacheObject, "No cache object was set in the context.");
            Assert.IsTrue(cacheObject is IList <CacheDependencyKey>, "The cache object was not of the expected type.");

            var cacheList = (IList <CacheDependencyKey>)cacheObject;

            Assert.IsTrue(cacheList.Contains(depKey1), "The first cache dependency was not added.");
            Assert.IsTrue(cacheList.Contains(depKey2), "The second cache dependency was not added.");
            Assert.AreEqual(dependencies.Count, cacheList.Count, "There is an unexpected count of cache dependency keys.");
        }
Exemplo n.º 3
0
        public void RenderDefaultView_WithExpectedViewModel()
        {
            // Arrange
            var domainService      = new Mock <IDomainService>();
            var userService        = new Mock <IUserService>();
            var loggedInUser       = new Mock <ILoggedInUser>();
            var designerController = new DesignerController(userService.Object, domainService.Object, loggedInUser.Object);



            var domains = new List <Domain>()
            {
                new Domain()
                {
                    Name = "name"
                }
            };

            domainService.Setup(d => d.GetAllDomainsPendingDesign()).Returns(domains);

            // Act & Assert
            designerController
            .WithCallTo(s => s.Domains())
            .ShouldRenderPartialView("_Pending")
            .WithModel <IEnumerable <PendingDesignDomainViewModel> >(
                p =>
            {
                Assert.AreEqual(1, p.Count());
                Assert.AreEqual("name", p.First().Name);
                Assert.AreEqual("Pending Design", p.First().Status);
                Assert.AreEqual(true, p.First().HasLogoUrl);
            });
        }
        public void AddCacheDependencies_NullContext_ThrowsInvalidOperationException()
        {
            Assert.IsNull(SystemManager.CurrentHttpContext, "Current HttpContext is expected to be null in unit tests but here it is not!");

            Controller controller = new DesignerController();

            controller.AddCacheDependencies(new CacheDependencyKey[0]);
        }
Exemplo n.º 5
0
        public void Create_Instance_Of_Controller_WhenArgumentsAreCorrect()
        {
            // Arrange
            var domainService = new Mock <IDomainService>();
            var userService   = new Mock <IUserService>();
            var loggedInUser  = new Mock <ILoggedInUser>();

            // Act
            var designerController = new DesignerController(userService.Object, domainService.Object, loggedInUser.Object);

            // Assert
            Assert.IsInstanceOf <Controller>(designerController);
        }
Exemplo n.º 6
0
        public void RenderProposePartialView_WithExpectedViewModel()
        {
            // Arrange
            var domainService      = new Mock <IDomainService>();
            var userService        = new Mock <IUserService>();
            var loggedInUser       = new Mock <ILoggedInUser>();
            var designerController = new DesignerController(userService.Object, domainService.Object, loggedInUser.Object);


            // Act & Assert
            designerController
            .WithCallTo(s => s.Propose("name"))
            .ShouldRenderPartialView("_Propose")
            .WithModel <SubmitLogoViewModel>(
                p =>
            {
                Assert.AreEqual("name", p.Name);
            });
        }
        public void Designer_UsesPrecompiledView()
        {
            var controller = new DesignerController();
            var routeData  = new RouteData();

            routeData.Values["controller"] = "Designer";
            routeData.Values["widgetName"] = "News";
            controller.ControllerContext   = new ControllerContext(new RequestContext(SystemManager.CurrentHttpContext, routeData), controller);
            FrontendControllerFactory.EnhanceViewEngines(controller);

            var viewResult = controller.ViewEngineCollection.FindView(controller.ControllerContext, "Designer", null);

            Assert.IsNotNull(viewResult, "View result is null.");
            Assert.IsNotNull(viewResult.View, "The view was not found.");
            Assert.IsInstanceOfType <PrecompiledMvcView>(viewResult.View, "The view is not precompiled.");

            viewResult = controller.ViewEngineCollection.FindView(controller.ControllerContext, "DesignerView.Simple", null);

            Assert.IsNotNull(viewResult, "View result is null.");
            Assert.IsNotNull(viewResult.View, "The view was not found.");
            Assert.IsInstanceOfType <PrecompiledMvcView>(viewResult.View, "The view is not precompiled.");
        }
Exemplo n.º 8
0
        public void RenderDefaultView_WithExpectedViewModel()
        {
            // Arrange
            var domainService      = new Mock <IDomainService>();
            var userService        = new Mock <IUserService>();
            var loggedInUser       = new Mock <ILoggedInUser>();
            var designerController = new DesignerController(userService.Object, domainService.Object, loggedInUser.Object);

            string userId    = "userId";
            var    createdOn = new DateTime(17, 1, 1);
            var    user      = new User()
            {
                Id = userId, FirstName = "firstname", LastName = "lastname"
            };

            var pendingDomains = new List <Domain>()
            {
                new Domain()
                {
                }
            };
            var publisheDomains = new List <Domain>()
            {
                new Domain()
                {
                }
            };
            var allDomainsPendingDesign = new List <Domain>()
            {
                new Domain()
                {
                }
            };

            user.CreatedOn = createdOn;
            user.Balance   = 10000;

            loggedInUser.Setup(l => l.GetUserId()).Returns(userId);

            userService.Setup(u => u.GetUserByStringId(userId)).Returns(user);

            domainService.Setup(d => d.GetPendingApprovalDomainsSubmittedByDesigner(userId)).Returns(pendingDomains);
            domainService.Setup(d => d.GetPublishedDomainsSubmittedByDesigner(userId)).Returns(publisheDomains);
            domainService.Setup(d => d.GetAllDomainsPendingDesign()).Returns(allDomainsPendingDesign);


            // Act & Assert
            designerController
            .WithCallTo(d => d.Index())
            .ShouldRenderDefaultView()
            .WithModel <DesignerProfileBoxStatsViewModel>(
                s =>
            {
                Assert.AreEqual(user.FirstName + " " + user.LastName, s.FullName);
                Assert.AreEqual(user.FirstName[0].ToString() + user.LastName[0].ToString(), s.Initials);
                Assert.AreEqual(createdOn, s.MemberSince);
                Assert.AreEqual(Math.Round(user.Balance / 1000, 0) + "k", s.BalanceInKUsd);
                Assert.AreEqual(10000, s.Balance);
                Assert.AreEqual(1, s.DomainsPendingLogoDesign);
                Assert.AreEqual(1, s.Published);
                Assert.AreEqual(1, s.Submitted);
            });
        }
Exemplo n.º 9
0
        public void AddCacheDependencies_NullKeys_ThrowsArgumentNullException()
        {
            Controller controller = new DesignerController();

            controller.AddCacheDependencies(null);
        }