예제 #1
0
        private bool BetweenPredicate(Slot s)
        {
            var timePeriod = new TimePeriod(_startTime, _startTime.Add(Time.CreateTime_24HourFormat(0, 30)));

            return
                (s.Day.Equals(_day) &&
                 s.TimePeriod.IntersectWith(timePeriod));
        }
        public void AddDayToScheduleOrigin()
        {
            var scheduleLocation = TestScheduleLocations.CreateOrigin(TestLocations.Surbiton, Test);

            scheduleLocation.AddDay(Start);

            Assert.Equal(Expected, scheduleLocation.Departure);
            Assert.Equal(Expected.Add(ThirtySeconds), scheduleLocation.WorkingDeparture);
        }
예제 #3
0
 public static Train CreateTrain2() {
     var stations = Stations.ToArray();
     var train = new Train(TrainCategory.Passenger, "P4321");
     var startTime = new Time(12, 00);
     train.Add(new StationCall(stations[2]["2"], startTime, startTime.Add(30)));
     train.Add(new StationCall(stations[1]["1"], startTime.Add(45), startTime.Add(51)));
     train.Add(new StationCall(stations[0]["3"], startTime.Add(70), startTime.Add(180)));
     return train;
 }
예제 #4
0
 public static Train CreateTrain1() {
     var stations = Stations.ToArray();
     var train = new Train(TrainCategory.Freight, "G1234");
     var startTime = new Time(12, 00);
     train.Add(new StationCall(stations[0]["3"], startTime, startTime.Add(30)));
     train.Add(new StationCall(stations[1]["2"], startTime.Add(50), startTime.Add(57)));
     train.Add(new StationCall(stations[2]["1"], startTime.Add(70), startTime.Add(180)));
     return train;
 }
예제 #5
0
        public static Train CreateTrainInOppositeDirection(string category, string number, Time startTime)
        {
            var stations = Stations.ToArray();
            var train    = new Train(number)
            {
                Category = category
            };

            train.Add(new StationCall(stations[2]["2"], startTime, startTime));
            train.Add(new StationCall(stations[1]["1"], startTime.Add(25), startTime.Add(30)));
            train.Add(new StationCall(stations[0]["3"], startTime.Add(55), startTime.Add(55)));
            return(train);
        }
예제 #6
0
 /// <summary>
 /// >=1 means added
 /// 0 means last element updated
 /// -1 means nothing changed
 /// </summary>
 /// <param name="t"></param>
 /// <param name="o"></param>
 /// <param name="h"></param>
 /// <param name="l"></param>
 /// <param name="c"></param>
 /// <param name="v"></param>
 /// <param name="isTriggerDataAdded"></param>
 /// <returns></returns>
 public int AddUpdate(long t, double o, double h, double l, double c, double v, bool isTriggerDataAdded = false)
 {
     if (this.Count == 0 || t > this.LastTime)
     {
         Open.Add(o);
         High.Add(h);
         Low.Add(l);
         Close.Add(c);
         Volume.Add(v);
         Time.Add(t);
         if (isTriggerDataAdded)
         {
             OnDataAddedOrUpdated?.Invoke(this, this, 1);
         }
         return(1);
     }
     else if (t == this.LastTime)
     {
         Open[this.Count - 1]   = o;
         High[this.Count - 1]   = h;
         Low[this.Count - 1]    = l;
         Close[this.Count - 1]  = c;
         Volume[this.Count - 1] = v;
         if (isTriggerDataAdded)
         {
             OnDataAddedOrUpdated?.Invoke(this, this, 0);
         }
         return(0);
     }
     return(-1);
 }
        public static ScheduleStop CreateStop(Location location, Time arrival, string activity = "T", int sequence = 1)
        {
            var stop = new ScheduleStop()
            {
                Location         = location,
                Sequence         = sequence,
                Arrival          = arrival,
                WorkingArrival   = arrival.Subtract(ThirtySeconds),
                Departure        = arrival.Add(OneMinute),
                WorkingDeparture = arrival.Add(ThirtySeconds),
                Platform         = "10",
                Activities       = CreateActivities(activity)
            };

            return(stop);
        }
예제 #8
0
        private void PopulateTimeCollection(bool isMaxLimit = false)
        {
            for (int i = 1; i <= 1000; i++)
            {
                Minute.Add(i.ToString());
            }

            if (isMaxLimit)
            {
                Second.Add("00");
            }
            else
            {
                for (int j = 0; j < 60; j++)
                {
                    if (j < 10)
                    {
                        Second.Add("0" + j);
                    }
                    else
                    {
                        Second.Add(j.ToString());
                    }
                }
            }

            Time.Add(Minute);

            Time.Add(Second);
        }
