public void Edit_Integrates() { // Build the container. var container = Setup(); var session = NewReviewSession(); using (var lifetime = container.BeginLifetimeScope()) { var sessionRepo = lifetime.Resolve <AbstractRepository <ReviewSession> >(); // Create a new session to work with sessionRepo.Save(session); } using (var lifetime = container.BeginLifetimeScope()) { var sessionRepo = lifetime.Resolve <AbstractRepository <ReviewSession> >(); var eventRepo = lifetime.Resolve <AbstractRepository <Event> >(); var manager = new ReviewSessionManager(sessionRepo, eventRepo); AutoMapper.Mapper.CreateMap <ReviewSession, ReviewSession>(); var editSession = AutoMapper.Mapper.Map <ReviewSession>(session); editSession.Requirements.Add(new Requirement { Comment = "test", Content = "test" }); Assert.DoesNotThrow(() => manager.Edit(editSession, session.Creator)); } }
public void Edit_Fails_UnAuthorized() { var mockSession = new Mock <IDocumentSession>(); var sessionRepo = new Mock <AbstractRepository <ReviewSession> >(mockSession.Object); var eventRepo = new Mock <AbstractRepository <Event> >(mockSession.Object); // Create a new session to work with var session = NewReviewSession(); sessionRepo.Setup(r => r.Get(It.IsAny <int>())).Returns(session); var manager = new ReviewSessionManager(sessionRepo.Object, eventRepo.Object); Assert.Throws <AuthorizationException>(() => manager.Edit(session, "FAIL")); }
public void Edit_Fails_Invalid_Status() { var mockSession = new Mock <IDocumentSession>(); var sessionRepo = new Mock <AbstractRepository <ReviewSession> >(mockSession.Object); var eventRepo = new Mock <AbstractRepository <Event> >(mockSession.Object); // Create a new session to work with var session = NewReviewSession(); session.SessionStatus = SessionStatusType.Released; sessionRepo.Setup(r => r.Get(It.IsAny <int>())).Returns(session); var manager = new ReviewSessionManager(sessionRepo.Object, eventRepo.Object); Assert.Throws <InvalidOperationException>(() => manager.Edit(session, session.Creator)); }