public IEnumerable <ScheduledSession> GetScheduledSessions(MongoProposal proposal) { var filteredSessions = sessionsCollection.GetSessions().Where(s => s.ProposalId == proposal.id); return(filteredSessions.Select(s => new ScheduledSession { SessionId = s.id, StandardTime = s.StandardTime, Room = s.Room })); }
public void PostProposal(Proposal proposal) { var mongoProposal = new MongoProposal { SpeakerName = proposal.SpeakerName, Bio = proposal.Bio, Title = proposal.Title, Description = proposal.Description, Email = proposal.Email }; proposalsCollection.PostProposal(mongoProposal); }
public void DeleteSessionsForDeletedTimeSlot() { var schedule = new Schedule { Rooms = new List <string> { "Room A" }, TimeSlots = new List <TimeSlot> { new TimeSlot { StandardTime = "9:00-10:00 A.M" } } }; var sessions = new List <MongoSession> { new MongoSession { id = "1", ProposalId = "3", Room = "Room A", StandardTime = "8:00-9:00 A.M", Break = false }, new MongoSession { id = "2", Room = "Room A", StandardTime = "9:00-10:00 A.M", Break = false } }; mockSessionsCollection.Setup(x => x.GetSessions()).Returns(() => sessions); var updatedProposal = new MongoProposal { id = "3" }; scheduleDomain.UpdateSessions(schedule); mockSessionsCollection.Verify(x => x.DeleteSession("1")); }
public void GetProposalsWithScheduledSessions() { var proposalOne = new MongoProposal { id = "proposal-1", SpeakerName = "speaker-1", Bio = "bio-1", Title = "title-1", Description = "description-1", Email = "email-1" }; var sessionOne = new MongoSession { id = "session-1", ProposalId = "proposal-1", StandardTime = "10:00-11:00 A.M", Room = "Room A" }; var sessionTwo = new MongoSession { id = "session-2", ProposalId = "proposal-1", StandardTime = "9:00-10:00 A.M", Room = "Room B" }; var proposalTwo = new MongoProposal { id = "proposal-2", SpeakerName = "speaker-2", Bio = "bio-2", Title = "title-2", Description = "description-2", Email = "email-2" }; var sessionThree = new MongoSession { id = "session-3", ProposalId = "proposal-2", StandardTime = "9:00-10:00 A.M", Room = "Room B" }; var expectedSessionsOne = new List <ScheduledSession> { new ScheduledSession { SessionId = sessionOne.id, StandardTime = sessionOne.StandardTime, Room = sessionOne.Room }, new ScheduledSession { SessionId = sessionTwo.id, StandardTime = sessionTwo.StandardTime, Room = sessionTwo.Room } }; var expectedSessionsTwo = new List <ScheduledSession> { new ScheduledSession { SessionId = sessionThree.id, StandardTime = sessionThree.StandardTime, Room = sessionThree.Room } }; var proposals = new List <MongoProposal> { proposalOne, proposalTwo }; var sessions = new List <MongoSession> { sessionThree, sessionOne, sessionTwo }; mockProposalsCollection.Setup(x => x.GetProposals()).Returns(() => proposals); mockSessionsCollection.Setup(x => x.GetSessions()).Returns(() => sessions); var result = proposalDomain.GetProposals(); Assert.AreEqual(expectedSessionsOne, result.First().ScheduledSessions); Assert.AreEqual(expectedSessionsTwo, result.Last().ScheduledSessions); }