Beispiel #1
0
        public static CifSchedule CreateSchedule(string timetableId             = "X12345",
                                                 StpIndicator indicator         = StpIndicator.Permanent,
                                                 ICalendar calendar             = null,
                                                 ScheduleLocation[] stops       = null,
                                                 CifService service             = null,
                                                 string retailServiceId         = null,
                                                 AccomodationClass sleeperClass = AccomodationClass.None)
        {
            retailServiceId = retailServiceId ?? $"VT{timetableId.Substring(1, 4)}00";

            var schedule = new CifSchedule()
            {
                TimetableUid         = timetableId,
                StpIndicator         = indicator,
                RetailServiceId      = retailServiceId,
                TrainIdentity        = $"9Z{timetableId.Substring(1, 2)}",
                Operator             = new Toc(retailServiceId.Substring(0, 2)),
                Status               = ServiceStatus.PermanentPassenger,
                Category             = ServiceCategory.ExpressPassenger,
                ReservationIndicator = ReservationIndicator.Supported,
                SeatClass            = AccomodationClass.Both,
                SleeperClass         = sleeperClass,
                Calendar             = calendar ?? EverydayAugust2019,
            };

            if (service != null)
            {
                schedule.AddToService(service);
            }

            if (indicator != StpIndicator.Cancelled)
            {
                stops = stops ?? DefaultLocations;
                foreach (var location in stops)
                {
                    location.SetParent(schedule);
                }
            }

            return(schedule);
        }
Beispiel #2
0
        public void IsSleeper(AccomodationClass sleeperClass)
        {
            var schedule = TestSchedules.CreateSchedule(sleeperClass: sleeperClass);

            Assert.True(schedule.IsSleeper());
        }