Пример #1
0
        public async Task HentEnRuteLoggetInnOK()
        {
            // Arrange
            var rute1 = new Rute
            {
                RId        = 1,
                BussNR     = "230",
                FraRute    = "Oslo",
                TilRute    = "Sandvika",
                Dato       = "2020-10-05",
                AvgangsTid = "12:00",
                AnkomstTid = "15:50"
            };

            mockRep.Setup(k => k.HentEnRute(It.IsAny <int>())).ReturnsAsync(rute1);

            var norwayController = new NorWayController(mockRep.Object, mockLog.Object);

            mockSession[_loggetInn] = _loggetInn;
            mockHttpContext.Setup(s => s.Session).Returns(mockSession);
            norwayController.ControllerContext.HttpContext = mockHttpContext.Object;

            // Act
            var resultat = await norwayController.HentEnRute(It.IsAny <int>()) as OkObjectResult;

            // Assert
            Assert.Equal((int)HttpStatusCode.OK, resultat.StatusCode);
            Assert.Equal <Rute>(rute1, (Rute)resultat.Value);
        }
Пример #2
0
        public void Endre_ikke_funnet_Post()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new RuteController(new RuteBLL(new RuteStub()));

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

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

            // Act
            var actionResult = (ViewResult)controller.EndreRute("", innRute);

            // Assert
            Assert.AreEqual(actionResult.ViewName, "~/Views/Error/Error.cshtml");
        }
Пример #3
0
        public async Task HentRuteStoppLoggetInn()
        {
            var oslo = new Holdeplass {
                Sted = "Oslo", Sone = 1
            };
            var OsloStavanger = new Rute {
                Navn = "Oslo-Stavanger"
            };
            var RuteOsloStavangerStoppOslo = new RuteStopp {
                Holdeplass = oslo, Rute = OsloStavanger, StoppTid = TimeSpan.FromMinutes(0)
            };

            var liste = new List <RuteStopp>();

            liste.Add(RuteOsloStavangerStoppOslo);

            mockRep.Setup(k => k.HentRuteStopp()).ReturnsAsync(liste);
            var bestillingController = new AdminController(mockRep.Object);

            mockSession[_loggetInn] = _loggetInn;
            mockHttpContext.Setup(s => s.Session).Returns(mockSession);
            bestillingController.ControllerContext.HttpContext = mockHttpContext.Object;

            var resultat = await bestillingController.HentRuteStopp() as OkObjectResult;

            Assert.Equal((int)HttpStatusCode.OK, resultat.StatusCode);
            Assert.Equal <List <RuteStopp> >((List <RuteStopp>)resultat.Value, liste);
        }
Пример #4
0
        public async Task EndreRSLoggetInnFeilInput()
        {
            var oslo = new Holdeplass {
                Sted = "", Sone = 1
            };
            var OsloStavanger = new Rute {
                Navn = "Oslo-Stavanger"
            };
            var RuteOsloStavangerStoppOslo = new RuteStopp {
                Holdeplass = oslo, Rute = OsloStavanger, StoppTid = TimeSpan.FromMinutes(0)
            };

            mockRep.Setup(k => k.EndreRS(RuteOsloStavangerStoppOslo)).ReturnsAsync(true);

            var bestillingController = new AdminController(mockRep.Object);

            bestillingController.ModelState.AddModelError("Holdeplass", "Feil i inputvalidering på server");

            mockSession[_loggetInn] = _loggetInn;
            mockHttpContext.Setup(s => s.Session).Returns(mockSession);
            bestillingController.ControllerContext.HttpContext = mockHttpContext.Object;

            var resultat = await bestillingController.EndreRS(It.IsAny <RuteStopp>()) as BadRequestObjectResult;

            Assert.Equal((int)HttpStatusCode.BadRequest, resultat.StatusCode);
            Assert.Equal("Feil i inputvalidering på server", resultat.Value);
        }
