Пример #1
0
        public void ListFlyplasser_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new FlyplassController(new FlyplassBLL(new FlyplassStub()));

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

            var forventetResultat = new List <Flyplass>();
            var flyplass          = new Flyplass()
            {
                FlyplassKode = "OSL",
                By           = "Oslo"
            };


            forventetResultat.Add(flyplass);
            forventetResultat.Add(flyplass);
            forventetResultat.Add(flyplass);

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

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

            for (var i = 0; i < resultat.Count; i++)
            {
                Assert.AreEqual(forventetResultat[i].FlyplassKode, resultat[i].FlyplassKode);
                Assert.AreEqual(forventetResultat[i].By, resultat[i].By);
            }
        }
        public bool LeggInn(Flyplass flyplass)
        {
            using (var db = new DB())
            {
                try
                {
                    var dbflyplass = Mapper.Map <DBFlyplass>(flyplass);
                    if (db.Flyplasser.FirstOrDefault(fly => fly.ID == dbflyplass.ID) == null)
                    {
                        db.Flyplasser.Add(dbflyplass);

                        db.Endringer.Add(new DBEndring()
                        {
                            Tidspunkt = DateTime.Now,
                            Endring   = $"Legg til flyplass med ID {dbflyplass.ID}, nye verdier: {dbflyplass.Navn}, {dbflyplass.By}, {dbflyplass.Land}"
                        });

                        db.SaveChanges();
                        return(true);
                    }
                }
                catch (Exception e)
                {
                    DALsetup.LogFeilTilFil("DBFlyplass:LeggInn", e, "En feil oppsto da metoden prøvde å legge inn flyplass");
                }
            }
            return(false);
        }
Пример #3
0
        public bool settInnFlyplass(Flyplass innFlyplass)
        {
            var nyFlyplass = new Flyplass()
            {
                FlyplassKode = innFlyplass.FlyplassKode,
                By           = innFlyplass.By,
            };

            var db = new RetroDb();

            try
            {
                var eksistererFlyplass = db.Flyplasser.Find(innFlyplass.FlyplassKode);
                if (eksistererFlyplass == null)
                {
                    db.Flyplasser.Add(nyFlyplass);
                }
                db.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                LogError(ex);
                return(false);
            }
        }
        public List <Rute> alleRuter()
        {
            // OK
            var reiseFra = new Flyplass()
            {
                FlyplassKode = "OSL", By = "Oslo"
            };
            var reiseTil = new Flyplass()
            {
                FlyplassKode = "KRS", By = "Kristiansand"
            };
            var flymaskin = new Flymaskin()
            {
                FlyId = "AA00", Type = "Boeing", Kapasitet = 100
            };

            var ruteListe = new List <Rute>();
            var rute      = new Rute()
            {
                RuteId    = "OSLKRS000",
                ReiseFra  = reiseFra,
                ReiseTil  = reiseTil,
                Dato      = "10.10.2017",
                Tid       = "10:00",
                ReiseTid  = "10min",
                Flymaskin = flymaskin,
                Pris      = 999
            };

            ruteListe.Add(rute);
            ruteListe.Add(rute);
            ruteListe.Add(rute);
            return(ruteListe);
        }
Пример #5
0
 public bool settInnFlyplass(Flyplass innFlyplass)
 {
     if (innFlyplass.FlyplassKode == "")
     {
         return(false);
     }
     return(true);
 }
Пример #6
0
 public bool Endre(Flyplass flyplass)
 {
     if (flyplass != null && flyplass.By != null && flyplass.ID != null && flyplass.Land != null && flyplass.Navn != null)
     {
         return(flyplasser.FirstOrDefault(f => f.ID == flyplass.ID) != null);
     }
     return(false);
 }
Пример #7
0
 public bool LeggInn(Flyplass flyplass)
 {
     if (flyplass != null && flyplass.By != null && flyplass.ID != null && flyplass.Land != null && flyplass.Navn != null)
     {
         flyplasser.Add(flyplass);
         return(true);
     }
     return(false);
 }
        public ActionResult EndreFlyplass(string FlyplassKode)
        {
            if (!CheckSession())
            {
                return(RedirectToAction("IngenTilgang", "Admin"));
            }
            Flyplass enFlyplass = _flyplassBLL.hentFlyplass(FlyplassKode);

            return(View(enFlyplass));
        }
