public void GetByDevice()
        {
            Mock <IAlarmRepository> alarmRepo    = new Mock <IAlarmRepository>();
            AlarmService            alarmService = new AlarmService(alarmRepo.Object);

            //WHEN
            alarmRepo.Setup(o => o.CountByDevice("A81758FFFE0302EA", It.IsAny <DeviceAlarmFilter>())).Returns(1).Verifiable();
            alarmRepo.Setup(o => o.GetByDevice("A81758FFFE0302EA", It.IsAny <DeviceAlarmFilter>(), 5, 1)).Returns(new List <Alarm>
            {
                new Alarm
                {
                    Id               = "A45880",
                    DeviceId         = "",
                    SiteId           = "",
                    IsActive         = true,
                    AlarmType        = Alarm.Type.DeviceFailure,
                    AlarmGravity     = Alarm.Gravity.Information,
                    OccuredAt        = DateTime.UtcNow,
                    ShortDescription = "humidité entre 30 et 39",
                    Description      = "L'humidité intérieur est anormale"
                }
            }).Verifiable();

            AlarmFilter alarmFilter = new AlarmFilter
            {
                AlarmType = Alarm.Type.DeviceFailure,
                Gravity   = Alarm.Gravity.Critical
            };

            var items = alarmService.GetByDevice("A81758FFFE0302EA", alarmFilter, rowsPerPage: 5, pageNumber: 1);

            Check.That(items.PageCount).IsEqualTo(1);
            Check.That(items.TotalItemsCount).IsEqualTo(1);
            Check.That(items.Items).HasSize(1);

            alarmRepo.VerifyAll();
        }
Пример #2
0
        public async Task <IActionResult> GetAlarms(string deviceId, [FromQuery] AlarmFilter filter, int rowsPerPage = 0, int pageNumber = 1)
        {
            PaginatedItems <Alarm> alarms = alarmService.GetByDevice(deviceId, filter, rowsPerPage, pageNumber);

            return(Ok(Mapper.Map <PaginatedItemsDto <AlarmDetailsDto> >(alarms)));
        }