예제 #9
0
 public void AddTime(TimeSpan time)
 {
     if (!OutOfTime)
     {
         Time = Time.Add(time);
     }
 }
예제 #10
0
        private void PopulateTimeCollection()
        {
            for (int i = 1; i <= 12; i++)
            {
                Hour.Add(i.ToString());
            }
            for (int j = 0; j < 60; j++)
            {
                if (j < 10)
                {
                    Minute.Add("0" + j);
                }
                else
                {
                    Minute.Add(j.ToString());
                }
            }

            Format.Add("AM");
            Format.Add("PM");

            Time.Add(Hour);
            Time.Add(Minute);
            Time.Add(Format);
        }
예제 #11
0
        public Time GetDurationOfManagedAudioMedia()
        {
            if (AllowMultipleTypes)
            {
                return(null);
            }

            Time dur = new Time();

            foreach (Media media in mSequence.ContentsAs_Enumerable)
            {
                if (media is ManagedAudioMedia)
                {
                    if (((ManagedAudioMedia)media).HasActualAudioMediaData)
                    {
                        dur.Add(((ManagedAudioMedia)media).Duration);
                    }
                }
                else
                {
                    return(null);
                }
            }
            return(dur);
        }
예제 #12
0
        public void ServiceDateIsDayBeforeWhenTimeIsPlusOneDay()
        {
            var one          = new Time(new TimeSpan(1, 0, 0));
            var twelvethirty = new Time(new TimeSpan(0, 30, 0));

            twelvethirty = twelvethirty.Add(Time.OneDay);

            var services = new[]
            {
                CreateScheduleStop(one),
                CreateScheduleStop(twelvethirty)
            };

            var schedule = new PublicSchedule(TestStations.Surbiton, TimesToUse.Arrivals, Time.EarlierLaterComparer);

            foreach (var service in services)
            {
                schedule.AddService(CreateServiceTime(service));
            }

            var searchAt = Aug5.AddMinutes(1);
            var found    = schedule.FindServices(searchAt, GathererConfig.OneService);

            Assert.Equal(Aug4, found[0].Service.On);
        }
예제 #13
0
        public void ReturnNearestWhenHaveVersionGoesOverMidnight()
        {
            var one          = new Time(new TimeSpan(1, 0, 0));
            var twelvethirty = new Time(new TimeSpan(0, 30, 0));

            twelvethirty = twelvethirty.Add(Time.OneDay);

            var services = new[]
            {
                CreateScheduleStop(one),
                CreateScheduleStop(twelvethirty)
            };

            var schedule = new PublicSchedule(TestStations.Surbiton, TimesToUse.Arrivals, Time.EarlierLaterComparer);

            foreach (var service in services)
            {
                schedule.AddService(CreateServiceTime(service));
            }

            var searchAt = Aug5.AddMinutes(1);
            var found    = schedule.FindServices(searchAt, GathererConfig.OneService);

            Assert.Equal(services[1].Schedule, found[0].Service.Details);
        }
예제 #14
0
        public void WhenHaveTwoAtSameTimeJustOnePlusOneDay()
        {
            var twelvethirty        = new Time(new TimeSpan(0, 30, 0));
            var twelvethirtyPlusOne = twelvethirty.Add(Time.OneDay);

            var services = new[]
            {
                CreateScheduleStop(twelvethirtyPlusOne, "NextDay"),
                CreateScheduleStop(twelvethirty, "Today")
            };

            var schedule = new PublicSchedule(TestStations.Surbiton, TimesToUse.Arrivals, Time.EarlierLaterComparer);

            foreach (var service in services)
            {
                schedule.AddService(CreateServiceTime(service));
            }

            var searchAt = Aug5.AddMinutes(1);
            var found    = schedule.FindServices(searchAt, GathererConfig.OneService);

            Assert.Equal(2, found.Length);
            Assert.Collection(found,
                              s => { Assert.Equal(Aug4, s.On); },
                              s => { Assert.Equal(Aug5, s.On); });
        }
예제 #15
0
 public void Add(long t, double p, double v)
 {
     Time.Add(t);
     Price.Add(p);
     Volume.Add(v);
     DataAdded?.Invoke(this, Symbol, t, p, v);
 }
예제 #16
0
        public void MapDeparture()
        {
            var output = Map();

            Assert.Equal(Ten, output.Departure);
            Assert.Equal(Ten.Add(TestTime.ThirtySeconds), output.WorkingDeparture);
        }