Пример #9
0
 public bool endreFlyplass(string flyplassKode, Flyplass innFlyplass)
 {
     if (flyplassKode == "")
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
        public void LagFlyplassUgyldigModellIDatabase()
        {
            var controller = NyAdminControllerMedSession(true);
            var flyplass   = new Flyplass();

            var faktisk = (RedirectToRouteResult)controller.LagFlyplass(flyplass);

            Assert.AreEqual("Flyplasser", faktisk.RouteValues["action"]);
            string forventet = "Kunne ikke legge inn flyplass. Feil i databasen.";

            Assert.AreEqual(forventet, controller.TempData["feilmelding"]);
        }
        public void EndreFlyplassSkalFungereMedGyldigModell()
        {
            var controller = NyAdminControllerMedSession(true);
            var flyplass   = new Flyplass()
            {
                ID   = "OSL",
                Navn = "Gardermoen Lufthavnn",
                By   = "Oslo",
                Land = "Norge"
            };
            string faktisk = controller.EndreFlyplass(flyplass);

            Assert.AreEqual("true", faktisk);
        }
Пример #12
0
        public List <Flyplass> alleFlyplasser()
        {
            var flyplassListe = new List <Flyplass>();
            var flyplass      = new Flyplass()
            {
                FlyplassKode = "OSL",
                By           = "Oslo"
            };

            flyplassListe.Add(flyplass);
            flyplassListe.Add(flyplass);
            flyplassListe.Add(flyplass);
            return(flyplassListe);
        }
Пример #13
0
        public void Endre_funnet_Session_ikke_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new BestillingController(new BestillingBLL(new BestillingStub()));

            SessionMock.InitializeController(controller);
            controller.Session["LoggetInn"] = false;

            // Bestilling Objekter
            var reiseFra = new Flyplass()
            {
                FlyplassKode = "OSL", By = "Oslo"
            };
            var reiseTil = new Flyplass()
            {
                FlyplassKode = "KRS", By = "Kristiansand"
            };
            var flymaskin = new Flymaskin()
            {
                FlyId = "AA00", Type = "Boeing", Kapasitet = 100
            };
            var rute = new Rute()
            {
                RuteId = "OSLKRS000", ReiseFra = reiseFra, ReiseTil = reiseTil, Dato = "10.10.2017", Tid = "10:00", ReiseTid = "10min", Flymaskin = flymaskin, Pris = 999
            };
            var poststed = new Poststed()
            {
                Postnr = "1000", Sted = "Oslo"
            };
            var kunde = new Kunde()
            {
                Fornavn = "Per", Etternavn = "Olsen", Adresse = "Osloveien 82", Poststed = poststed, Telefon = "12345678", Epost = "*****@*****.**", Aktiv = true
            };

            ;
            var innBestilling = new Bestilling()
            {
                Id    = 1,
                Rute  = rute,
                Kunde = kunde
            };

            // Act
            var actionResultat = (RedirectToRouteResult)controller.EndreBestilling(1, innBestilling);

            // Assert
            Assert.AreEqual(actionResultat.RouteName, "");
            Assert.AreEqual(actionResultat.RouteValues.Values.First(), "IngenTilgang");
        }
        public ActionResult SlettFlyplass(string flyplassKode, Flyplass flyplass)
        {
            if (!CheckSession())
            {
                return(RedirectToAction("IngenTilgang", "Admin"));
            }
            bool OK = _flyplassBLL.slettFlyplass(flyplassKode);

            if (OK)
            {
                return(RedirectToAction("ListFlyplasser"));
            }
            return(View("~/Views/Error/Error.cshtml"));
        }
        public void EndreFlyplassMedUgyldigID()
        {
            var controller = NyAdminControllerMedSession(true);
            var flyplass   = new Flyplass()
            {
                ID   = "",
                Navn = "Gardermoen Lufthavn",
                By   = "Oslo",
                Land = "Norge"
            };
            string faktisk = controller.EndreFlyplass(flyplass);

            Assert.AreEqual("En feil oppsto under lagring til databasen.", faktisk);
        }
 public List <Flygning> HentFlygningerTil(Flyplass flyplass)
 {
     using (var db = new DB())
     {
         try
         {
             return(Mapper.Map <List <Flygning> >(db.Flygninger.Include("Fly").Where(flygning => flygning.Rute.Til.ID == flyplass.ID).ToList()));
         }
         catch (Exception e)
         {
             DALsetup.LogFeilTilFil("DBFlygning:HentFlygningerTil", e, "En feil oppsto da metoden prøvde å hente flygninger");
             return(null);
         }
     }
 }
        public void LagFlyplassGyldigModell()
        {
            var controller = NyAdminControllerMedSession(true);
            var flyplass   = new Flyplass()
            {
                ID   = "OSL",
                Navn = "Gardermoen Lufthavn",
                By   = "Oslo",
                Land = "Norge"
            };

            var faktisk = (RedirectToRouteResult)controller.LagFlyplass(flyplass);

            Assert.AreEqual("Flyplasser", faktisk.RouteValues["action"]);
            Assert.AreEqual(null, controller.TempData["feilmelding"]);
        }
 public ActionResult RegistrerFlyplass(Flyplass innFlyplass)
 {
     if (!CheckSession())
     {
         return(RedirectToAction("IngenTilgang", "Admin"));
     }
     if (ModelState.IsValid)
     {
         bool insertOK = _flyplassBLL.settInnFlyplass(innFlyplass);
         if (insertOK)
         {
             return(RedirectToAction("ListFlyplasser"));
         }
     }
     return(View("~/Views/Error/Error.cshtml"));
 }
 public ActionResult LagFlyplass(Flyplass flyplass)
 {
     if (ErAdmin())
     {
         if (ModelState.IsValid)
         {
             if (!bllflyplass.LeggInn(flyplass))
             {
                 TempData["feilmelding"] = "Kunne ikke legge inn flyplass. Feil i databasen.";
             }
             return(RedirectToAction("Flyplasser"));
         }
         return(View(flyplass));
     }
     return(RedirectToAction("Sok", "Home"));
 }
 public ActionResult EndreFlyplass(string FlyplassKode, Flyplass endreFlyplass)
 {
     if (!CheckSession())
     {
         return(RedirectToAction("IngenTilgang", "Admin"));
     }
     if (ModelState.IsValid)
     {
         bool OK = _flyplassBLL.endreFlyplass(FlyplassKode, endreFlyplass);
         if (OK)
         {
             return(RedirectToAction("ListFlyplasser"));
         }
     }
     return(View("~/Views/Error/Error.cshtml"));
 }
        public void EndreFlyplassMedUgyldigModell()
        {
            var controller = NyAdminControllerMedSession(true);
            var flyplass   = new Flyplass()
            {
                ID   = "OSL",
                Navn = "#!¤",
                By   = "Oslo",
                Land = "Norge"
            };

            controller.ModelState.AddModelError("Flyplass.Navn", "Navn kan kun bestå av bokstaver");

            string faktisk = controller.EndreFlyplass(flyplass);

            Assert.AreEqual("Navn kan kun bestå av bokstaver", faktisk);
        }
