Esempio n. 1
0
        public bool endreBok(int id, Boken innBok)
        {
            var db = new BokerContext();

            try
            {
                var bokSomSkalEndres = db.Boker.FirstOrDefault(p => p.ISBN == innBok.ISBN);

                if (bokSomSkalEndres == null)
                {
                    return(false);
                }

                bokSomSkalEndres.Tittel = innBok.Tittel;
                bokSomSkalEndres.Pris   = innBok.Pris;


                string forfatter = innBok.Forfatter;

                var funnetForfatter = db.Forfattere.FirstOrDefault(p => p.Navn == forfatter);

                if (funnetForfatter == null) // fant ikke forfatter, må legge inn
                {
                    var nyForfatter = new Forfatter();
                    nyForfatter.Navn = forfatter;
                    db.Forfattere.Add(nyForfatter);

                    bokSomSkalEndres.Forfatter = nyForfatter;
                }
                else
                {
                    bokSomSkalEndres.Forfatter = funnetForfatter;
                }

                string sjanger = innBok.Sjanger;

                var funnetSjanger = db.Sjangere.FirstOrDefault(p => p.Navn == sjanger);

                if (funnetSjanger == null) // fant ikke sjanger, må legge inn
                {
                    var nySjanger = new Sjanger();
                    nySjanger.Navn = sjanger;
                    db.Sjangere.Add(nySjanger);

                    bokSomSkalEndres.Sjanger = nySjanger;
                }
                else
                { // fant poststedet, legger det inn i den nye brukeren
                    bokSomSkalEndres.Sjanger = funnetSjanger;
                }

                db.SaveChanges();
                return(true);
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return(false);
            }
        }
Esempio n. 2
0
        public Boken hentEnBok(int id)
        {
            var db = new BokerContext();

            try
            {
                var enDbBok = db.Boker.Find(id);

                if (enDbBok == null)
                {
                    return(null);
                }
                else
                {
                    var utBok = new Boken()
                    {
                        ISBN        = enDbBok.ISBN,
                        ForfatterId = enDbBok.ForfatterId,
                        SjangerId   = enDbBok.SjangerId,
                        Tittel      = enDbBok.Tittel,
                        Pris        = enDbBok.Pris,
                        Sjanger     = enDbBok.Sjanger.Navn,
                        Forfatter   = enDbBok.Forfatter.Navn
                    };
                    return(utBok);
                }
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return(null);
            }
        }
Esempio n. 3
0
        public void RegistrerBok_Post_OK()
        {
            var SessionMock = new TestControllerBuilder();

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

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

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

            // Assert
            Assert.AreEqual(result.RouteName, "");
            Assert.AreEqual(result.RouteValues.Values.First(), "hentAlleBoker");
        }
Esempio n. 4
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, "");
        }
Esempio n. 5
0
        public bool settInnBok(Boken innBok)
        {
            var nyBok = new Bok()
            {
                ISBN   = innBok.ISBN,
                Tittel = innBok.Tittel,
                Pris   = innBok.Pris
            };

            var db = new BokerContext();

            try
            {
                var eksistererForfatter = db.Forfattere.FirstOrDefault(i => i.Navn == innBok.Forfatter);

                if (eksistererForfatter == null)
                {
                    var nyForfatter = new Forfatter()
                    {
                        Navn = innBok.Forfatter
                    };
                    nyBok.Forfatter   = nyForfatter;
                    nyBok.ForfatterId = nyForfatter.ForfatterId;
                }
                else
                {
                    nyBok.Forfatter   = eksistererForfatter;
                    nyBok.ForfatterId = eksistererForfatter.ForfatterId;
                }

                var eksistererSjanger = db.Sjangere.FirstOrDefault(i => i.Navn == innBok.Sjanger);

                if (eksistererSjanger == null)
                {
                    var nySjanger = new Sjanger()
                    {
                        Navn = innBok.Sjanger
                    };
                    nyBok.Sjanger   = nySjanger;
                    nyBok.SjangerId = nySjanger.SjangerId;
                }
                else
                {
                    nyBok.Sjanger   = eksistererSjanger;
                    nyBok.SjangerId = eksistererSjanger.SjangerId;
                }

                db.Boker.Add(nyBok);
                db.SaveChanges();
                return(true);
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return(false);
            }
        }