예제 #17
0
        public int solution(string s)
        {
            List <string> Temp = new List <string>();

            Temp = s.Split('\n').ToList <string>();
            Temp = s.Split(',').ToList <string>();

            //add times
            for (int i = 0; i < Temp.Count; i++)
            {
                //make sure we're incrementing by 2 since theres going to be 2 columns in our list
                if (IsOdd(i) == true)
                {
                    i++;
                }
                ;
                Time.Add(Temp.ElementAt(i));
                PhoneNumber.Add(Temp.ElementAt(i + 1));
            }

            //testing temps values
            Console.WriteLine(Temp.ElementAt(0));
            Console.WriteLine(Temp.ElementAt(1));
            Console.WriteLine(Temp.ElementAt(2));
            Console.WriteLine(Temp.ElementAt(3));

            return(0);
        }
예제 #18
0
        public void AddTimeSpanLessThanOneDay()
        {
            var time = new Time(14, 02, 24);

            Action a = () => { var newTime = time.Add(new TimeSpan(-15, 0, 0)); };

            a.Should().ThrowExactly <OverflowException>();
        }
예제 #19
0
 public void Can_Add_TimeSpan()
 {
     Time t1 = new Time(3, 50);
     TimeSpan timeSpan = new TimeSpan(1,2,15,0);  //1d 2t 15min 0sec
     Time t3 = t1.Add(timeSpan);
     Assert.AreEqual(6, t3.Hour);
     Assert.AreEqual(5, t3.Minute);
 }
예제 #20
0
 public void Can_Add_Time()
 {
     Time t1 = new Time(3,50);
     Time t2 = new Time(1,45);
     Time t3 = t1.Add(t2);
     Assert.AreEqual(5,t3.Hour);
     Assert.AreEqual(35,t3.Minute);
 }
예제 #21
0
        public void AddTimeSpan(TimeSpan timeSpanToAdd, Time expectedTime)
        {
            var time = new Time(14, 02, 24);

            var newTime = time.Add(timeSpanToAdd);

            newTime.Should().Be(expectedTime);
        }
예제 #22
0
        public void AddTimePeriodTest()
        {
            Time       time1  = new Time(13, 59, 55);
            TimePeriod period = new TimePeriod(1, 15, 10);

            var result = time1.Add(period);

            Assert.AreEqual(new Time(15, 15, 5), result);
        }
        public void DoNotAddDay()
        {
            var scheduleLocation = TestScheduleLocations.CreateOrigin(TestLocations.Surbiton, Start);

            scheduleLocation.AddDay(Start);

            Assert.Equal(Start, scheduleLocation.Departure);
            Assert.Equal(Start.Add(ThirtySeconds), scheduleLocation.WorkingDeparture);
        }
예제 #24
0
        private void FillTime()
        {
            //// fixed times http://bustracker.expressbus.ie/routes/860/O/Park_West-Westmoreland_Street
            ////09:30
            //Time.Add(DateTime.Today.AddHours(9).AddMinutes(30));
            ////11:00
            //Time.Add(DateTime.Today.AddHours(11));
            ////12:00
            //Time.Add(DateTime.Today.AddHours(12));
            ////12:45
            //Time.Add(DateTime.Today.AddHours(12).AddMinutes(45));
            ////13:45
            //Time.Add(DateTime.Today.AddHours(13).AddMinutes(45));
            ////16:00
            //Time.Add(DateTime.Today.AddHours(16));
            ////16:20
            //Time.Add(DateTime.Today.AddHours(16).AddMinutes(20));
            ////16:40
            //Time.Add(DateTime.Today.AddHours(16).AddMinutes(40));
            ////17:00
            //Time.Add(DateTime.Today.AddHours(17));
            ////17:20
            //Time.Add(DateTime.Today.AddHours(17).AddMinutes(20));
            ////17:40
            //Time.Add(DateTime.Today.AddHours(17).AddMinutes(40));
            ////18:00
            //Time.Add(DateTime.Today.AddHours(18));
            ////18:20
            //Time.Add(DateTime.Today.AddHours(18).AddMinutes(20));
            ////18:40
            //Time.Add(DateTime.Today.AddHours(18).AddMinutes(40));
            ////19:00
            //Time.Add(DateTime.Today.AddHours(19));
            ////19:30
            //Time.Add(DateTime.Today.AddHours(19).AddMinutes(30));
            ////20:00
            //Time.Add(DateTime.Today.AddHours(20));

            // Imelda's email
            Time.Add(DateTime.Today.AddHours(7).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(7).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(8).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(8).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(9).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(9).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(16).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(16).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(17).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(17).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(18).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(18).AddMinutes(30));
            Time.Add(DateTime.Today.AddHours(19).AddMinutes(00));
            Time.Add(DateTime.Today.AddHours(19).AddMinutes(30));
        }
 private void StartTimer()
 {
     Device.StartTimer(TimeSpan.FromSeconds(1), () =>
     {
         if (IsRunning)
         {
             Time = Time.Add(TimeSpan.FromSeconds(1));
         }
         return(IsRunning);
     });
 }