Пример #22
0
        public bool endreFlyplass(string FlyplassKode, Flyplass innFlyplass)
        {
            var db = new RetroDb();

            try
            {
                Flyplass endreFlyplass = db.Flyplasser.Find(FlyplassKode);
                endreFlyplass.FlyplassKode = innFlyplass.FlyplassKode;
                endreFlyplass.By           = innFlyplass.By;
                db.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                LogError(ex);
                return(false);
            }
        }
 public string EndreFlyplass(Flyplass item)
 {
     if (ErAdmin())
     {
         if (ModelState.IsValid)
         {
             if (bllflyplass.Endre(item))
             {
                 return("true");
             }
             return("En feil oppsto under lagring til databasen.");
         }
         // https://stackoverflow.com/questions/1352948/how-to-get-all-errors-from-asp-net-mvc-modelstate
         return(string.Join(".\n", ModelState.Values
                            .SelectMany(x => x.Errors)
                            .Select(x => x.ErrorMessage)));
     }
     return("Ikke admin");
 }
Пример #24
0
 public Flyplass hentEnFlyplass(string flyplassKode)
 {
     if (flyplassKode == "")
     {
         var flyplass = new Flyplass();
         flyplass.FlyplassKode = "TST";
         flyplass.By           = "Test";
         return(flyplass);
     }
     else
     {
         var flyplass = new Flyplass()
         {
             FlyplassKode = "OSL",
             By           = "Oslo"
         };
         return(flyplass);
     }
 }
