public async Task ObterPorId_DeveRetornarAmbienteQuandoForEncontradoNoBanco() { var ambiente = AmbienteFactory.GerarAmbiente(); await _context.Ambientes.AddAsync(ambiente); await _context.SaveChangesAsync(); var query = new ObterAmbientePorIdQuery(ambiente.Id); var queryHandler = new AmbienteQueryHandler(_ambienteRepository); var ambienteBanco = await queryHandler.Handle(query, CancellationToken.None); ambienteBanco.Should().BeEquivalentTo(ambiente); }
public async Task HandlerObterTodos_DeveRetornarTodosOsAmbientesSalvosNoBanco() { var ambiente1 = AmbienteFactory.GerarAmbiente(); var ambiente2 = AmbienteFactory.GerarAmbiente(); await _context.Ambientes.AddRangeAsync(ambiente1, ambiente2); await _context.SaveChangesAsync(); var query = new ObterTodosOsAmbientesQuery(1, 20); var queryHandler = new AmbienteQueryHandler(_ambienteRepository); var ambientes = await queryHandler.Handle(query, CancellationToken.None); ambientes.Should().HaveCount(2); }
public async Task HandlerObterTodos_DeveRetornarTodosOsLogsSalvosNoBanco() { var usuario = UsuarioFactory.GerarUsuario(); var ambiente = AmbienteFactory.GerarAmbiente(); var nivel = NivelFactory.GerarNivel(); var log1 = new Log(usuario.Id, ambiente.Id, nivel.Id, "título", "descrição", "0.0.0.0"); var log2 = new Log(usuario.Id, ambiente.Id, nivel.Id, "título", "descrição", "0.0.0.0"); await _context.AddRangeAsync(usuario, ambiente, nivel, log1, log2); await _context.SaveChangesAsync(); var query = new ObterTodosOsLogsQuery(1, 20, Guid.Empty, null, null, null); var queryHandler = new LogQueryHandler(_logRepository); var logs = await queryHandler.Handle(query, CancellationToken.None); logs.Should().HaveCount(2); }
public async Task HandlerAdicionar_DeveAdicionarLogComUsuarioAmbienteNivelTituloDescricaoEOrigem() { var usuario = UsuarioFactory.GerarUsuario(); var ambiente = AmbienteFactory.GerarAmbiente(); var nivel = NivelFactory.GerarNivel(); var titulo = "título"; var descricao = "descrição"; var origem = "0.0.0.0"; await _context.AddRangeAsync(usuario, ambiente, nivel); await _context.SaveChangesAsync(); _mediatorMock .Setup(mediator => mediator.Send(It.IsAny <ObterUsuarioPorIdQuery>(), CancellationToken.None)) .Returns(async() => await Task.Run(() => usuario)); _mediatorMock .Setup(mediator => mediator.Send(It.IsAny <ObterAmbientePorIdQuery>(), CancellationToken.None)) .Returns(async() => await Task.Run(() => ambiente)); _mediatorMock .Setup(mediator => mediator.Send(It.IsAny <ObterNivelPorIdQuery>(), CancellationToken.None)) .Returns(async() => await Task.Run(() => nivel)); var command = new AdicionarNovoLogCommand(usuario.Id, ambiente.Id, nivel.Id, titulo, descricao, origem); var commandHandler = new LogCommandHandler(_mediatorMock.Object, _logRepository); await commandHandler.Handle(command, CancellationToken.None); (await _context.Logs.CountAsync()).Should().Be(1); var log = await _context.Logs.FirstOrDefaultAsync(); log.Usuario.Should().BeEquivalentTo(usuario); log.Ambiente.Should().BeEquivalentTo(ambiente); log.Nivel.Should().BeEquivalentTo(nivel); log.UsuarioId.Should().Be(usuario.Id); log.AmbienteId.Should().Be(ambiente.Id); log.NivelId.Should().Be(nivel.Id); log.Titulo.Should().Be(titulo); log.Descricao.Should().Be(descricao); log.Origem.Should().Be(origem); }
public async Task HandlerAdicionar_DeveLancarNotificacaoQuandoNivelNaoExistir() { var usuario = UsuarioFactory.GerarUsuario(); var ambiente = AmbienteFactory.GerarAmbiente(); _mediatorMock .Setup(mediator => mediator.Send(It.IsAny <ObterUsuarioPorIdQuery>(), CancellationToken.None)) .Returns(async() => await Task.Run(() => usuario)); _mediatorMock .Setup(mediator => mediator.Send(It.IsAny <ObterAmbientePorIdQuery>(), CancellationToken.None)) .Returns(async() => await Task.Run(() => ambiente)); var command = new AdicionarNovoLogCommand(usuario.Id, ambiente.Id, Guid.NewGuid(), "título", "descrição", "0.0.0.0"); var commandHandler = new LogCommandHandler(_mediatorMock.Object, _logRepository); await commandHandler.Handle(command, CancellationToken.None); _mediatorMock.Verify(mediator => mediator.Publish(It.IsAny <DomainNotification>(), CancellationToken.None)); }