Пример #5
0
        public string GetDataForSo(int id)
        {
            Context.Rute dbitem = RepoRute.FindByPK(id);
            Rute         model  = new Rute(dbitem);

            return(new JavaScriptSerializer().Serialize(new { data = model }));
        }
        public void EndreRuteSkalFungereMedGyldigModell()
        {
            var controller = NyAdminControllerMedSession(true);
            var rute       = new Rute()
            {
                ID  = 1,
                Fra = new Flyplass()
                {
                    ID   = "OSL",
                    By   = "Oslo",
                    Land = "Norge",
                    Navn = "Gardermoen Lufthavn"
                },
                Til = new Flyplass()
                {
                    ID   = "BOO",
                    By   = "Bodø",
                    Land = "Norge",
                    Navn = "Bodø Lufthavn"
                },
                BasePris = 1499,
                Reisetid = new TimeSpan(1, 0, 0)
            };

            string faktisk = controller.EndreRute(rute);

            Assert.AreEqual("true", faktisk);
        }
        public void EndreRuterGaarIkkeGjennomOslo()
        {
            var controller = NyAdminControllerMedSession(true);
            var rute       = new Rute()
            {
                ID  = 1,
                Fra = new Flyplass()
                {
                    ID   = "BOO",
                    By   = "Bodø",
                    Land = "Norge",
                    Navn = "Bodø Lufthavn"
                },
                Til = new Flyplass()
                {
                    ID   = "ARN",
                    By   = "Stockholm",
                    Land = "Sverige",
                    Navn = "Arlanda Lufthavn"
                },
                BasePris = 1499,
                Reisetid = new TimeSpan(1, 0, 0)
            };

            string faktisk   = controller.EndreRute(rute);
            string forventet = "Grunnet begrensninger fra oblig 1 må alle ruter gå innom Oslo (OSL).";

            Assert.AreEqual(forventet, faktisk);
        }
Пример #8
0
        public void Registrer_Post_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new RuteController(new RuteBLL(new RuteStub()));

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

            var innRute = new Rute()
            {
                RuteId    = "OSLKRS000",
                ReiseFra  = reiseFra,
                ReiseTil  = reiseTil,
                Dato      = "10.10.2017",
                Tid       = "10:00",
                ReiseTid  = "10min",
                Flymaskin = flymaskin,
                Pris      = 999
            };
            // Act
            var result = (RedirectToRouteResult)controller.RegistrerRute(innRute);

            // Assert
            Assert.AreEqual(result.RouteName, "");
            Assert.AreEqual(result.RouteValues.Values.First(), "ListRuter");
        }
        public void EndreRuterFeilIDatabase()
        {
            var controller = NyAdminControllerMedSession(true);
            var rute       = new Rute()
            {
                ID  = 1,
                Fra = new Flyplass()
                {
                    ID   = "OSL",
                    By   = "Oslo",
                    Land = "Norge",
                    Navn = "Gardermoen Lufthavn"
                },
                Til = new Flyplass()
                {
                    ID   = "ARN",
                    By   = "Stockholm",
                    Land = "Sverige",
                    Navn = "Arlanda Lufthavn"
                },
                BasePris = -5,
                Reisetid = new TimeSpan(1, 0, 0)
            };

            string faktisk   = controller.EndreRute(rute);
            string forventet = "En feil oppsto med lagring i database.";

            Assert.AreEqual(forventet, faktisk);
        }
        public Rute hentEnRute(string RuteId)
        {
            var db       = new RetroDb();
            var enDbRute = db.Ruter.Find(RuteId);

            if (enDbRute == null)
            {
                LogErrorString(enDbRute.ToString());
                return(null);
            }
            else
            {
                var utRute = new Rute()
                {
                    RuteId    = enDbRute.RuteId,
                    ReiseFra  = enDbRute.ReiseFra,
                    ReiseTil  = enDbRute.ReiseTil,
                    Tid       = enDbRute.Tid,
                    Dato      = enDbRute.Dato,
                    ReiseTid  = enDbRute.ReiseTid,
                    Flymaskin = enDbRute.Flymaskin,
                    Pris      = enDbRute.Pris
                };
                return(utRute);
            }
        }
        public void EndreRuterFeilModellOgSammeDestinasjon()
        {
            var controller = NyAdminControllerMedSession(true);
            var rute       = new Rute()
            {
                ID  = 1,
                Fra = new Flyplass()
                {
                    ID   = "OSL",
                    By   = "Oslo",
                    Land = "Norge",
                    Navn = "Gardermoen Lufthavn"
                },
                Til = new Flyplass()
                {
                    ID   = "OSL",
                    By   = "Bodø",
                    Land = "Norge",
                    Navn = "Bodø Lufthavn"
                },
                BasePris = 1499,
                Reisetid = new TimeSpan(1, 0, 0)
            };

            controller.ModelState.AddModelError("rute.ID", "feil");
            controller.ModelState.AddModelError("rute.BasePris", "feil");
            controller.ModelState.AddModelError("rute.Reisetid", "feil");
            controller.ModelState.AddModelError("rute.Fra.ID", "feil");
            controller.ModelState.AddModelError("rute.Til.ID", "feil");

            string faktisk   = controller.EndreRute(rute);
            string forventet = "Ugyldig id: feil.\nUgyldig pris: feil.\nUgyldig id: feil.\nUgyldig fra Flyplass: feil.\nUgyldig til flyplass: feil.\nRute kan ikke ha samme til og fra.";

            Assert.AreEqual(forventet, faktisk);
        }
        public bool settInnRute(Rute innRute)
        {
            var nyRute = new Rute()
            {
                RuteId    = innRute.RuteId,
                ReiseFra  = innRute.ReiseFra,
                ReiseTil  = innRute.ReiseTil,
                Tid       = innRute.Tid,
                Dato      = innRute.Dato,
                ReiseTid  = innRute.ReiseTid,
                Flymaskin = innRute.Flymaskin,
                Pris      = innRute.Pris
            };

            var db = new RetroDb();

            try
            {
                var eksistererRuteId = db.Ruter.Find(innRute.RuteId);
                if (eksistererRuteId == null)
                {
                    db.Ruter.Add(nyRute);
                }
                db.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                LogError(ex);
                return(false);
            }
        }