Пример #25
0
        public void Registrer_Post_DB_feil()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new FlyplassController(new FlyplassBLL(new FlyplassStub()));

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

            var innFlyplass = new Flyplass();

            innFlyplass.FlyplassKode = "";

            // Act
            var actionResult = (ViewResult)controller.RegistrerFlyplass(innFlyplass);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "~/Views/Error/Error.cshtml");
        }
Пример #26
0
        public void Registrer_Post_Model_feil()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new FlyplassController(new FlyplassBLL(new FlyplassStub()));

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

            var innFlyplass = new Flyplass();

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

            // Act
            var actionResult = (ViewResult)controller.RegistrerFlyplass(innFlyplass);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            Assert.AreEqual(actionResult.ViewName, "~/Views/Error/Error.cshtml");
        }
Пример #27
0
        public Flyplass hentEnFlyplass(string FlyplassKode)
        {
            var db           = new RetroDb();
            var enDbFlyplass = db.Flyplasser.Find(FlyplassKode);

            if (enDbFlyplass == null)
            {
                LogErrorString(enDbFlyplass.ToString());
                return(null);
            }
            else
            {
                var utFlyplass = new Flyplass()
                {
                    FlyplassKode = enDbFlyplass.FlyplassKode,
                    By           = enDbFlyplass.By
                };
                return(utFlyplass);
            }
        }
Пример #28
0
        public List <Bestilling> alleBestillinger()
        {
            // OK
            var reiseFra = new Flyplass()
            {
                FlyplassKode = "OSL", By = "Oslo"
            };
            var reiseTil = new Flyplass()
            {
                FlyplassKode = "KRS", By = "Kristiansand"
            };
            var flymaskin = new Flymaskin()
            {
                FlyId = "AA00", Type = "Boeing", Kapasitet = 100
            };
            var rute = new Rute()
            {
                RuteId = "OSLKRS000", ReiseFra = reiseFra, ReiseTil = reiseTil, Dato = "10.10.2017", Tid = "10:00", ReiseTid = "10min", Flymaskin = flymaskin, Pris = 999
            };
            var poststed = new Poststed()
            {
                Postnr = "1000", Sted = "Oslo"
            };
            var kunde = new Kunde()
            {
                Fornavn = "Per", Etternavn = "Olsen", Adresse = "Osloveien 82", Poststed = poststed, Telefon = "12345678", Epost = "*****@*****.**", Aktiv = true
            };

            var bestillingListe = new List <Bestilling>();
            var bestilling      = new Bestilling()
            {
                Id    = 1,
                Rute  = rute,
                Kunde = kunde
            };

            bestillingListe.Add(bestilling);
            bestillingListe.Add(bestilling);
            bestillingListe.Add(bestilling);
            return(bestillingListe);
        }
Пример #29
0
        public void Endre_feil_validering_Post()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new FlyplassController(new FlyplassBLL(new FlyplassStub()));

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

            var innFlyplass = new Flyplass();

            controller.ViewData.ModelState.AddModelError("feil", "FlyplassKode = ''");

            // Act
            var actionResult = (ViewResult)controller.EndreFlyplass("", innFlyplass);

            // Assert
            Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1);
            Assert.AreEqual(actionResult.ViewData.ModelState["feil"].Errors[0].ErrorMessage, "FlyplassKode = ''");
            Assert.AreEqual(actionResult.ViewName, "~/Views/Error/Error.cshtml");
        }
Пример #30
0
        public void Endre_funnet_session_ikke_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new FlyplassController(new FlyplassBLL(new FlyplassStub()));

            SessionMock.InitializeController(controller);
            controller.Session["LoggetInn"] = false;

            var innFlyplass = new Flyplass()
            {
                FlyplassKode = "OSL",
                By           = "Oslo"
            };
            // Act
            var actionResultat = (RedirectToRouteResult)controller.EndreFlyplass("OSL", innFlyplass);

            // Assert
            Assert.AreEqual(actionResultat.RouteName, "");
            Assert.AreEqual(actionResultat.RouteValues.Values.First(), "IngenTilgang");
        }