Beispiel #1
0
        public void TestDismissAction_ContestNotExist_ShouldRedirectToGetUserContests()
        {
            var data  = new PhotoContestDataMock();
            var users = data.Users;

            users.Add(new ApplicationUser()
            {
                Id        = "0",
                Email     = "*****@*****.**",
                UserName  = "******",
                FirstName = "*****@*****.**"
            });

            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "0"));
            var controller          = new ContestController(data);
            var controllerContext   = new TestableControllerContext();
            var principal           = new GenericPrincipal(identity, null);
            var testableHttpContext = new TestableHttpContext
            {
                User = principal
            };

            controllerContext.HttpContext = testableHttpContext;
            controller.ControllerContext  = controllerContext;
            var result = (RedirectToRouteResult)controller.Dismiss(0);

            Assert.AreEqual("GetUserContests", result.RouteValues["action"]);
            Assert.AreEqual("User", result.RouteValues["controller"]);
        }
Beispiel #2
0
        public void TestDismissAction_ShouldDismissTheContest()
        {
            var data  = new PhotoContestDataMock();
            var users = data.Users;

            users.Add(new ApplicationUser()
            {
                Id        = "0",
                Email     = "*****@*****.**",
                UserName  = "******",
                FirstName = "*****@*****.**"
            });
            var contests = data.Contests;

            contests.Add(new Contest()
            {
                Id                     = 0,
                Title                  = "test",
                Description            = "test",
                DeadlineStrategy       = DeadlineStrategy.ByTime,
                MaxParticipationsCount = 5,
                ParticipationEndTime   = DateTime.Now.AddDays(10),
                ParticipationStrategy  = Strategy.Open,
                VotingStrategy         = Strategy.Open,
                State                  = TypeOfEnding.Ongoing,
                OwnerId                = users.All().First().Id
            });

            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "0"));
            var controller          = new ContestController(data);
            var controllerContext   = new TestableControllerContext();
            var principal           = new GenericPrincipal(identity, null);
            var testableHttpContext = new TestableHttpContext
            {
                User = principal
            };

            controllerContext.HttpContext = testableHttpContext;
            controller.ControllerContext  = controllerContext;
            var result = controller.Dismiss(0) as ViewResult;

            Assert.AreEqual(TypeOfEnding.Dissmissed, data.Contests.All().First().State);
            Assert.IsTrue(data.IsSaveCalled);
        }