public void DezelfdeUserAanmelden_ThrowtError() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieEnAanmeldenOpenState(_session)); piet.SchrijfGebruikerInSessie(_session); piet.ZetAanwezigVoorSessie(_session); Assert.Throws <InvalidOperationException>(() => piet.ZetAanwezigVoorSessie(_session)); }
public void RegistreerAanwezigheid_zetAanwezigTrue() { Gebruiker gebruiker = new Gebruiker("Sukie Dageraad", "201734sd", 9876543219876); gebruiker.SchrijfGebruikerInSessie(sRgeopendAgeopend); gebruiker.ZetAanwezigVoorSessie(sRgeopendAgeopend); Assert.Single(sRgeopendAgeopend.AanwezigeGebruikers); }
public IActionResult MeldAanVoorSessie(Gebruiker gebruiker, int sessieId, string barcode) { // de entities moeten getracked worden voor het updaten van de db Sessie trackedSessie = _sessieRepository.GetById(sessieId); Gebruiker trackedGebruiker = _gebruikerRepository.GetByGebruikersnaam(gebruiker.Gebruikersnaam); if (barcode == null) { TempData["error"] = "De gebruiker bestaat niet"; return(RedirectToAction(nameof(geOpendeSessie))); } if (trackedSessie == null) // De sessie bestaat niet { TempData["error"] = "De sessie bestaat niet"; return(RedirectToAction(nameof(Index))); } Gebruiker aanTeMeldenGebruiker = null; Regex gebregex = new Regex("[0-9]{6}[a-zA-Z]{2}"); // regex voor een gebruikersnaam Regex barregex = new Regex("[0-9]{13}"); // regex voor een barcode if (gebregex.IsMatch(barcode)) // het is een gebruikersnaam { aanTeMeldenGebruiker = _gebruikerRepository.GetByGebruikersnaam(barcode); } else if (barregex.IsMatch(barcode)) // het is een barcode { aanTeMeldenGebruiker = _gebruikerRepository.GetByBarcode(long.Parse(barcode)); } if (aanTeMeldenGebruiker == null) { TempData["error"] = "De gebruiker bestaat niet"; return(RedirectToAction(nameof(geOpendeSessie))); } try { aanTeMeldenGebruiker.ZetAanwezigVoorSessie(trackedSessie); // dit is om op te slaan in de db _sessieRepository.SaveChanges(); TempData["message"] = $"Aanmelden voor sessie '{trackedSessie.Titel}' succesvol!"; return(RedirectToAction(nameof(geOpendeSessie))); } catch (Exception e) { TempData["error"] = e.Message; return(RedirectToAction(nameof(geOpendeSessie))); } }
public FeedbackControllerTest() { _gebruikerRepository = new Mock <IGebruikerRepository>(); _sessieRepository = new Mock <ISessieRepository>(); _controller = new FeedBackController(_sessieRepository.Object, _gebruikerRepository.Object) { TempData = new Mock <ITempDataDictionary>().Object }; _dummyData = new DummyData(); // testdata ophalen testSessie = _dummyData.s1; testGebruiker = _dummyData.piet; // testGebruiker inschrijven en aanwezig stellen testSessie.ToState(new RegistratieEnAanmeldenOpenState(testSessie)); // zorgen dat gebruiker kan inschrijven en aanmelden testGebruiker.SchrijfGebruikerInSessie(testSessie); testGebruiker.ZetAanwezigVoorSessie(testSessie); // schrijf een feedback testGebruiker.geefFeedbackOpSessie(testSessie, "een feedbackinhoud", 5); }