Exemplo n.º 1
0
        public void OversiktBaner()
        {
            //Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var forventetResultat = new List <bane>();
            var bane = new bane()
            {
                BaneID   = 1,
                Banenavn = "L1"
            };

            forventetResultat.Add(bane);
            forventetResultat.Add(bane);
            forventetResultat.Add(bane);
            forventetResultat.Add(bane);

            //Act
            var actionResult = (ViewResult)controller.OversiktBaner();
            var resultat     = (List <bane>)actionResult.Model;

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

            for (var i = 0; i < resultat.Count; i++)
            {
                Assert.AreEqual(forventetResultat[i].BaneID, resultat[i].BaneID);
                Assert.AreEqual(forventetResultat[i].Banenavn, resultat[i].Banenavn);
            }
        }
Exemplo n.º 2
0
        public void HentAlleBanenavn()
        {
            //Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var baneListe = new List <bane>();
            var bane      = new bane()
            {
                BaneID   = 1,
                Banenavn = "L1"
            };

            baneListe.Add(bane);
            baneListe.Add(bane);
            baneListe.Add(bane);
            baneListe.Add(bane);

            var jsonSerializer    = new JavaScriptSerializer();
            var forventetResultat = jsonSerializer.Serialize(baneListe);

            // Act
            var resultat = controller.hentAlleBanenavn();

            // Assert
            for (var i = 0; i < resultat.Length; i++)
            {
                Assert.AreEqual(forventetResultat[i], resultat[i]);
            }
        }
Exemplo n.º 3
0
        public bool leggTilBane(bane bane)
        {
            if (bane.Banenavn == "DetteErFeil")
            {
                return(false);
            }

            else
            {
                return(true);
            }
        }
Exemplo n.º 4
0
        public bool sjekkBaneOK(bane bane)
        {
            if (bane.Banenavn == "Feil")
            {
                return(false);
            }

            else
            {
                return(true);
            }
        }
Exemplo n.º 5
0
        public bool endreBane(int id, bane bane)
        {
            if (id == 10)
            {
                return(false);
            }

            else
            {
                return(true);
            }
        }
Exemplo n.º 6
0
 //returnerer false om banen finnes fra før av
 public bool sjekkBaneOK(bane innBane)
 {
     using (var db = new DB())
     {
         foreach (Bane b in db.Bane)
         {
             if (b.Banenavn == innBane.Banenavn)
             {
                 return(false);
             }
         }
         return(true);
     }
 }
Exemplo n.º 7
0
        public List <bane> hentAlleBaner()
        {
            var baneListe = new List <bane>();
            var bane      = new bane()
            {
                BaneID   = 1,
                Banenavn = "L1"
            };

            baneListe.Add(bane);
            baneListe.Add(bane);
            baneListe.Add(bane);
            baneListe.Add(bane);

            return(baneListe);
        }
Exemplo n.º 8
0
        public bool endreBane(int baneID, bane innBane)
        {
            using (var db = new DB())
            {
                try
                {
                    Bane endreBane = db.Bane.Find(baneID);
                    endreBane.Banenavn = innBane.Banenavn;
                    db.SaveChanges();
                    return(true);
                }

                catch (Exception)
                {
                    return(false);
                }
            }
        }
Exemplo n.º 9
0
        public void LeggTilBane_Model_Feil()
        {
            // Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var bane = new bane();

            controller.ViewData.ModelState.AddModelError("Banenavn", "Banenavn må oppgis");

            // Act
            var actionResult = (ViewResult)controller.LeggTilBane(bane);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            Assert.AreEqual(actionResult.ViewName, "");
        }
Exemplo n.º 10
0
        public ActionResult EndreBane(int id, bane endreBane)
        {
            Regex regex = new Regex("[^ÆØÅæøåa-zA-Z0-9 ]+");

            if (string.IsNullOrEmpty(endreBane.Banenavn))
            {
                ModelState.AddModelError("Banenavn", "Banenavn må oppgis");
            }

            else if (regex.IsMatch(endreBane.Banenavn))
            {
                ModelState.AddModelError("Banenavn", "Banenavn kan ikke inneholde spesialtegn");
            }

            if (ModelState.IsValid)
            {
                bane   gammelBane = _vyBLL.hentEnBane(id);
                string Bane       = gammelBane.Banenavn;

                //sjekker at bane ikke finnes fra før
                bool nyBaneOK = _vyBLL.sjekkBaneOK(endreBane);
                if (nyBaneOK)
                {
                    bool endringOK = _vyBLL.endreBane(id, endreBane);
                    if (endringOK)
                    {
                        log.Info("Bane " + Bane + " ble endret til " + endreBane.Banenavn + ". Endring lagret til databasen!");
                        return(RedirectToAction("OversiktBaner"));
                    }

                    else
                    {
                        log.Error("Bane " + Bane + " ble prøvd endret til " + endreBane.Banenavn + ". Endring feilet.Transaksjon avbrutt!");
                        ViewBag.save = "Kunne ikke oppdatere bane";
                    }
                }
                else
                {
                    ModelState.AddModelError("Banenavn", "Banen finnes fra før");
                }
            }
            return(View());
        }
Exemplo n.º 11
0
        public bane hentEnBane(int id)
        {
            if (id == 0)
            {
                var bane = new bane();
                bane.BaneID = id;
                return(bane);
            }

            else
            {
                var bane = new bane()
                {
                    BaneID   = 1,
                    Banenavn = "L1"
                };
                return(bane);
            }
        }
Exemplo n.º 12
0
        public void EndreBane_Regex_Feil()
        {
            //Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var bane = new bane()
            {
                Banenavn = "#¤%&/"
            };

            // Act
            var actionResult = (ViewResult)controller.EndreBane(0, bane);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
        }
