コード例 #1
0
 public BookingLine(LocalDate bookingStart, StationId stationId)
     : this()
 {
     _bookingStart = bookingStart;
     Station       = stationId;
     RaiseEvent(new BookingLineCreatedEvent(stationId));
 }
コード例 #2
0
        public void change_station_for_line_creates_station_changed_event()
        {
            //
            StationId initialStation = Builder.Station.Build(), newStation = Builder.Station.Build();
            var       line = Builder.BookingLine.ForStation(initialStation).Build();

            //
            line.ChangeStation(newStation);

            //
            line.Station.Should().Be(newStation, "the station was changed to {0}".Format(newStation));
            line.GetUncommittedEvents().Should()
            .ContainSingle(e => e.GetType() == typeof(BookingLineStationChangedEvent) &&
                           ((BookingLineStationChangedEvent)e).AggregateId == line.Id &&
                           ((BookingLineStationChangedEvent)e).Station == newStation, "the station was changed to {0}".Format(newStation));
        }
コード例 #3
0
 public BookingLineStationChangedEvent(StationId station)
 {
     Station = station;
 }
コード例 #4
0
 public BookingLineCreatedEvent(StationId station)
 {
     Station = station;
 }
コード例 #5
0
 public void ChangeStation(StationId newStation)
 {
     Station = newStation;
     RaiseEvent(new BookingLineStationChangedEvent(Station));
 }
コード例 #6
0
 public StationRemovedFromComboBookingEvent(StationId station)
 {
     Station = station;
 }
コード例 #7
0
 public StationAddedToComboBookingEvent(StationId station)
 {
     Station = station;
 }