Exemple #1
0
        public void UitschrijvenSessie_verwijderdSessieUitlijst()
        {
            Gebruiker gebruiker = new Gebruiker("Samantha Dompel", "201734sd", 9876543219876);

            Assert.Empty(gebruiker.IngeschrevenSessies);


            gebruiker.SchrijfGebruikerInSessie(sRgeopendAgesloten);
            gebruiker.SchrijfGebruikerUitSessie(sRgeopendAgesloten);
            Assert.Empty(gebruiker.IngeschrevenSessies);

            gebruiker.SchrijfGebruikerInSessie(sRgeopendAgeopend);
            gebruiker.SchrijfGebruikerUitSessie(sRgeopendAgeopend);
            Assert.Empty(gebruiker.IngeschrevenSessies);
        }
        public IActionResult SchrijfUitVoorSessie(Gebruiker gebruiker, int sessieId)
        {
            // de entities moeten getracked worden voor het updaten van de db
            Sessie    trackedSessie    = _sessieRepository.GetById(sessieId);
            Gebruiker trackedGebruiker = _gebruikerRepository.GetByGebruikersnaam(gebruiker.Gebruikersnaam);

            if (trackedSessie == null)                        // De sessie bestaat niet
            {
                TempData["error"] = "De sessie bestaat niet"; //TODO een tempdata vakje maken in de view voor de errors en de messages te tonen
                return(RedirectToAction(nameof(Index)));
            }

            try {
                trackedGebruiker.SchrijfGebruikerUitSessie(trackedSessie);
                // dit is om op te slaan in de db
                _sessieRepository.SaveChanges();
                TempData["message"] = $"Uitschrijven voor sessie '{trackedSessie.Titel}' succesvol!";
                return(RedirectToAction(nameof(Index)));
            }
            catch (Exception e) {
                TempData["error"] = e.Message;
                return(RedirectToAction(nameof(Index)));
            }
        }
Exemple #3
0
        public void Uitschrijven_sessieNietIngeschreven_throwsException()
        {
            Gebruiker gebruiker = new Gebruiker("Sien D'hore", "201734sd", 9876543219876);

            Assert.Throws <InvalidOperationException>(() => gebruiker.SchrijfGebruikerUitSessie(sRgeopendAgeopend));
        }