Esempio n. 6
0
        public bool endreBok(int id, Boken innBok)
        {
            var db = new BokerContext();
            try
            {
                var bokSomSkalEndres = db.Boker.FirstOrDefault(p => p.ISBN == innBok.ISBN);

                if (bokSomSkalEndres == null)
                    return false;

                bokSomSkalEndres.Tittel = innBok.Tittel;
                bokSomSkalEndres.Pris = innBok.Pris;

                string forfatter = innBok.Forfatter;

                var funnetForfatter = db.Forfattere.FirstOrDefault(p => p.Navn == forfatter);

                if (funnetForfatter == null) // fant ikke forfatter, må legge inn
                {
                    var nyForfatter = new Forfatter();
                    nyForfatter.Navn = forfatter;
                    db.Forfattere.Add(nyForfatter);

                    bokSomSkalEndres.Forfatter = nyForfatter;
                }
                else
                {
                    bokSomSkalEndres.Forfatter = funnetForfatter;
                }

                string sjanger = innBok.Sjanger;

                var funnetSjanger = db.Sjangere.FirstOrDefault(p => p.Navn == sjanger);

                if (funnetSjanger == null) // fant ikke sjanger, må legge inn
                {
                    var nySjanger = new Sjanger();
                    nySjanger.Navn = sjanger;
                    db.Sjangere.Add(nySjanger);

                    bokSomSkalEndres.Sjanger = nySjanger;
                }
                else
                { // fant poststedet, legger det inn i den nye brukeren
                    bokSomSkalEndres.Sjanger = funnetSjanger;
                }

                db.SaveChanges();
                return true;
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return false;
            }
        }
Esempio n. 7
0
        public ActionResult SlettBok(int id, Boken slettBok)
        {
            bool slettOK = _adminBLL.slettBok(id);

            if (slettOK)
            {
                return(RedirectToAction("hentAlleBoker"));
            }
            return(View());
        }
 public bool settInnBok(Boken innBok)
 {
     if (innBok.Tittel == "")
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
 public bool endreBok(int id, Boken innBok)
 {
     if (id == 0)
     {
         return false;
     }
     else
     {
         return true;
     }
 }
 public bool endreBok(int id, Boken innBok)
 {
     if (id == 0)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
Esempio n. 11
0
 public ActionResult registrerBok(Boken innBok)
 {
     if (ModelState.IsValid)
     {
         bool insertOK = _adminBLL.settInnBok(innBok);
         if (insertOK)
         {
             return(RedirectToAction("hentAlleBoker"));
         }
     }
     return(View());
 }
Esempio n. 12
0
 public ActionResult EndreBok(int id, Boken endreBok)
 {
     if (ModelState.IsValid)
     {
         bool endringOK = _adminBLL.endreBok(id, endreBok);
         if (endringOK)
         {
             return(RedirectToAction("hentAlleBoker"));
         }
     }
     return(View());
 }
Esempio n. 13
0
        public ActionResult EndreBok(int id, Boken endreBok)
        {
            if (ModelState.IsValid)
            {

                bool endringOK = _adminBLL.endreBok(id, endreBok);
                if (endringOK)
                {
                    return RedirectToAction("hentAlleBoker");
                }
            }
            return View();
        }
Esempio n. 14
0
        public ActionResult EndreBok(int id)
        {
            if (Session["AdminLoggetInn"] != null)
            {
                bool loggetInn = (bool)Session["AdminLoggetInn"];

                if (loggetInn)
                {
                    Boken enBok = _adminBLL.hentEnBok(id);
                    return(View(enBok));
                }
            }
            return(RedirectToAction("Index"));
        }
Esempio n. 15
0
        public void VisBoker_vis_View()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetResultat = new List <Boken>();
            var bok = new Boken()
            {
                ISBN        = 100,
                ForfatterId = 100,
                SjangerId   = 100,
                Tittel      = "Isprinsessen",
                Pris        = 399,
                Sjanger     = "Krim",
                Forfatter   = "Camilla Läckberg"
            };

            forventetResultat.Add(bok);
            forventetResultat.Add(bok);
            forventetResultat.Add(bok);

            //act
            var actionResult = (ViewResult)controller.hentAlleBoker();
            var resultat     = (List <Boken>)actionResult.Model;

            //assert

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

            for (var i = 0; i < resultat.Count; i++)
            {
                Assert.AreEqual(forventetResultat[i].ISBN, resultat[i].ISBN);
                Assert.AreEqual(forventetResultat[i].ForfatterId, resultat[i].ForfatterId);
                Assert.AreEqual(forventetResultat[i].SjangerId, resultat[i].SjangerId);
                Assert.AreEqual(forventetResultat[i].Tittel, resultat[i].Tittel);
                Assert.AreEqual(forventetResultat[i].Pris, resultat[i].Pris);
                Assert.AreEqual(forventetResultat[i].Sjanger, resultat[i].Sjanger);
                Assert.AreEqual(forventetResultat[i].Forfatter, resultat[i].Forfatter);
            }
        }
        public List <Boken> hentAlleBoker()
        {
            var bokListe = new List <Boken>();
            var bok      = new Boken()
            {
                ISBN        = 100,
                ForfatterId = 100,
                SjangerId   = 100,
                Tittel      = "Isprinsessen",
                Pris        = 399,
                Sjanger     = "Krim",
                Forfatter   = "Camilla Läckberg"
            };

            bokListe.Add(bok);
            bokListe.Add(bok);
            bokListe.Add(bok);
            return(bokListe);
        }
Esempio n. 17
0
        public void RegistrerBok_Post_DB_feil()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetBok = new Boken();

            forventetBok.Tittel = "";

            // Act
            var actionResult = (ViewResult)controller.registrerBok(forventetBok);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }
Esempio n. 18
0
        public void RegistrerBok_Post_Model_feil()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetBok = new Boken();

            controller.ViewData.ModelState.AddModelError("Tittel", "Ikke oppgitt tittel");

            // Act
            var actionResult = (ViewResult)controller.registrerBok(forventetBok);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            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, "");
        }
Esempio n. 20
0
        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 Boken hentEnBok(int id)
 {
     if (id == 0)
     {
         var bok = new Boken();
         bok.ISBN = 0;
         return(bok);
     }
     else
     {
         var bok = new Boken()
         {
             ISBN        = 100,
             ForfatterId = 100,
             SjangerId   = 100,
             Tittel      = "Isprinsessen",
             Pris        = 399,
             Sjanger     = "Krim",
             Forfatter   = "Camilla Läckberg"
         };
         return(bok);
     }
 }
        public void VisBoker_vis_View()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetResultat = new List<Boken>();
            var bok = new Boken()
            {
                ISBN = 100,
                ForfatterId = 100,
                SjangerId = 100,
                Tittel = "Isprinsessen",
                Pris = 399,
                Sjanger = "Krim",
                Forfatter = "Camilla Läckberg"
            };

            forventetResultat.Add(bok);
            forventetResultat.Add(bok);
            forventetResultat.Add(bok);

            //act
            var actionResult = (ViewResult)controller.hentAlleBoker();
            var resultat = (List<Boken>)actionResult.Model;

            //assert

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

            for (var i = 0; i < resultat.Count; i++)
            {
                Assert.AreEqual(forventetResultat[i].ISBN, resultat[i].ISBN);
                Assert.AreEqual(forventetResultat[i].ForfatterId, resultat[i].ForfatterId);
                Assert.AreEqual(forventetResultat[i].SjangerId, resultat[i].SjangerId);
                Assert.AreEqual(forventetResultat[i].Tittel, resultat[i].Tittel);
                Assert.AreEqual(forventetResultat[i].Pris, resultat[i].Pris);
                Assert.AreEqual(forventetResultat[i].Sjanger, resultat[i].Sjanger);
                Assert.AreEqual(forventetResultat[i].Forfatter, resultat[i].Forfatter);
            }
        }
        public void Slett_ikke_funnet_Post_Bok()
        {
            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.SlettBok(0, innBok);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }
        public List<Boken> hentAlleBoker()
        {
            var bokListe = new List<Boken>();
            var bok = new Boken()
            {
                ISBN = 100,
                ForfatterId = 100,
                SjangerId = 100,
                Tittel = "Isprinsessen",
                Pris = 399,
                Sjanger = "Krim",
                Forfatter = "Camilla Läckberg"
            };

            bokListe.Add(bok);
            bokListe.Add(bok);
            bokListe.Add(bok);
            return bokListe;
        }
Esempio n. 25
0
 public bool settInnBok(Boken innBok)
 {
     return _repository.settInnBok(innBok);
 }
 public bool settInnBok(Boken innBok)
 {
     if (innBok.Tittel == "")
     {
         return false;
     }
     else
     {
         return true;
     }
 }
 public Boken hentEnBok(int id)
 {
     if (id == 0)
     {
         var bok = new Boken();
         bok.ISBN = 0;
         return bok;
     }
     else
     {
         var bok = new Boken()
         {
             ISBN = 100,
             ForfatterId = 100,
             SjangerId = 100,
             Tittel = "Isprinsessen",
             Pris = 399,
             Sjanger = "Krim",
             Forfatter = "Camilla Läckberg"
         };
         return bok;
     }
 }
