예제 #1
0
        public async Task <TripDTO> AddTrip(CreatingTripDTO creatingTripDTO, List <CreatingNodePassageDTO> creatingNodePassageListDTO)
        {
            List <NodePassage> nodePassagesList = new List <NodePassage> ();

            foreach (var item in creatingNodePassageListDTO)
            {
                NodePassage nodePassage = new NodePassage(
                    item.nodeId,
                    item.passageTime
                    );

                nodePassagesList.Add(nodePassage);
            }

            var trip = new Trip(
                creatingTripDTO.lineID,
                creatingTripDTO.pathID,
                creatingTripDTO.tripDepartureTime,
                nodePassagesList
                );

            var savedTrip = await this._repo.AddAsync(trip);

            await this._unitOfWork.CommitAsync();

            return(_mapper.DomainToDTO(savedTrip));
        }
예제 #2
0
        public void CreateValidTripWithValidNodePassages()
        {
            string lineID            = "Line:1";
            string pathID            = "Path:1";
            string tripDepartureTime = "20:12:10";

            string nodeID          = "Node:1";
            string passageTime     = "20:20:10";
            var    nodePassage     = new NodePassage(nodeID, passageTime);
            var    nodePassageList = new List <NodePassage> ()
            {
                nodePassage
            };

            var trip = new Trip(lineID, pathID, tripDepartureTime, nodePassageList);

            Assert.NotNull(trip);
        }