public void IsServiceAllowedToUse_False() { // Arrange SmsNoticeSettingsDTO smsSettings = new SmsNoticeSettingsDTO { Active = true, EndDailyTime = new TimeSpan(19, 0, 0), MinutesInactiveForFirstSms = 1, MinutesInactiveForSecondSms = 5, StartDailyTime = new TimeSpan(10, 10, 0) }; GrabAgentsAndSendSmsJob job = InitJobWithSmsSettings(smsSettings); Type t = typeof(GrabAgentsAndSendSmsJob); // Act var allow = t.InvokeMember("IsServiceAllowedToUse", BindingFlags.InvokeMethod | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance, null, job, null); // Assert Assert.IsNotNull(allow); Assert.IsFalse((bool)allow); }
private GrabAgentsAndSendSmsJob InitJobWithSmsSettings(SmsNoticeSettingsDTO smsSettings) { GrabAgentsAndSendSmsJob job = new GrabAgentsAndSendSmsJob(); Type t = typeof(GrabAgentsAndSendSmsJob); FieldInfo settings = t.GetField("smsSettings", BindingFlags.NonPublic | BindingFlags.Instance); settings.SetValue(job, smsSettings); FieldInfo firstSmsLim = t.GetField("firstSmsMinLimit", BindingFlags.NonPublic | BindingFlags.Instance); firstSmsLim.SetValue(job, (short)(smsSettings.MinutesInactiveForFirstSms - smsSettings.FirstSmsTimeDeviation)); FieldInfo secondSmsLim = t.GetField("secondSmsMinLimit", BindingFlags.NonPublic | BindingFlags.Instance); secondSmsLim.SetValue(job, (short)(smsSettings.MinutesInactiveForSecondSms - smsSettings.SecondSmsTimeDeviation)); return(job); }
static void Main(string[] args) { //// construct a scheduler factory //ISchedulerFactory schedFact = new StdSchedulerFactory(); //// get a scheduler, start the schedular before triggers or anything else //IScheduler sched = schedFact.GetScheduler(); //sched.Start(); //// create job //IJobDetail job = JobBuilder.Create<GrabAgentsAndSendSmsJob>() // .WithIdentity("job1", "group1") // .Build(); //// create trigger //ITrigger trigger = TriggerBuilder.Create() // .WithIdentity("trigger1", "group1") // .WithSimpleSchedule(x => x.WithIntervalInSeconds(60).RepeatForever()) // .Build(); //// Schedule the job using the job and trigger //sched.ScheduleJob(job, trigger); GrabAgentsAndSendSmsJob job = new GrabAgentsAndSendSmsJob(); //job.InitializeJob(); //bool b = job.IsServiceAllowedToUse(); //job.SendSms(null, "testc"); //BotStorageRepo repo = new BotStorageRepo(); //repo.ChangeAllowanceToSendErrorSms(true); //repo.ChangePermissionToEraseDailyData(false); }