Exemplo n.º 13
0
        public void LeggTilBane_SjekkOK_Feil()
        {
            // Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

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

            var bane = new bane()
            {
                BaneID   = 2,
                Banenavn = "Feil"
            };
            // Act
            var result = (ViewResult)controller.LeggTilBane(bane);

            // Assert
            Assert.AreEqual(result.ViewName, "");
        }
Exemplo n.º 14
0
 public bane hentEnBane(int id)
 {
     using (var db = new DB())
     {
         var enDbBane = db.Bane.Find(id);
         if (enDbBane == null)
         {
             return(null);
         }
         else
         {
             var utBane = new bane()
             {
                 BaneID   = enDbBane.BaneID,
                 Banenavn = enDbBane.Banenavn
             };
             return(utBane);
         }
     }
 }
Exemplo n.º 15
0
        public ActionResult SlettBane(int id, bane enBane)
        {
            enBane = _vyBLL.hentEnBane(id);
            String Banenavn = enBane.Banenavn;

            bool slettOK = _vyBLL.slettBane(id);

            if (slettOK)
            {
                log.Info("Sletting av Bane " + Banenavn + " ble utført!");
                return(RedirectToAction("OversiktBaner"));
            }

            else
            {
                log.Error("Sletting av Bane " + Banenavn + " ble ikke utført. Transaksjon avbrutt!");
                ViewBag.save = "Kunne ikke slette bane";
            }
            return(View());
        }
Exemplo n.º 16
0
        public void SlettBane_SlettOK_Feil()
        {
            // Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var bane = new bane()
            {
                BaneID   = 1,
                Banenavn = "L1"
            };

            // Act
            var actionResult = (ViewResult)controller.SlettBane(0, bane);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "");
        }
Exemplo n.º 17
0
        public void SlettBane_SlettOK_OK()
        {
            // Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var bane = new bane()
            {
                BaneID   = 1,
                Banenavn = "L1"
            };

            // Act
            var actionResult = (RedirectToRouteResult)controller.SlettBane(1, bane);

            // Assert
            Assert.AreEqual(actionResult.RouteName, "");
            Assert.AreEqual(actionResult.RouteValues.Values.First(), "OversiktBaner");
        }
Exemplo n.º 18
0
        public void EndreBane_ID_0()
        {
            //Arrange
            var controller  = new AdminController(new VyBLL(new AdminDBMetoderStubs()));
            var SessionMock = new TestControllerBuilder();

            SessionMock.InitializeController(controller);
            controller.Session["Innlogget"] = true;
            var forventetResultat = new bane()
            {
                BaneID = 0
            };

            //Act
            var actionResult = (ViewResult)controller.EndreBane(forventetResultat.BaneID);
            var resultat     = (bane)actionResult.Model;

            //Assert
            Assert.AreEqual(actionResult.ViewName, "");
            Assert.AreEqual(forventetResultat.BaneID, resultat.BaneID);
            Assert.AreEqual(forventetResultat.Banenavn, resultat.Banenavn);
        }
Exemplo n.º 19
0
        public ActionResult LeggTilBane(bane bane)
        {
            Regex regex = new Regex("[^ÆØÅæøåa-zA-Z0-9 ]+");

            if (string.IsNullOrEmpty(bane.Banenavn))
            {
                ModelState.AddModelError("Banenavn", "Banenavn må oppgis");
            }

            else if (regex.IsMatch(bane.Banenavn))
            {
                ModelState.AddModelError("Banenavn", "Banenavn kan ikke inneholde spesialtegn");
            }

            if (ModelState.IsValid)
            {
                //sjekker at banen ikke finnes fra før
                bool nyBaneOK = _vyBLL.sjekkBaneOK(bane);
                if (nyBaneOK)
                {
                    bool leggTilOK = _vyBLL.leggTilBane(bane);
                    if (leggTilOK)
                    {
                        log.Info("Ny Bane ved navn " + bane.Banenavn + " lagt til i databasen");
                        return(RedirectToAction("OversiktBaner"));
                    }
                    else
                    {
                        log.Error("Ny Bane med navn " + bane.Banenavn + " kunne ikke lagres. Transaksjon avbrutt!");
                        ViewBag.save = "Kunne ikke legge til bane";
                    }
                }
                else
                {
                    ModelState.AddModelError("Banenavn", "Banen finnes fra før");
                }
            }
            return(View());
        }
Exemplo n.º 20
0
        public bool leggTilBane(bane innBane)
        {
            var nyBane = new Bane()
            {
                Banenavn = innBane.Banenavn
            };

            nyBane.StasjonPaaBane = new List <StasjonPaaBane>();

            using (var db = new DB())
            {
                try
                {
                    db.Bane.Add(nyBane);
                    db.SaveChanges();
                    return(true);
                }

                catch (Exception)
                {
                    return(false);
                }
            }
        }
Exemplo n.º 21
0
 public bool sjekkBaneOK(bane innBane)
 {
     return(_AdminDAL.sjekkBaneOK(innBane));
 }
Exemplo n.º 22
0
 public bool leggTilBane(bane innBane)
 {
     return(_AdminDAL.leggTilBane(innBane));
 }
Exemplo n.º 23
0
 public bool endreBane(int baneID, bane innBane)
 {
     return(_AdminDAL.endreBane(baneID, innBane));
 }
Exemplo n.º 24
0
        public ActionResult EndreBane(int id)
        {
            bane enbane = _vyBLL.hentEnBane(id);

            return(View(enbane));
        }