public void GetInitiativeAsyncReturnsOk() { // Arrange var initiative = new InitiativeForCreate { Year = "2019", Name = "Test Initiative" }; var mockInitiativeRepository = new Mock <IInitiativeRepository> { CallBase = true }; var mockEventRepository = new Mock <IEventRepository> { CallBase = true }; mockInitiativeRepository.Setup(x => x.InitiativeExistsAsync(initiative.Name, initiative.Year)).ReturnsAsync(true); var config = new MapperConfiguration(cfg => { cfg.CreateMap <InitiativeForCreate, Initiative>(); }); var mapper = config.CreateMapper(); var service = new InitiativeService(mockInitiativeRepository.Object, mapper, mockEventRepository.Object); // Act var result = service.InitiativeExistsAsync(initiative); // Assert Assert.IsNotNull(result); Assert.IsNull(result.Exception); Assert.IsTrue(result.Result); }
public async Task <IActionResult> CreateInitiative(InitiativeForCreate initiativeForCreate) { if (await _initiativeService.InitiativeExistsAsync(initiativeForCreate)) { return(BadRequest("Initiative already exists for year " + initiativeForCreate.Year)); } bool success = await _initiativeService.CreateInitiativeAsync(initiativeForCreate); return(Ok(success)); }
public async Task <bool> CreateInitiativeAsync(InitiativeForCreate initiativeForCreate) { var initiaviveToCreate = _mapper.Map <Initiative>(initiativeForCreate); bool success = await _initiativeRepository.CreateInitiativeAsync(initiaviveToCreate, initiativeForCreate.Year); if (success) { Event appEvent = new Event { Id = Guid.NewGuid().ToString(), Month = "09-2020", Initiative = initiativeForCreate.Name, Type = "New", Value = 0, InitiativeYear = initiativeForCreate.Year }; await _eventRepository.CreateEventAsync(appEvent); return(true); } return(false); }
public async Task <bool> InitiativeExistsAsync(InitiativeForCreate initiativeForCreate) { return(await _initiativeRepository.InitiativeExistsAsync(initiativeForCreate.Name, initiativeForCreate.Year)); }