public void EndreBok()
        {
            var SessionMock = new TestControllerBuilder();

            var controller = new AdminController(new AdminBLL(new AdminRepositoryStub()));

            SessionMock.InitializeController(controller);
            controller.Session["AdminLoggetInn"] = true;

            // Act
            var actionResult = (ViewResult)controller.EndreBok(1);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }
        public void EndreBok_feil_validering_Post()
        {
            var SessionMock = new TestControllerBuilder();

            var controller = new AdminController(new AdminBLL(new AdminRepositoryStub()));

            SessionMock.InitializeController(controller);
            controller.Session["AdminLoggetInn"] = true;

            var innBok = new Boken();
            controller.ViewData.ModelState.AddModelError("feil", "ID = 0");

            // Act
            var actionResult = (ViewResult)controller.EndreBok(0, innBok);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            Assert.AreEqual(actionResult.ViewData.ModelState["feil"].Errors[0].ErrorMessage, "ID = 0");
            Assert.AreEqual(actionResult.ViewName, "");
        }
        public void EndreBok_funnet()
        {
            var SessionMock = new TestControllerBuilder();

            var controller = new AdminController(new AdminBLL(new AdminRepositoryStub()));

            SessionMock.InitializeController(controller);
            controller.Session["AdminLoggetInn"] = true;

            var innBok = new Boken()
            {
                ForfatterId = 100,
                SjangerId = 100,
                Tittel = "Isprinsessen",
                Pris = 399,
                Sjanger = "Krim",
                Forfatter = "Camilla Läckberg"
            };
            // Act
            var actionResultat = (RedirectToRouteResult)controller.EndreBok(1, innBok);

            // Assert
            Assert.AreEqual(actionResultat.RouteName, "");
            Assert.AreEqual(actionResultat.RouteValues.Values.First(), "hentAlleBoker");
        }
        public void EndreBok_Ikke_Funnet_Ved_View()
        {
            var SessionMock = new TestControllerBuilder();

            var controller = new AdminController(new AdminBLL(new AdminRepositoryStub()));

            SessionMock.InitializeController(controller);
            controller.Session["AdminLoggetInn"] = true;

            // Act
            var actionResult = (ViewResult)controller.EndreBok(0);
            var bokResultat = (Boken)actionResult.Model;

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
            Assert.AreEqual(bokResultat.ISBN, 0);
        }
        public void EndreBok_ikke_funnet_Post()
        {
            var SessionMock = new TestControllerBuilder();

            var controller = new AdminController(new AdminBLL(new AdminRepositoryStub()));

            SessionMock.InitializeController(controller);
            controller.Session["AdminLoggetInn"] = true;

            var innBok = new Boken()
            {
                ForfatterId = 100,
                SjangerId = 100,
                Tittel = "Isprinsessen",
                Pris = 399,
                Sjanger = "Krim",
                Forfatter = "Camilla Läckberg"
            };

            // Act
            var actionResult = (ViewResult)controller.EndreBok(0, innBok);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }