public void DeGebruikerIsIngeschrevenInSessie() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieEnAanmeldenOpenState(_session)); SessieGebruikerIngeschreven pietSG = MaakDefaultSGI(piet); _session.SchrijfGebruikerIn(pietSG); Assert.True(_session.IngeschrevenGebruikers.Contains(pietSG)); }
public void DezelfdeUserInschrijven_ThrowtError() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieEnAanmeldenOpenState(_session)); SessieGebruikerIngeschreven pietSG = MaakDefaultSGI(piet); _session.SchrijfGebruikerIn(pietSG); Assert.Throws <InvalidOperationException>(() => _session.SchrijfGebruikerIn(pietSG)); }
public void AlsSessieGeslotenIsKan_JeNietUitschrijven() { _session = MaakDefaultSessie(); _session.ToState(new AanmeldenEnRegistratieGeslotenState(_session)); SessieGebruikerIngeschreven sg = MaakDefaultSGI(piet); _session.IngeschrevenGebruikers.Contains(sg); Assert.Throws <InvalidOperationException>(() => _session.SchrijfGebruikerUit(sg)); }
public void AlsSessieOpenAanmeldenGesloten_GebruikerAanmelden_ThrowtError() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieOpenAanmeldenGeslotenState(_session)); SessieGebruikerIngeschreven sg = MaakDefaultSGI(piet); _session.SchrijfGebruikerIn(sg); Assert.Throws <InvalidOperationException>(() => _session.GebruikerAanwezigMelden(sg)); }
public void AlsSessieOpenAanmeldenGesloten_GebruikerKanUitschrijven() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieOpenAanmeldenGeslotenState(_session)); SessieGebruikerIngeschreven sg = MaakDefaultSGI(piet); _session.SchrijfGebruikerIn(sg); _session.SchrijfGebruikerUit(sg); Assert.Empty(_session.IngeschrevenGebruikers); }
public void AlsSessieOpenRegistratieEnOpenAanmeldenKanJeAanmelden() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieEnAanmeldenOpenState(_session)); SessieGebruikerIngeschreven sg = MaakDefaultSGI(piet); _session.SchrijfGebruikerIn(sg); _session.GebruikerAanwezigMelden(sg); Assert.Equal(1, _session.GeefAantalAanwezigeGebruikers()); }
public void DeGebruikerIsUitgeschrevenUitSessie() { _session = MaakDefaultSessie(); _session.ToState(new RegistratieEnAanmeldenOpenState(_session)); SessieGebruikerIngeschreven pietSG = new SessieGebruikerIngeschreven(_session, piet); _session.SchrijfGebruikerIn(pietSG); _session.SchrijfGebruikerUit(pietSG); Assert.False(_session.IngeschrevenGebruikers.Contains(pietSG)); }
public void SchrijfUitVoorSessie(Sessie sessie) { SessieGebruikerIngeschreven sgi = Context.IngeschrevenSessies.FirstOrDefault(sgi => sgi.SessieId == sessie.Id); if (sgi == null) // De gebruiker is nietgeschreven { throw new InvalidOperationException("gebruiker is niet ingeschreven"); } try { sessie.SchrijfGebruikerUit(sgi); Context.IngeschrevenSessies.Remove(sgi); } catch (InvalidOperationException e) { throw new InvalidOperationException(e.Message); } }
public SessieGebruikerAanwezig GebruikerAanwezigMelden(SessieGebruikerIngeschreven sgi) { SessieGebruikerAanwezig sga = null; SessieGebruikerIngeschreven sessieGebruikerIngeschreven = Context.IngeschrevenGebruikers.FirstOrDefault(s => s.SessieId == sgi.SessieId && s.GebruikerId.Equals(sgi.GebruikerId)); if (sessieGebruikerIngeschreven != null) { sga = new SessieGebruikerAanwezig(sgi.Sessie, sgi.Gebruiker); Context.AanwezigeGebruikers.Add(sga); } else { throw new InvalidOperationException("Gebruiker moet ingeschreven zijn om aan te melden"); } return(sga); }
public void SchrijfInVoorSessie(Sessie sessie) { SessieGebruikerIngeschreven sgi = Context.IngeschrevenSessies.FirstOrDefault(s => s.SessieId == sessie.Id && s.GebruikerId.Equals(Context.Gebruikersnaam)); if (sgi != null) // De gebruiker is al ingeschreven { throw new InvalidOperationException("Gebruiker is al ingeschreven"); } try { sgi = new SessieGebruikerIngeschreven(sessie, Context); sessie.SchrijfGebruikerIn(sgi); Context.IngeschrevenSessies.Add(sgi); } catch (InvalidOperationException e) { throw new InvalidOperationException(e.Message); } }
public void RegistreerAanwezigheidVoorSessie(Sessie sessie) { SessieGebruikerIngeschreven sgi = Context.IngeschrevenSessies.FirstOrDefault(sgi => sgi.SessieId == sessie.Id); SessieGebruikerAanwezig sga = Context.AanwezigeSessies.FirstOrDefault(sga => sga.SessieId == sessie.Id); if (sgi != null && sga == null) // gebruiker is wel degelijk ingeschreven en nog niet aanwezig { try { sga = sessie.GebruikerAanwezigMelden(sgi); Context.AanwezigeSessies.Add(sga); } catch (InvalidOperationException e) { throw new InvalidOperationException(e.Message); } } else { throw new InvalidOperationException("Gebruiker is niet ingeschreven voor deze sessie of is al aanwezig"); } }