コード例 #1
0
        void _journeyRepository_JourneyCreated(JourneyCreatedEventArgs e)
        {
            PublishEvent(e);
            Journey j = e.Journey;

            IEnumerable<Request> requests = RequestRepository.Instance.Find(j).AsEnumerable();
            foreach (Request request in requests)
            {
                Match match = new Match(j, request);
                MatchRepository.Instance.Save(match);
            }
        }
コード例 #2
0
        public void ShouldReturnListOfMatchedRequestsForUserJourney()
        {
            var matchRepositoryMock = new Mock<IMatchRepository> {};
            var userRepositoryMock = new Mock<IUserRepository> { };
            List<Match> matchedRequests = new List<Match>();
            Match match = new Match(new Journey(),new Request());
            match.Status = MatchStatus.Potential;
            matchedRequests.Add(match);
            matchRepositoryMock.Setup(ps => ps.LoadPotentialMatchesByUserJourney("*****@*****.**")).Returns(matchedRequests);

            Website.Controllers.RequestMatchController requestMatchController =
                            new Website.Controllers.RequestMatchController(matchRepositoryMock.Object, userRepositoryMock.Object, "*****@*****.**");
            ActionResult result = requestMatchController.MatchRequest();
            Assert.AreEqual(((IList<Match>) requestMatchController.ViewData["MatchList"]).Count, 1);
            matchRepositoryMock.Verify(ps => ps.LoadPotentialMatchesByUserJourney("*****@*****.**"));
        }
コード例 #3
0
        public void ShouldAcceptSelectedMatchedRequestsAndChangeStatusOfTheRequests()
        {
            var matchRepositoryMock = new Mock<IMatchRepository> { };
            var userRepositoryMock = new Mock<IUserRepository> {};

            List<Match> matchedRequests = new List<Match>();
            Request request = new Request();
            User user = new User();
            user.Email = new Email("*****@*****.**");

            Match match = new Match(new Journey(), request);
            match.Status = MatchStatus.Potential;
            match.Id = 1;
            matchedRequests.Add(match);
            matchRepositoryMock.Setup(ps => ps.LoadPotentialMatchesByUserJourney("*****@*****.**")).Returns(matchedRequests);
            userRepositoryMock.Setup(ps => ps.LoadUser("*****@*****.**")).Returns(user);

            Website.Controllers.RequestMatchController requestMatchController =
                            new Website.Controllers.RequestMatchController(matchRepositoryMock.Object,userRepositoryMock.Object ,"*****@*****.**");
            requestMatchController.AcceptRequest(new string[]{"1"});
            Assert.AreEqual(match.Status,MatchStatus.Accepted);
            Assert.AreEqual(match.Request.AcceptingUser,user);
            matchRepositoryMock.Verify(ps => ps.UpdateMatches(matchedRequests));
        }
コード例 #4
0
 void _requestRepository_RequestCreated(RequestCreatedEventArgs e)
 {
     Request r = e.Request;
     IEnumerable<Journey> journeys = JourneyRepository.Instance.Find(r).AsEnumerable();
     foreach (Journey journey in journeys)
     {
         Match match = new Match(journey, r);
         MatchRepository.Instance.Save(match);
     }
 }
コード例 #5
0
 public void Save(Match match)
 {
     Session.Save(match);
 }
コード例 #6
0
 public Match Load(int matchId)
 {
     Match match = new Match();
     Session.Load(match, matchId);
     return match;
 }
コード例 #7
0
 public void Delete(Match match)
 {
     Session.Delete(match);
 }