public async void FunctionShouldCallWatchServiceOnce() { //Given var body = new SubscribeToAlarmModel() { AlarmId = 1, WatchId = "1" }; var req = new HttpRequestBuilder().Body(body).Build(); var watchService = new Mock <IWatchService>(); var alarmService = new Mock <IAlarmService>(); AlarmWatch aw = new AlarmWatch { Alarm = new AlarmSystem.Core.Entity.DB.Alarm { AlarmId = 1, Code = 205, Description = "TestDescription" }, WatchId = "1" }; //When watchService.Setup(ms => ms.SubscribeToAlarm(aw)); var res = await new SubscribeToAlarm(watchService.Object, alarmService.Object).Run(req, logger); //Then watchService.Verify(ms => ms.SubscribeToAlarm(It.IsAny <AlarmWatch>()), Times.Once()); }
private AlarmWatch ParseFunctionModelToDtoModel(SubscribeToAlarmModel stam) { AlarmSystem.Core.Entity.DB.Alarm alarm = _alarmservice.GetAlarmById(stam.AlarmId); AlarmWatch aw = new AlarmWatch() { Alarm = alarm, WatchId = stam.WatchId }; return(aw); }
public async Task <IActionResult> Run([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "subscribeToAlarm")] HttpRequest req, ILogger log) { //TODO Validate body string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); SubscribeToAlarmModel stam = JsonConvert.DeserializeObject <SubscribeToAlarmModel>(requestBody); try { AlarmWatch aw = ParseFunctionModelToDtoModel(stam); _watchservice.SubscribeToAlarm(aw); return(new OkResult()); } catch (InvalidDataException e) { return(new BadRequestObjectResult(e.Message)); } catch (EntityNotFoundException e) { return(new NotFoundObjectResult(e.Message)); } }
public AlarmWatch GetSubscriptionOfAlarmFromWatch(int alarmId, string watchId) { if (string.IsNullOrEmpty(watchId)) { throw new InvalidDataException("Watch id cannot be empty or non existent! Please include watch id"); } else { AlarmWatch aw = _watchRepo.ReadSubscriptionOfAlarmFromWatch(alarmId, watchId); if (aw != null) { return(aw); } else { throw new EntityNotFoundException("Entity was not found in database"); } } }
public void TestRepoShouldBeCalledOnceIfAlarmWatchIsNotEmptyOrNull() { //Given var mockRepo = new Mock <IWatchRepository>(); var service = new WatchService(mockRepo.Object); AlarmWatch aw = new AlarmWatch { Alarm = new Core.Entity.DB.Alarm { AlarmId = 1, Code = 205, Description = "TestDescription" }, WatchId = "1" }; //When mockRepo.Setup(mr => mr.SubscribeToAlarm(It.IsAny <AlarmWatch>())); service.SubscribeToAlarm(aw); //Then mockRepo.Verify(mr => mr.SubscribeToAlarm(It.IsAny <AlarmWatch>()), Times.Once); }
private AlarmWatch ParseFunctionModelToDtoModel(DeleteAlarmSubscriptionModel dasm) { AlarmWatch aw = _watchService.GetSubscriptionOfAlarmFromWatch(dasm.AlarmId, dasm.WatchId); return(aw); }
public void SubscribeToAlarm(AlarmWatch aw) { _ctx.AlarmWatch.Add(aw); _ctx.SaveChanges(); }
public void DeleteAlarmSubscriptionFromWatch(AlarmWatch aw) { _watchRepo.RemoveAlarmSubscriptionFromWatch(aw); }
public void SubscribeToAlarm(AlarmWatch aw) { _watchRepo.SubscribeToAlarm(aw); }
public void RemoveAlarmSubscriptionFromWatch(AlarmWatch aw) { _ctx.AlarmWatch.Remove(aw); _ctx.SaveChanges(); }