Esempio n. 28
0
 public bool endreBok(int id, Boken innBok)
 {
     return _repository.endreBok(id, innBok);
 }
        public void RegistrerBok_Post_Model_feil()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetBok = new Boken();
            controller.ViewData.ModelState.AddModelError("Tittel", "Ikke oppgitt tittel");

            // Act
            var actionResult = (ViewResult)controller.registrerBok(forventetBok);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            Assert.AreEqual(actionResult.ViewName, "");
        }
Esempio n. 30
0
 public bool endreBok(int id, Boken innBok)
 {
     return(_repository.endreBok(id, innBok));
 }
Esempio n. 31
0
 public bool settInnBok(Boken innBok)
 {
     return(_repository.settInnBok(innBok));
 }
Esempio n. 32
0
        public Boken hentEnBok(int id)
        {
            var db = new BokerContext();

            try
            {
                var enDbBok = db.Boker.Find(id);

                if (enDbBok == null)
                {
                    return null;
                }
                else
                {
                    var utBok = new Boken()
                    {
                        ISBN = enDbBok.ISBN,
                        ForfatterId = enDbBok.ForfatterId,
                        SjangerId = enDbBok.SjangerId,
                        Tittel = enDbBok.Tittel,
                        Pris = enDbBok.Pris,
                        Sjanger = enDbBok.Sjanger.Navn,
                        Forfatter = enDbBok.Forfatter.Navn
                    };
                    return utBok;
                }
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return null;
            }
        }
Esempio n. 33
0
 public ActionResult SlettBok(int id, Boken slettBok)
 {
     bool slettOK = _adminBLL.slettBok(id);
     if (slettOK)
     {
         return RedirectToAction("hentAlleBoker");
     }
     return View();
 }
        public void RegistrerBok_Post_DB_feil()
        {
            var SessionMock = new TestControllerBuilder();

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

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

            var forventetBok = new Boken();
            forventetBok.Tittel = "";

            // Act
            var actionResult = (ViewResult)controller.registrerBok(forventetBok);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }
Esempio n. 35
0
        public bool settInnBok(Boken innBok)
        {
            var nyBok = new Bok()
            {
                ISBN = innBok.ISBN,
                Tittel = innBok.Tittel,
                Pris = innBok.Pris
            };

            var db = new BokerContext();
            try
            {
                var eksistererForfatter = db.Forfattere.FirstOrDefault(i => i.Navn == innBok.Forfatter);

                if (eksistererForfatter == null)
                {
                    var nyForfatter = new Forfatter()
                    {
                        Navn = innBok.Forfatter
                    };
                    nyBok.Forfatter = nyForfatter;
                    nyBok.ForfatterId = nyForfatter.ForfatterId;
                }
                else
                {
                    nyBok.Forfatter = eksistererForfatter;
                    nyBok.ForfatterId = eksistererForfatter.ForfatterId;
                }

                var eksistererSjanger = db.Sjangere.FirstOrDefault(i => i.Navn == innBok.Sjanger);

                if (eksistererSjanger == null)
                {
                    var nySjanger = new Sjanger()
                    {
                        Navn = innBok.Sjanger
                    };
                    nyBok.Sjanger = nySjanger;
                    nyBok.SjangerId = nySjanger.SjangerId;
                }
                else
                {
                    nyBok.Sjanger = eksistererSjanger;
                    nyBok.SjangerId = eksistererSjanger.SjangerId;
                }

                db.Boker.Add(nyBok);
                db.SaveChanges();
                return true;
            }
            catch (Exception feil)
            {
                skrivTilFil(feil);
                return false;
            }
        }
        public void Slettet_funnet_Post_Bok()
        {
            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 = (RedirectToRouteResult)controller.SlettBok(1, innBok);

            // Assert
            Assert.AreEqual(actionResult.RouteName, "");
            Assert.AreEqual(actionResult.RouteValues.Values.First(), "hentAlleBoker");
        }
Esempio n. 37
0
        public ActionResult registrerBok(Boken innBok)
        {
            if (ModelState.IsValid)
            {

                bool insertOK = _adminBLL.settInnBok(innBok);
                if (insertOK)
                {
                    return RedirectToAction("hentAlleBoker");
                }
            }
            return View();
        }