public void HentAlleStasjoner() { // Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjonListe = new List <stasjon>(); var stasjon = new stasjon() { StasjonID = 1, Stasjonsnavn = "Oslo S" }; stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); var jsonSerializer = new JavaScriptSerializer(); var forventetResultat = jsonSerializer.Serialize(stasjonListe); // Act var resultat = controller.hentAlleStasjoner(); // Assert for (var i = 0; i < resultat.Length; i++) { Assert.AreEqual(forventetResultat[i], resultat[i]); } }
public void OversiktStasjoner() { //Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var forventetResultat = new List <stasjon>(); var stasjon = new stasjon() { StasjonID = 1, Stasjonsnavn = "Oslo S" }; forventetResultat.Add(stasjon); forventetResultat.Add(stasjon); forventetResultat.Add(stasjon); forventetResultat.Add(stasjon); //Act var actionResult = (ViewResult)controller.OversiktStasjoner(); var resultat = (List <stasjon>)actionResult.Model; //Assert Assert.AreEqual(actionResult.ViewName, ""); for (var i = 0; i < resultat.Count; i++) { Assert.AreEqual(forventetResultat[i].StasjonID, resultat[i].StasjonID); Assert.AreEqual(forventetResultat[i].Stasjonsnavn, resultat[i].Stasjonsnavn); } }
public ActionResult LeggTilAvgang(stasjonPaaBane stasjonPaaBane) { //Sørger for at man blir stående i samme view om man legger inn en avgang som finnes fra før var stasjon = _vyBLL.hentEnStasjon(stasjonPaaBane.StasjonsID); stasjonPaaBane.Stasjon = stasjon.Stasjonsnavn; //sjekker om tidspunkt er valgt og på riktig format var metodeSjekk = new ValideringsMetoder(); bool tidspunktOk = metodeSjekk.sjekkTidspunkt(stasjonPaaBane.Avgang); if (stasjonPaaBane.BaneID == 0) { ModelState.AddModelError("BaneID", "Velg bane"); } else if (string.IsNullOrEmpty(stasjonPaaBane.Avgang)) { ModelState.AddModelError("Avgang", "Tidspunkt må oppgis"); } else if (!tidspunktOk) { ModelState.AddModelError("Avgang", "Tidspunkt må være på korrekt format"); } else if (ModelState.IsValid) { //sjekker om avgangen finnes fra før bool avgangOK = _vyBLL.sjekkAvgangOK(stasjonPaaBane); if (avgangOK) { stasjon s = _vyBLL.hentEnStasjon(stasjonPaaBane.StasjonsID); String Stasjonsnavn = s.Stasjonsnavn; bool leggtilOK = _vyBLL.leggTilStasjonPaaBane(stasjonPaaBane.Avgang, stasjonPaaBane.StasjonsID, stasjonPaaBane.BaneID); if (leggtilOK) { log.Info("Avgang " + stasjonPaaBane.Avgang + " er lagt til stasjon " + Stasjonsnavn + "!"); return(RedirectToAction("AvgangerPaStasjon", "Admin", new { id = stasjonPaaBane.StasjonsID })); } else { log.Error("Avgang " + stasjonPaaBane.Avgang + " på stasjon " + Stasjonsnavn + " ble forsøkt lagret, feil oppsto. Transaksjon avbrutt!"); ViewBag.save = "Kunne ikke legge til avgang"; } } else { log.Debug("Kommer inn i ModelstateValid 'Legg til Avgang', men ikke videre!"); ModelState.AddModelError("Avgang", "Avgangen finnes fra før"); } } log.Debug("Kommer ikke inn i ModelstateValid 'Legg til Avgang'"); return(View(stasjonPaaBane)); }
public bool leggTilStasjon(stasjon stasjon) { if (stasjon.Stasjonsnavn == "DetteErFeil") { return(false); } else { return(true); } }
public bool sjekkStasjonOK(stasjon stasjon) { if (stasjon.Stasjonsnavn == "Feil") { return(false); } else { return(true); } }
public bool endreStasjon(int id, stasjon stasjon) { if (id == 10) { return(false); } else { return(true); } }
//------------------------------------------------------------------------------ //Valideringsmetoder //returnerer false om stasjonen finnes fra før av public bool sjekkStasjonOK(stasjon innStasjon) { using (var db = new DB()) { foreach (Stasjon s in db.Stasjon) { if (s.Stasjonsnavn == innStasjon.Stasjonsnavn) { return(false); } } return(true); } }
public List <stasjon> hentAlleStasjoner() { var stasjonListe = new List <stasjon>(); var stasjon = new stasjon() { StasjonID = 1, Stasjonsnavn = "Oslo S" }; stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); stasjonListe.Add(stasjon); return(stasjonListe); }
public bool endreStasjon(int stasjonID, stasjon innStasjon) { using (var db = new DB()) { try { Stasjon endreStasjon = db.Stasjon.Find(stasjonID); endreStasjon.Stasjonsnavn = innStasjon.Stasjonsnavn; db.SaveChanges(); return(true); } catch (Exception) { return(false); } } }
public ActionResult SlettStasjon(int id, stasjon slettstasjon) { stasjon s = _vyBLL.hentEnStasjon(id); String Stasjonsnavn = s.Stasjonsnavn; bool slettOK = _vyBLL.slettStasjon(id); if (slettOK) { log.Info("Sletting av stasjon " + Stasjonsnavn + " var vellykket!"); return(RedirectToAction("OversiktStasjoner")); } else { log.Error("Sletting av stasjon " + Stasjonsnavn + " feilet. Transakjson avbrutt!"); ViewBag.save = "Kunne ikke slette stasjon"; } return(View()); }
public void LeggTilStasjon_LeggTilOK_Feil() { // Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjon = new stasjon() { Stasjonsnavn = "DetteErFeil" }; // Act var actionResult = (ViewResult)controller.LeggTilStasjon(stasjon); // Assert Assert.AreEqual(actionResult.ViewName, ""); }
public stasjon hentEnStasjon(int id) { if (id == 0) { var stasjon = new stasjon(); stasjon.StasjonID = id; return(stasjon); } else { var stasjon = new stasjon() { StasjonID = 1, Stasjonsnavn = "Oslo S" }; return(stasjon); } }
public void LeggTilStasjon_Model_Feil() { // Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjon = new stasjon(); controller.ViewData.ModelState.AddModelError("Stasjonsnavn", "Stasjonsnavn må oppgis"); // Act var actionResult = (ViewResult)controller.LeggTilStasjon(stasjon); // Assert Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1); Assert.AreEqual(actionResult.ViewName, ""); }
public ActionResult EndreStasjon(int id, stasjon endreStasjon) { Regex regex = new Regex("[^ÆØÅæøåa-zA-Z0-9 ]+"); if (string.IsNullOrEmpty(endreStasjon.Stasjonsnavn)) { ModelState.AddModelError("Stasjonsnavn", "Stasjonnavn må oppgis"); } else if (regex.IsMatch(endreStasjon.Stasjonsnavn)) { ModelState.AddModelError("Stasjonsnavn", "Stasjonnavn kan ikke inneholde spesialtegn"); } if (ModelState.IsValid) { stasjon s = _vyBLL.hentEnStasjon(id); String Stasjonsnavn = s.Stasjonsnavn; //sjekker at stasjonen ikke finnes fra før bool nyStasjonOK = _vyBLL.sjekkStasjonOK(endreStasjon); if (nyStasjonOK) { bool endringOK = _vyBLL.endreStasjon(id, endreStasjon); if (endringOK) { log.Info("Stasjon " + Stasjonsnavn + " endret navn til " + endreStasjon.Stasjonsnavn + "!"); return(RedirectToAction("OversiktStasjoner")); } else { log.Error("Stasjon " + Stasjonsnavn + " ble forsøkt endret til " + endreStasjon.Stasjonsnavn + ". Endring feilet, transaksjon ble avbrutt!"); ViewBag.save = "Kunne ikke oppdatere stasjon"; } } else { ModelState.AddModelError("Stasjonsnavn", "Stasjonen finnes fra før"); } } return(View()); }
public void EndreStasjon_EndreStasjon_Feil() { //Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjon = new stasjon() { StasjonID = 10, Stasjonsnavn = "Oslo S" }; // Act var actionResult = (ViewResult)controller.EndreStasjon(10, stasjon); // Assert Assert.AreEqual(actionResult.ViewName, ""); }
// Metode for å hente EN stasjon, EN bane public stasjon hentEnStasjon(int id) { using (var db = new DB()) { var enDbStasjon = db.Stasjon.Find(id); if (enDbStasjon == null) { return(null); } else { var utStasjon = new stasjon() { StasjonID = enDbStasjon.StasjonsID, Stasjonsnavn = enDbStasjon.Stasjonsnavn }; return(utStasjon); } } }
public void EndreStasjon_Regex_Feil() { //Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjon = new stasjon() { Stasjonsnavn = "#¤%&/" }; // Act var actionResult = (ViewResult)controller.EndreStasjon(0, stasjon); // Assert Assert.AreEqual(actionResult.ViewName, ""); Assert.IsTrue(actionResult.ViewData.ModelState.Count == 1); }
public void AvgangerPaStasjonTom_ID_0() { var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var forventetResultat = new stasjon() { StasjonID = 0 }; //Act var actionResult = (ViewResult)controller.AvgangerPaStasjonTom(forventetResultat.StasjonID); var resultat = (stasjon)actionResult.Model; //Assert Assert.AreEqual(actionResult.ViewName, ""); Assert.AreEqual(forventetResultat.StasjonID, resultat.StasjonID); Assert.AreEqual(forventetResultat.Stasjonsnavn, resultat.Stasjonsnavn); }
public void LeggTilStasjon_LeggTil_OK() { // Arrange var controller = new AdminController(new VyBLL(new AdminDBMetoderStubs())); var SessionMock = new TestControllerBuilder(); SessionMock.InitializeController(controller); controller.Session["Innlogget"] = true; var stasjon = new stasjon() { StasjonID = 1, Stasjonsnavn = "Oslo S" }; // Act var result = (RedirectToRouteResult)controller.LeggTilStasjon(stasjon); // Assert Assert.AreEqual(result.RouteName, ""); Assert.AreEqual(result.RouteValues.Values.First(), "OversiktStasjoner"); }
// ------------------------------------------------------------------------------------ // Metoder for å endre, slette og legge til stasjoner i DB public bool leggTilStasjon(stasjon innStasjon) { var nyStasjon = new Stasjon() { Stasjonsnavn = innStasjon.Stasjonsnavn }; using (var db = new DB()) { try { db.Stasjon.Add(nyStasjon); db.SaveChanges(); return(true); } catch (Exception) { return(false); } } }
public ActionResult LeggTilStasjon(stasjon stasjon) { Regex regex = new Regex("[^ÆØÅæøåa-zA-Z0-9 ]+"); if (string.IsNullOrEmpty(stasjon.Stasjonsnavn)) { ModelState.AddModelError("Stasjonsnavn", "Stasjonnavn må oppgis"); } else if (regex.IsMatch(stasjon.Stasjonsnavn)) { ModelState.AddModelError("Stasjonsnavn", "Stasjonnavn kan ikke inneholde spesialtegn"); } if (ModelState.IsValid) { //sjekker at stasjon ikke finnes fra før bool nyStasjonOK = _vyBLL.sjekkStasjonOK(stasjon); if (nyStasjonOK) { bool leggTilOK = _vyBLL.leggTilStasjon(stasjon); if (leggTilOK) { log.Info("Ny stasjon med navn " + stasjon.Stasjonsnavn + " lagt til i databasen"); return(RedirectToAction("OversiktStasjoner")); } else { log.Error("Ny stasjon med navn " + stasjon.Stasjonsnavn + " kunne ikke lagres. Transaksjon avbrutt!"); ViewBag.save = "Kunne ikke legge til stasjon"; } } else { ModelState.AddModelError("Stasjonsnavn", "Stasjonen finnes fra før"); } } return(View()); }
//---------------------------------------------------------------- //Valideringsmetoder public bool sjekkStasjonOK(stasjon innStasjon) { return(_AdminDAL.sjekkStasjonOK(innStasjon)); }
//---------------------------------------------------------------- //Metoder for å lagre, endre, slette i database public bool leggTilStasjon(stasjon innStasjon) { return(_AdminDAL.leggTilStasjon(innStasjon)); }
public bool endreStasjon(int stasjonID, stasjon innStasjon) { return(_AdminDAL.endreStasjon(stasjonID, innStasjon)); }
public ActionResult EndreStasjon(int id) { stasjon enstasjon = _vyBLL.hentEnStasjon(id); return(View(enstasjon)); }
public ActionResult AvgangerPaStasjonTom(int id) { stasjon stasjon = _vyBLL.hentEnStasjon(id); return(View(stasjon)); }