public async void Update_ErrorsOccurred_ShouldReturnErrorResponse() { var mock = new ServiceMockFacade <IEventStatusService, IEventStatusRepository>(); var model = new ApiEventStatusServerRequestModel(); var validatorMock = new Mock <IApiEventStatusServerRequestModelValidator>(); validatorMock.Setup(x => x.ValidateUpdateAsync(It.IsAny <int>(), It.IsAny <ApiEventStatusServerRequestModel>())).Returns(Task.FromResult(new ValidationResult(new List <ValidationFailure>() { new ValidationFailure("text", "test") }))); mock.RepositoryMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult(new EventStatus())); var service = new EventStatusService(mock.LoggerMock.Object, mock.MediatorMock.Object, mock.RepositoryMock.Object, validatorMock.Object, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); UpdateResponse <ApiEventStatusServerResponseModel> response = await service.Update(default(int), model); response.Should().NotBeNull(); response.Success.Should().BeFalse(); validatorMock.Verify(x => x.ValidateUpdateAsync(It.IsAny <int>(), It.IsAny <ApiEventStatusServerRequestModel>())); mock.MediatorMock.Verify(x => x.Publish(It.IsAny <EventStatusUpdatedNotification>(), It.IsAny <CancellationToken>()), Times.Never()); }
public void Given_UndefinedEvent_Should_Reject() { // Arrange _httpService.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <Event <object> >())); // Act var statusService = new EventStatusService(_logger.Object, _httpService.Object, _appSettingsMock.Object); var evt = statusService.VerifyEvent(new Event <object> { Action = "SomeUndefinedAction" }); // Verify Assert.Equal(Status.ADAPTER_REJECTED, evt.Status); _httpService.Verify(x => x.Post(It.IsAny <string>(), It.IsAny <Event <object> >()), Times.Once()); }
public void Given_VerifiedAction_Should_Accept() { // Arrange _httpService.Setup(x => x.Post(It.IsAny <string>(), It.IsAny <Event <object> >())); // Act var statusService = new EventStatusService(_logger.Object, _httpService.Object, _appSettingsMock.Object); var evt = statusService.VerifyEvent(new Event <object> { Action = "health" }); // Verify Assert.Equal(Status.ADAPTER_ACCEPTED, evt.Status); _httpService.Verify(x => x.Post(It.IsAny <string>(), It.IsAny <Event <object> >()), Times.Once()); }
public async void Get_ShouldReturnNullBecauseRecordNotFound() { var mock = new ServiceMockFacade <IEventStatusService, IEventStatusRepository>(); mock.RepositoryMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult <EventStatus>(null)); var service = new EventStatusService(mock.LoggerMock.Object, mock.MediatorMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); ApiEventStatusServerResponseModel response = await service.Get(default(int)); response.Should().BeNull(); mock.RepositoryMock.Verify(x => x.Get(It.IsAny <int>())); }
public async void EventsByEventStatusId_Not_Exists() { var mock = new ServiceMockFacade <IEventStatusService, IEventStatusRepository>(); mock.RepositoryMock.Setup(x => x.EventsByEventStatusId(default(int), It.IsAny <int>(), It.IsAny <int>())).Returns(Task.FromResult <List <Event> >(new List <Event>())); var service = new EventStatusService(mock.LoggerMock.Object, mock.MediatorMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); List <ApiEventServerResponseModel> response = await service.EventsByEventStatusId(default(int)); response.Should().BeEmpty(); mock.RepositoryMock.Verify(x => x.EventsByEventStatusId(default(int), It.IsAny <int>(), It.IsAny <int>())); }
public async void All_ShouldReturnRecords() { var mock = new ServiceMockFacade <IEventStatusService, IEventStatusRepository>(); var records = new List <EventStatus>(); records.Add(new EventStatus()); mock.RepositoryMock.Setup(x => x.All(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <string>())).Returns(Task.FromResult(records)); var service = new EventStatusService(mock.LoggerMock.Object, mock.MediatorMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); List <ApiEventStatusServerResponseModel> response = await service.All(); response.Should().HaveCount(1); mock.RepositoryMock.Verify(x => x.All(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <string>())); }
public async void Get() { var mock = new ServiceMockFacade <IEventStatusRepository>(); var record = new EventStatus(); mock.RepositoryMock.Setup(x => x.Get(It.IsAny <int>())).Returns(Task.FromResult(record)); var service = new EventStatusService(mock.LoggerMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.BOLMapperMockFactory.BOLEventStatusMapperMock, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.BOLMapperMockFactory.BOLEventMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); ApiEventStatusResponseModel response = await service.Get(default(int)); response.Should().NotBeNull(); mock.RepositoryMock.Verify(x => x.Get(It.IsAny <int>())); }
public async void Create() { var mock = new ServiceMockFacade <IEventStatusRepository>(); var model = new ApiEventStatusRequestModel(); mock.RepositoryMock.Setup(x => x.Create(It.IsAny <EventStatus>())).Returns(Task.FromResult(new EventStatus())); var service = new EventStatusService(mock.LoggerMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.BOLMapperMockFactory.BOLEventStatusMapperMock, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.BOLMapperMockFactory.BOLEventMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); CreateResponse <ApiEventStatusResponseModel> response = await service.Create(model); response.Should().NotBeNull(); mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Verify(x => x.ValidateCreateAsync(It.IsAny <ApiEventStatusRequestModel>())); mock.RepositoryMock.Verify(x => x.Create(It.IsAny <EventStatus>())); }
public async void Delete() { var mock = new ServiceMockFacade <IEventStatusRepository>(); var model = new ApiEventStatusRequestModel(); mock.RepositoryMock.Setup(x => x.Delete(It.IsAny <int>())).Returns(Task.CompletedTask); var service = new EventStatusService(mock.LoggerMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.BOLMapperMockFactory.BOLEventStatusMapperMock, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.BOLMapperMockFactory.BOLEventMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); ActionResponse response = await service.Delete(default(int)); response.Should().NotBeNull(); mock.RepositoryMock.Verify(x => x.Delete(It.IsAny <int>())); mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Verify(x => x.ValidateDeleteAsync(It.IsAny <int>())); }
public async void Delete_NoErrorsOccurred_ShouldReturnResponse() { var mock = new ServiceMockFacade <IEventStatusService, IEventStatusRepository>(); var model = new ApiEventStatusServerRequestModel(); mock.RepositoryMock.Setup(x => x.Delete(It.IsAny <int>())).Returns(Task.CompletedTask); var service = new EventStatusService(mock.LoggerMock.Object, mock.MediatorMock.Object, mock.RepositoryMock.Object, mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Object, mock.DALMapperMockFactory.DALEventStatusMapperMock, mock.DALMapperMockFactory.DALEventMapperMock); ActionResponse response = await service.Delete(default(int)); response.Should().NotBeNull(); response.Success.Should().BeTrue(); mock.RepositoryMock.Verify(x => x.Delete(It.IsAny <int>())); mock.ModelValidatorMockFactory.EventStatusModelValidatorMock.Verify(x => x.ValidateDeleteAsync(It.IsAny <int>())); mock.MediatorMock.Verify(x => x.Publish(It.IsAny <EventStatusDeletedNotification>(), It.IsAny <CancellationToken>())); }