Пример #13
0
        public void Endre_funnet_session_ikke_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new RuteController(new RuteBLL(new RuteStub()));

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

            var innRute = new Rute()
            {
                RuteId    = "OSLKRS000",
                ReiseFra  = reiseFra,
                ReiseTil  = reiseTil,
                Dato      = "10.10.2017",
                Tid       = "10:00",
                ReiseTid  = "10min",
                Flymaskin = flymaskin,
                Pris      = 999
            };
            // Act
            var actionResultat = (RedirectToRouteResult)controller.EndreRute("OSLKRS000", innRute);

            // Assert
            Assert.AreEqual(actionResultat.RouteName, "");
            Assert.AreEqual(actionResultat.RouteValues.Values.First(), "IngenTilgang");
        }
        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);
        }
Пример #15
0
        public RuteStopp NyttRuteStopp(string[] argumenter)
        {
            Console.WriteLine(argumenter[0]);
            Console.WriteLine(argumenter[1]);
            Console.WriteLine(argumenter[2]);
            string   holdeplassNavn      = argumenter[0];
            string   ruteNavn            = argumenter[1];
            int      minutterEtterAvgang = int.Parse(argumenter[2]);
            TimeSpan stoppTid            = TimeSpan.FromMinutes(minutterEtterAvgang);


            Holdeplass holdeplass = _db.Holdeplasser.Where(h => h.Sted == holdeplassNavn).FirstOrDefault();
            Rute       rute       = _db.Ruter.Where(r => r.Navn == ruteNavn).FirstOrDefault();

            if (holdeplass != null && rute != null)
            {
                RuteStopp nyttRuteStopp = new RuteStopp();
                nyttRuteStopp.Rute       = rute;
                nyttRuteStopp.Holdeplass = holdeplass;
                nyttRuteStopp.StoppTid   = stoppTid;
                _db.Rutestopp.Add(nyttRuteStopp);
                _db.SaveChanges();
                return(nyttRuteStopp);
            }
            Log.Information("Nytt rutestopp lagt til.");
            return(null);
        }
