예제 #1
0
        public void TestCreateCommunicationAlarm1h()
        {
            //GIVEN
            string   deviceId = "1";
            string   siteId   = "2";
            DateTime lastCom  = new DateTime(2018, 1, 20, 14, 30, 0);

            Alarm.Gravity            gravity    = Alarm.Gravity.Information;
            Mock <IDeviceRepository> deviceRepo = new Mock <IDeviceRepository>();
            Mock <IFreezeRepository> freezeRepo = new Mock <IFreezeRepository>();

            //WHEN
            AlarmService service = new AlarmService(deviceRepo.Object, freezeRepo.Object);
            Alarm        alarm   = service.CreateCommunicationAlarm(deviceId, siteId, lastCom, gravity);

            //THEN
            deviceRepo.Verify(o => o.AddAlarm("1", It.Is <Alarm>(e =>
                                                                 e.AlarmGravity == Alarm.Gravity.Information &&
                                                                 e.AlarmType == Alarm.Type.CommuniationFailure &&
                                                                 e.Description == "Le capteur n'a pas communiqué depuis le 20/01/2018 14:30" &&
                                                                 e.ShortDescription == "Erreur de communication")), Times.Once);
        }