public async Task CreateApplicationHandler_IsSuccessful_ReturnsApplication()
        {
            //Setup
            var repository = new Mock <IApplicationRepository>();

            repository.Setup(o => o.Create(It.IsAny <Application>())).ReturnsAsync(new Application
            {
                ApplicationId   = Guid.Empty,
                ApplicationName = "Test"
            });
            var config = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile <MappingProfile>();
            });
            var mapper = config.CreateMapper();

            var handler = new CreateApplicationHandler(repository.Object, mapper);

            //Act
            var response = await handler.Handle(new CreateApplicationCommand(new CreateApplicationDto {
                ApplicationName = "Test"
            }), default);

            //Assert
            Assert.NotNull(response);
            Assert.True(response.ApplicationName.Equals("Test"));
        }
示例#2
0
        public void ValidateOk()
        {
            var command = new CreateApplicationCommand(applicationDescription: "Descrição aplicação",
                                                       applicationName: "Aplicação");

            var handle = new CreateApplicationHandler(_repository);

            var result = (CommandResult)handle.Handle(command);

            Assert.AreEqual(true, result.Ok);
        }
示例#3
0
        public void ValidateFail()
        {
            var command = new CreateApplicationCommand(applicationDescription: "",
                                                       applicationName: "");

            var handle = new CreateApplicationHandler(_repository);

            var result = (CommandResult)handle.Handle(command);

            Assert.AreEqual(false, result.Ok);
        }
示例#4
0
 public CommandResult CreateApplication([FromServices] CreateApplicationHandler handler
                                        , [FromBody] CreateApplicationCommand command)
 {
     return((CommandResult)handler.Handle(command));
 }