Пример #16
0
        public bool Endre(Rute innrute)
        {
            using (var db = new DB())
            {
                var rute        = db.Ruter.FirstOrDefault(r => r.ID == innrute.ID);
                var fraFlyplass = db.Flyplasser.FirstOrDefault(flyplass => flyplass.ID == innrute.Fra.ID);
                var tilFlyplass = db.Flyplasser.FirstOrDefault(flyplass => flyplass.ID == innrute.Til.ID);
                if (rute != null && fraFlyplass != null && tilFlyplass != null)
                {
                    rute.Fra      = fraFlyplass;
                    rute.Til      = tilFlyplass;
                    rute.Reisetid = innrute.Reisetid;
                    rute.BasePris = innrute.BasePris;

                    db.Endringer.Add(new DBEndring()
                    {
                        Endring   = $"Endrer rute med nye verdier. Ny verdier: fra flyplass: {rute.Fra.ID}, til flyplass: {rute.Til.ID}, reisetid: {rute.Reisetid}, pris: {rute.BasePris} ",
                        Tidspunkt = DateTime.Now
                    });

                    try
                    {
                        db.SaveChanges();
                        return(true);
                    }
                    catch (Exception e)
                    {
                        DALsetup.LogFeilTilFil("DBRute:Endre", e, "En feil oppsto da metoden prøvde å endre rute.");
                    }
                }
                return(false);
            }
        }
 public bool settInnRute(Rute innRute)
 {
     if (innRute.RuteId == "")
     {
         return(false);
     }
     return(true);
 }
Пример #18
0
        public ActionResult Edit(int id)
        {
            Context.Rute dbitem    = RepoRute.FindByPK(id);
            Rute         Viewmodel = new Rute(dbitem);

            ViewBag.name = Viewmodel.Kode;
            return(View("Form", Viewmodel));
        }
Пример #19
0
 public void Update(Rute item)
 {
     using (IDbConnection connection = con)
     {
         connection.Open();
         connection.Update(item);
     }
 }
Пример #20
0
 public void Create(Rute item)
 {
     using (IDbConnection connection = con)
     {
         connection.Open();
         connection.Insert(item);
     }
 }
Пример #21
0
 public bool Endre(Rute innrute)
 {
     if (innrute != null && innrute.Reisetid != null && innrute.Til != null && innrute.Til.ID != "" && innrute.Fra != null && innrute.Fra.ID != "" && innrute.BasePris > 0)
     {
         return(ruter.FirstOrDefault(r => r.ID == innrute.ID) != null);
     }
     return(false);
 }
Пример #22
0
 public async Task <IActionResult> Create(Rute item)
 {
     if (ModelState.IsValid)
     {
         _ruteRepository.Create(item);
         return(Ok(item));
     }
     return(BadRequest("Unesite sva polja"));
 }
Пример #23
0
        public void delete(Rute dbitem)
        {
            context.Rute.Remove(dbitem);
            var auditrail = new Auditrail {
                Actionnya = "Delete", EventDate = DateTime.Now, Modulenya = "Rute", QueryDetail = "Delete " + dbitem.Nama, RemoteAddress = AppHelper.GetIPAddress(), IdUser = 1
            };

            context.Auditrail.Add(auditrail);
            context.SaveChanges();
        }
Пример #24
0
        public ActionResult EndreRute(string ruteId)
        {
            if (!CheckSession())
            {
                return(RedirectToAction("IngenTilgang", "Admin"));
            }
            Rute enRute = _ruteBLL.hentRute(ruteId);

            return(View(enRute));
        }
        public ActionResult Delete(RuteModel model)
        {
            Rute rute = context.Rutes.Where(e => e.Id == model.Id).
                        SingleOrDefault();

            context.Rutes.DeleteOnSubmit(rute);
            context.SubmitChanges();

            return(RedirectToAction("Index"));
        }
