public async Task Atualizar_Produto_Com_Imagem_Grande_Com_Erro_Por_Propriedades_Invalidas()
        {
            // Arrange
            FornecedorViewModel fornecedorVM = FornecedorViewModelTestsHelper.ObterInstancia(2, "40405549000180");

            (ProdutoImagemViewModel produtoVM, Stream imageStream) = ProdutoViewModelTestsHelper.ObterInstanciaParaImagemGrande(fornecedorVM, $"{base.Factory.Env.WebRootPath}/img");

            await AdicionarObjsParaTestes(fornecedorVM, ProdutoViewModelTestsHelper.ObterInstanciaPorTransformacao(produtoVM));

            produtoVM.Nome      = string.Empty;
            produtoVM.Valor     = 999.43M;
            produtoVM.Descricao = string.Empty;

            HttpContent dataRequest = CriarFormDataRequest(produtoVM, imageStream);

            // Act
            HttpResponseMessage response = await base.Client.PutAsync($"{CommonUri}/atualizar-produto-imagem/{produtoVM.Id}", dataRequest);

            // Assert
            var result = await ContentHelper.ExtractObject <ResponseViewModel>(response.Content);

            Assert.False(response.IsSuccessStatusCode);
            Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode);
            Assert.NotEmpty(result.Errors);

            // Clean up
            await DeletarImagemProduto(produtoVM.Id);

            await imageStream.DisposeAsync();

            dataRequest.Dispose();
        }
        public async Task Atualizar_Produto_Com_Imagem_Grande_Com_Sucesso()
        {
            // Arrange
            FornecedorViewModel fornecedorVM = FornecedorViewModelTestsHelper.ObterInstancia(2, "40405549000180");

            (ProdutoImagemViewModel produtoVM, Stream imageStream) = ProdutoViewModelTestsHelper.ObterInstanciaParaImagemGrande(fornecedorVM, $"{base.Factory.Env.WebRootPath}/img");

            await AdicionarObjsParaTestes(fornecedorVM, ProdutoViewModelTestsHelper.ObterInstanciaPorTransformacao(produtoVM));

            produtoVM.Nome      = "Produto de teste com atualização para imagem grande";
            produtoVM.Valor     = 999.43M;
            produtoVM.Descricao = "É o produto teste não um lorem para imagem grande!";
            produtoVM.Ativo     = false;

            HttpContent dataRequest = CriarFormDataRequest(produtoVM, imageStream);

            // Act
            HttpResponseMessage response = await base.Client.PutAsync($"{CommonUri}/atualizar-produto-imagem/{produtoVM.Id}", dataRequest);

            // Assert
            Assert.True(response.IsSuccessStatusCode);
            Assert.Equal(HttpStatusCode.OK, response.StatusCode);

            // Clean up
            await DeletarImagemProduto(produtoVM.Id);

            await imageStream.DisposeAsync();

            dataRequest.Dispose();
        }