public void Montly_LastDay_SpecificMonths(string cronPattern)
        {
            var startDate = new DateTime(2018, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2018, 12, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);
        }
        public void Weekly_Every_Saturday_And_Thursday_At_9(string cronPattern)
        {
            var startDate = new DateTime(2018, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2018, 10, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);

            Assert.True(res.Any());
        }
        public void Hourly_Every_5_Hours(string cronPattern)
        {
            var startDate = new DateTime(2018, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2018, 10, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);

            Assert.True(res.Any());
        }
Exemple #4
0
        public void TestNextOccurance2()
        {
            var    startDate    = new DateTime(2016, 1, 1, 10, 50, 25);
            var    endDate      = new DateTime(2019, 12, 1, 10, 50, 25);
            string patternStr11 = "0 0 */2 * *";

            for (var i = startDate; i < endDate; i = i.AddDays(1))
            {
                var res3 = new CronTabScheduler().NextOccurance(patternStr11, i, endDate, i.AddDays(2));
            }
        }
        public void Montly_SpecificDay_in_SpecificMonths(string cronPattern)
        {
            var startDate = new DateTime(2018, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2018, 12, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);

            Assert.Equal("1397/3/15 9:10:00 AM", res[0]);
            Assert.Equal("1397/5/15 9:10:00 AM", res[1]);
            Assert.Equal("1397/7/15 9:10:00 AM", res[2]);
        }
        public void Montly_FirstDay_At_9(string cronPattern)
        {
            var startDate = new DateTime(2018, 1, 1, 10, 50, 25);
            var endDate   = new DateTime(2019, 12, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);

            Assert.Equal("1396/11/1 9:00:00 AM", res[0]);
            Assert.Equal("1397/9/1 9:00:00 AM", res[10]);
            Assert.Equal("1398/7/1 9:00:00 AM", res[20]);
        }
Exemple #7
0
        public void TestNextOccurance()
        {
            var startDate = new DateTime(2016, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2016, 12, 1, 10, 50, 25);

            string patternStr11 = "0 0 8-14 */1 TUE";

            var res3 = new CronTabScheduler().NextOccurance(patternStr11, startDate, endDate, new DateTime(2016, 8, 1, 10, 50, 25));

            var res4 = new CronTabScheduler().NextOccurance(patternStr11, startDate, endDate, new DateTime(2016, 6, 1, 10, 50, 25));

            var res5 = new CronTabScheduler().NextOccurance(patternStr11, startDate, endDate, "1395/09/01 10:20");
        }
        public void Montly_Tenth_At_9(string cronPattern)
        {
            var startDate = new DateTime(2018, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2018, 12, 1, 10, 50, 25);

            var res = new CronTabScheduler().Occurances(cronPattern, startDate, endDate, true);

            Assert.Equal("1397/4/10 9:00:00 AM", res[0]);
            Assert.Equal("1397/5/10 9:00:00 AM", res[1]);
            Assert.Equal("1397/6/10 9:00:00 AM", res[2]);
            Assert.Equal("1397/7/10 9:00:00 AM", res[3]);
            Assert.Equal("1397/8/10 9:00:00 AM", res[4]);
        }
Exemple #9
0
        public void TestMethod1()
        {
            var startDate = new DateTime(2016, 6, 1, 10, 50, 25);
            var endDate   = new DateTime(2019, 12, 1, 10, 50, 25);

            string fifthOfFarvardin = "0 0 15 1 *";
            var    f4Result         = new CronTabScheduler().NextOccurances(fifthOfFarvardin, startDate, endDate);



            //string patternStr11 = "0 0 8-14 */1 TUE";
            //var fResult11 = new CronTabScheduler().NextOccurances(patternStr11 , startDate,endDate);

            //var nowForNextOccurance = new DateTime(2016, 8, 1, 10, 50, 25);
            //var fResult111 = new CronTabScheduler().NextOccurance(patternStr11, startDate, endDate, DateTime.Now);

            //var fResult112 = new CronTabScheduler().NextOccurance(patternStr11,startDate,endDate, new DateTime(2016, 6, 1, 10, 50, 25));


            string patternStr10 = "0 0 * */1 5";
            var    fResult10    = new CronTabScheduler().NextOccurances(patternStr10, startDate, endDate);


            string patternStr9 = "0 0 * * SAT,SUN,MON,TUE,WED,THU";
            var    fResult9    = new CronTabScheduler().NextOccurances(patternStr9, startDate, endDate);


            string patternStr8 = "*/360 * * * *";
            var    f8Result    = new CronTabScheduler().NextOccurances(patternStr8, startDate, endDate);

            string patternStr7 = "50 2 * * *";
            var    f7Result    = new CronTabScheduler().NextOccurances(patternStr7, startDate, endDate);

            string patternStr6 = "0 0 */10 * *";
            var    f6Result    = new CronTabScheduler().NextOccurances(patternStr6, startDate, endDate);

            string secondOfEveryOtherMonth = "0 0 10 */2 *";
            var    f5Result = new CronTabScheduler().NextOccurances(secondOfEveryOtherMonth, startDate, endDate);

            string everyWeekSatSun = "0 0 * * SAT,SUN";
            var    f3Result        = new CronTabScheduler().NextOccurances(everyWeekSatSun, startDate, endDate);

            string firstOfEveryMonth = "0 0 1 */1 *";
            var    f1Result          = new CronTabScheduler().NextOccurances(firstOfEveryMonth, startDate, endDate);

            string everyOtherDay = "0 0 */2 * *";
            var    f2Result      = new CronTabScheduler().NextOccurances(everyOtherDay, startDate, endDate);
        }