public async Task ExistThreeSkills_Executed_ThreeSkillViewModel() //padrão nomenclatura given_when_then { //Arrange var skills = new List <Skill> { new Skill(".Net"), new Skill("Angular"), new Skill("Sql Server") }; var skillRepository = new Mock <ISkillRepository>(); skillRepository.Setup(sr => sr.GetAll()).Returns(Task.FromResult(skills)); var getAllSkillsQuery = new GetAllSkillsQuery(); var getAllSkillsQueryHandler = new GetAllSkillsQueryHandler(skillRepository.Object); //Act var skillsViewModel = await getAllSkillsQueryHandler.Handle(getAllSkillsQuery, new CancellationToken()); //Assert Assert.NotNull(skillsViewModel); Assert.Equal(skills.Count, skillsViewModel.Count); foreach (var skill in skills) { var skillViewModel = skillsViewModel.SingleOrDefault(s => s.Description == skill.Description); Assert.NotNull(skillViewModel); } skillRepository.Verify(sr => sr.GetAll(), Times.Once); }
public async Task <ActionResult <List <VacancySkillDto> > > GetAllSkills([FromQuery] GetAllSkillsQuery skillsQuery) { try { var filter = _mapper.Map <GetAllSkillsFilter>(skillsQuery); var skills = await _skillService.GetAllSkills(filter); var skillsResponse = _mapper.Map <List <VacancySkillDto> >(skills); return(Ok(skillsResponse)); } catch (SkillValidationException exception) when(exception.InnerException is NotFoundSubscriptionException) { var innerMessage = GetInnerMessage(exception); return(NotFound(innerMessage)); } catch (SkillValidationException exception) { var innerMessage = GetInnerMessage(exception); return(BadRequest(innerMessage)); } catch (SkillServiceException exception) { return(Problem(exception.Message)); } }
public async Task TwoSkillsExist_Executed_ReturnTwoSkillsDTO() { //Arrange var skills = new List <SkillDTO> { new SkillDTO(1, "Descrição de teste 1"), new SkillDTO(2, "Descrição de teste 2") }; var skillsRepositoryMock = new Mock <ISkillRepository>(); skillsRepositoryMock.Setup(s => s.GetAllAsync().Result).Returns(skills); var getAllSkillsQuery = new GetAllSkillsQuery(""); var getAllSkillsQueryHandler = new GetAllSkillsQueryHandler(skillsRepositoryMock.Object); //Act var skillDTOList = await getAllSkillsQueryHandler.Handle(getAllSkillsQuery, new CancellationToken()); //Assert Assert.NotNull(skillDTOList); Assert.NotEmpty(skillDTOList); Assert.Equal(skills.Count, skillDTOList.Count); skillsRepositoryMock.Verify(s => s.GetAllAsync().Result, Times.Once); }
public async Task ExistThreeSkills_Executed_ThreeSkillsViewModel() { //Arrange var skills = new List <Skill> { new Skill(".NET"), new Skill("Angular"), new Skill("SQL Server") }; var skillsRepository = new Mock <ISkillRepository>(); skillsRepository.Setup(sr => sr.GetAllSkillsAsync()).Returns(Task.FromResult(skills)); //Mockando os dados da entidade para as classes do CRQS e validá-los posteriormente var getAllSkillsQuery = new GetAllSkillsQuery(); var getAllSkillsQueryHandler = new GetAllSkillsQueryHandler(skillsRepository.Object); //Act var skillsViewModel = await getAllSkillsQueryHandler.Handle(getAllSkillsQuery, new CancellationToken()); //Assert Assert.NotNull(skillsViewModel); Assert.Equal(skills.Count, skillsViewModel.Count); foreach (var item in skills) { var skillViewModel = skillsViewModel.FirstOrDefault(s => s.Description == item.Description); Assert.NotNull(skillViewModel); } skillsRepository.Verify(sr => sr.GetAllSkillsAsync(), Times.Once); }
public async Task <ApiResponse <IEnumerable <GetSkillQueryResult> > > GetAll() { var query = new GetAllSkillsQuery(); var data = await _operationMediator.HandleAsync(query); return(ApiResponse.Ok(data)); }
public async Task <IActionResult> Get() { var query = new GetAllSkillsQuery(); var skills = await _mediator.Send(query); return(Ok(skills)); }
public async Task <List <SkillDTO> > Handle(GetAllSkillsQuery request, CancellationToken cancellationToken) { return(await _skillRepository.GetAll()); //using (var sqlConnection = new SqlConnection(_connectionString)) //{ // sqlConnection.Open(); // var script = "SELECT Id, Description FROM Skills"; // var skills = await sqlConnection.QueryAsync<SkillViewModel>(script); // return skills.ToList(); //} }
public async Task <IActionResult> Get() { //if (_memoryCache.TryGetValue(GET_SKILLS_CACHE, out List<SkillViewModel> skills)) //{ // return Ok(skills); //} var query = new GetAllSkillsQuery(); var result = await _mediator.Send(query); //var memoryCacheOptions = new MemoryCacheEntryOptions //{ // AbsoluteExpirationRelativeToNow = TimeSpan.FromSeconds(3600), // SlidingExpiration = TimeSpan.FromSeconds(1200) //}; //_memoryCache.Set(GET_SKILLS_CACHE, result, memoryCacheOptions); return(Ok(result)); }