Пример #26
0
        public async Task HentRuteLoggetInnOK()
        {
            // Arrange
            var rute1 = new Rute
            {
                RId        = 1,
                BussNR     = "230",
                FraRute    = "Oslo",
                TilRute    = "Sandvika",
                Dato       = "2020-10-05",
                AvgangsTid = "12:00",
                AnkomstTid = "15:50"
            };
            var rute2 = new Rute
            {
                RId        = 2,
                BussNR     = "130",
                FraRute    = "Sandvika",
                TilRute    = "Oslo",
                Dato       = "2020-10-30",
                AvgangsTid = "14:00",
                AnkomstTid = "12:30"
            };
            var rute3 = new Rute
            {
                RId        = 3,
                BussNR     = "320",
                FraRute    = "Lysaker",
                TilRute    = "Storting",
                Dato       = "2020-11-05",
                AvgangsTid = "09:30",
                AnkomstTid = "12:00"
            };

            var ruteListe = new List <Rute>();

            ruteListe.Add(rute1);
            ruteListe.Add(rute2);
            ruteListe.Add(rute3);

            mockRep.Setup(k => k.HentRute()).ReturnsAsync(ruteListe);

            var norwayController = new NorWayController(mockRep.Object, mockLog.Object);

            mockSession[_loggetInn] = _loggetInn;
            mockHttpContext.Setup(s => s.Session).Returns(mockSession);
            norwayController.ControllerContext.HttpContext = mockHttpContext.Object;

            // Act
            var resultat = await norwayController.HentRute() as OkObjectResult;

            // Assert
            Assert.Equal((int)HttpStatusCode.OK, resultat.StatusCode);
            Assert.Equal <List <Rute> >((List <Rute>)resultat.Value, ruteListe);
        }
 public bool endreRute(string ruteId, Rute innRute)
 {
     if (ruteId == "")
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
Пример #28
0
        public ActionResult Edit(Rute model)
        {
            if (ModelState.IsValid)
            {
                Context.Rute dbitem = RepoRute.FindByPK(model.Id);
                model.setDb(dbitem);
                RepoRute.save(dbitem);

                return(RedirectToAction("Index"));
            }

            return(View("Form", model));
        }
Пример #29
0
        public ActionResult SlettRute(string ruteId, Rute innRute)
        {
            if (!CheckSession())
            {
                return(RedirectToAction("IngenTilgang", "Admin"));
            }
            bool OK = _ruteBLL.slettRute(ruteId);

            if (OK)
            {
                return(RedirectToAction("ListRuter"));
            }
            return(View("~/Views/Error/Error.cshtml"));
        }
Пример #30
0
        public void ListRuter_OK()
        {
            // Arrange
            var SessionMock = new TestControllerBuilder();
            var controller  = new RuteController(new RuteBLL(new RuteStub()));

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

            var forventetResultat = 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
            };


            forventetResultat.Add(rute);
            forventetResultat.Add(rute);
            forventetResultat.Add(rute);

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

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

            for (var i = 0; i < resultat.Count; i++)
            {
                Assert.AreEqual(forventetResultat[i].RuteId, resultat[i].RuteId);
                Assert.AreEqual(forventetResultat[i].ReiseFra.FlyplassKode, resultat[i].ReiseFra.FlyplassKode);
                Assert.AreEqual(forventetResultat[i].ReiseFra.By, resultat[i].ReiseFra.By);
                Assert.AreEqual(forventetResultat[i].ReiseTil.FlyplassKode, resultat[i].ReiseTil.FlyplassKode);
                Assert.AreEqual(forventetResultat[i].ReiseTil.By, resultat[i].ReiseTil.By);
                Assert.AreEqual(forventetResultat[i].Dato, resultat[i].Dato);
                Assert.AreEqual(forventetResultat[i].Tid, resultat[i].Tid);
                Assert.AreEqual(forventetResultat[i].ReiseTid, resultat[i].ReiseTid);
                Assert.AreEqual(forventetResultat[i].Flymaskin.FlyId, resultat[i].Flymaskin.FlyId);
                Assert.AreEqual(forventetResultat[i].Flymaskin.Type, resultat[i].Flymaskin.Type);
                Assert.AreEqual(forventetResultat[i].Flymaskin.Kapasitet, resultat[i].Flymaskin.Kapasitet);
                Assert.AreEqual(forventetResultat[i].Pris, resultat[i].Pris);
            }
        }