예제 #26
0
 public void PassTime()
 {
     Start();
     while (true)
     {
         if (isTicking)
         {
             PrintClock();
             Time = Time.Add(TimeSpan.FromMinutes(1));
         }
         Thread.Sleep(10);
     }
 }
예제 #27
0
 private void UpdateTimeInterval(DateTime time)
 {
     //Insert new time
     TimeIntervalGlobal.Add(time);
     //Sort all values
     TimeIntervalGlobal.Sort((x, y) => DateTime.Compare(x, y));
     //List of datetime values, converted in string to display them in graph
     Time.Clear();
     foreach (DateTime t in TimeIntervalGlobal)
     {
         Time.Add(t.ToString());
     }
 }
예제 #28
0
        private void PopulateTimeCollection()
        {
            Hour.Add("-");
            Minute.Add("-");
            Second.Add("-");


            //Populate Hour
            for (int i = 0; i <= 23; i++)
            {
                if (i < 10)
                {
                    Hour.Add("0" + i.ToString());
                }
                else
                {
                    Hour.Add(i.ToString());
                }
            }

            //Populate Minute
            for (int j = 0; j < 60; j++)
            {
                if (j < 10)
                {
                    Minute.Add("0" + j);
                }
                else
                {
                    Minute.Add(j.ToString());
                }
            }

            //Populate Second
            for (int j = 0; j < 60; j++)
            {
                if (j < 10)
                {
                    Second.Add("0" + j);
                }
                else
                {
                    Second.Add(j.ToString());
                }
            }


            Time.Add(Hour);
            Time.Add(Minute);
            Time.Add(Second);
        }
 public RtuOpenCloseItemThree(int rutid)
 {
     this.RtuId = rutid;
     for (int i = 0; i < 17; i++)
     {
         Time.Add("--");
     }
     //Time1 = "--";
     //Time2 = "--";
     //Time3 = "--";
     //Time4 = "--";
     //Time5 = "--";
     //Time6 = "--";
 }
예제 #30
0
        public void ShouldAddTime()
        {
            // Given
            var time1 = new Time(0, 1, 2, 3, 4);
            var time2 = new Time(5, 6, 7, 8, 9);

            // When
            var result1 = time1.Add(time2);
            var result2 = time2.Add(time1);

            // Then
            Assert.AreEqual(time1.TotalSeconds + time2.TotalSeconds, result1.TotalSeconds, TimeInaccuracy);
            Assert.AreEqual(time2.TotalSeconds + time1.TotalSeconds, result2.TotalSeconds, TimeInaccuracy);
        }
예제 #31
0
        public void ChangeTime(int second)
        {
            if (second < 0 && Time.TotalSeconds + second <= 0)
            {
                Time = new TimeSpan(0, 0, 0);
                return;
            }

            if (second > 0 && Time.TotalSeconds >= 3599)
            {
                Time = new TimeSpan(0, 59, 59);
                return;
            }
            Time = Time.Add(new TimeSpan(0, 0, second));
        }
        public static ScheduleStop CreatePickupOnlyStop(Location location, Time departure)
        {
            var stop = new ScheduleStop()
            {
                Location         = location,
                Sequence         = 1,
                Arrival          = Time.NotValid,
                WorkingArrival   = departure.Subtract(ThirtySeconds),
                Departure        = departure,
                WorkingDeparture = departure.Add(ThirtySeconds),
                Platform         = "10",
                Activities       = CreateActivities("U")
            };

            return(stop);
        }
예제 #33
0
        private void GenerateSignal()
        {
            double y_i = 0;
            double t   = (double)T / N;

            for (double i = 0; i < 1; i += t / 10)
            {
                Time.Add(i);
                y_i = Math.Pow(Amplitude, K) * Math.Sin(2 * Math.PI * Frequency * i); //+ Math.Pow(2 * Amplitude, K) * Math.Sin(2 * Math.PI * 2 * Frequency * i);
                Signal.Add(y_i);
            }

            //CalcSum();
            Filter();
            CalculateAmplitude();
        }
        public static ScheduleStop CreateSetdownOnlyStop(Location location, Time arrival)
        {
            var stop = new ScheduleStop()
            {
                Location         = location,
                Sequence         = 1,
                Arrival          = arrival,
                WorkingArrival   = arrival.Subtract(ThirtySeconds),
                Departure        = Time.NotValid,
                WorkingDeparture = arrival.Add(ThirtySeconds),
                Platform         = "10",
                Activities       = CreateActivities("D")
            };

            return(stop);
        }
예제 #35
0
파일: TimeTests.cs 프로젝트: nickvane/vela
 public void AddShouldThrowException()
 {
     var date = new Time();
     date.Add(null);
 }
예제 #36
0
 public static Time After(this Interval interval, Time origin)
 {
     return origin.Add(interval);
 }