public void PerfilHabilidades_AdicionarHabilidadeUsuario_DeveAdicionarUmaHabilidadeDeUsuarioAoPerfil() { //Arrange PerfilHabilidades perfil = _fixtureWrapper.PerfilHabilidades.CriarPerfilHabilidadeValido(); HabilidadeUsuario habilidade = _fixtureWrapper.HabilidadeUsuario.CriarHabilidadeUsuarioValido(); //Act perfil.AdicionarHabilidadeUsuario(habilidade); //Assert perfil.HabilidadesUsuario.Should().HaveCount(1); }
public void PerfilServices_AvaliarPerfil_DeveAdicionarAvaliacaoNasHabilidadesDoUsuario() { //Arrange IPerfilServices perfilServices = _perfilService; PerfilHabilidades perfil = _fixtureWrapper.PerfilHabilidades.CriarPerfilHabilidadeValido(); for (int i = 0; i < 5; i++) { perfil.AdicionarHabilidadeUsuario(_fixtureWrapper.HabilidadeUsuario.CriarHabilidadeUsuarioValido()); } IDictionary <Guid, double> habilidadesAvaliadas = new Dictionary <Guid, double>(); Faker faker = new Faker("pt_BR"); for (int i = 0; i < 5; i++) { habilidadesAvaliadas.Add(perfil.HabilidadesUsuario.ElementAt(i).Id, faker.Random.Double(0, 10)); } _fixtureWrapper.Mocker.GetMock <IPerfilHabilidadesRepository>() .Setup(x => x.ObterPorIdComHabilidades(perfil.Id)) .ReturnsAsync(perfil); //Act perfilServices.AvaliarPerfil(perfil.Id, habilidadesAvaliadas); //Assert perfil.HabilidadesUsuario.SelectMany(h => h.Avaliacoes).Should().HaveCount(habilidadesAvaliadas.Count); _fixtureWrapper.Mocker.GetMock <IHabilidadeUsuarioRepository>() .Verify(x => x.AdicionarAvaliacaoHabilidade(It.IsAny <AvaliacaoHabilidade>()), Times.Exactly(habilidadesAvaliadas.Count)); _fixtureWrapper.Mocker.GetMock <IHabilidadeUsuarioRepository>() .Verify(x => x.AtualizarHabilidadesUsuario(It.IsAny <IEnumerable <HabilidadeUsuario> >()), Times.Once); _fixtureWrapper.Mocker.GetMock <IPerfilHabilidadesRepository>() .Verify(x => x.AtualizarPerfilHabilidades(perfil), Times.Once); _fixtureWrapper.Mocker.GetMock <IHabilidadeUsuarioRepository>() .Verify(x => x.Commit(), Times.Once); _fixtureWrapper.Mocker.GetMock <IPerfilHabilidadesRepository>() .Verify(x => x.Commit(), Times.Once); }