public async Task Upload_Uses_RepositoryUpload_With_File()
            {
                var pdfFile = new PdfFileDto
                {
                    FileContent = "JVBERgo=",
                    FileName    = "my.pdf"
                };

                var decoded = Convert.FromBase64String(pdfFile.FileContent);

                var mock           = new Mock <IDecodeValidateService>();
                var repositoryMock = new Mock <IPdfFileRepository>();

                mock.Setup(f => f.DecodeValidate(pdfFile.FileContent)).Returns(new Domain.Entities.DecodeValidateResponse {
                    IsValidPdf = true, Decoded = decoded
                });

                var response = await CreateSut(pdfFileRepository : repositoryMock.Object, decodeValidateService : mock.Object).Upload(pdfFile);

                (response.Result as ObjectResult).StatusCode.ShouldBe(StatusCodes.Status201Created);

                mock.Verify(m => m.DecodeValidate(pdfFile.FileContent), Times.Once());

                repositoryMock.Verify(m => m.UploadPdfFile(pdfFile.FileName,
                                                           decoded), Times.Once());
            }
Ejemplo n.º 2
0
            public void Transform_Returns_The_Instance_Of_PdfFileDto_Returned_By_PdfFileTransformer()
            {
                var pdfFileTransformer = Mock.Of <ITransformer <PdfFile, PdfFileDto> >();
                var pdfFileDto         = new PdfFileDto();

                Mock.Get(pdfFileTransformer)
                .Setup(q => q.Transform(It.IsAny <PdfFile>()))
                .Returns(pdfFileDto);

                var result = CreateSut(pdfFileTransformer).Transform(new PdfFile());

                result.ShouldBeSameAs(pdfFileDto);
            }
Ejemplo n.º 3
0
        public async Task <ActionResult <object> > Upload([FromBody] PdfFileDto pdfFile)
        {
            //TODO validation service
            try
            {
                var response = _decodeValidateService.DecodeValidate(pdfFile.FileContent);
                if (response.IsValidPdf)
                {
                    await _pdfFileRepository.UploadPdfFile(pdfFile.FileName, response.Decoded);
                }

                return((response.IsValidPdf) ? StatusCode(StatusCodes.Status201Created, ""):
                       StatusCode(StatusCodes.Status400BadRequest, response.ValidationError));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
            }
        }
            public void Transform_Returns_The_Instance_Of_GameDto_With_Player_Returned_By_PlayerTransformer()
            {
                var source   = new FileList();
                var pdfFiles = new List <PdfFile>();
                var pdfFile  = new PdfFile();

                pdfFiles.Add(pdfFile);
                source.PdfFiles = pdfFiles;

                var pdfFileTransformer = Mock.Of <ITransformer <PdfFile, PdfFileDto> >();
                var pdfFileDto         = new PdfFileDto();

                Mock.Get(pdfFileTransformer)
                .Setup(q => q.Transform(It.IsAny <PdfFile>()))
                .Returns(pdfFileDto);

                var result = CreateSut(pdfFileTransformer).Transform(source);

                result.PdfFiles.FirstOrDefault <PdfFileDto>().ShouldBeSameAs(pdfFileDto);
            }
Ejemplo n.º 5
0
            public async Task GetFile_Returns_Ok_With_File()
            {
                var location        = Guid.NewGuid();
                var pdfFile         = new PdfFile();
                var pdfFileDto      = new PdfFileDto();
                var repositoryMock  = new Mock <IPdfFileRepository>();
                var transformerMock = new Mock <IPdfFileTransformerService>();

                repositoryMock.Setup(m => m.GetPdfFile(It.IsAny <Guid>())).ReturnsAsync(pdfFile);
                transformerMock.Setup(m => m.Transform(pdfFile)).Returns(pdfFileDto);

                var response = await CreateSut(pdfFileRepository : repositoryMock.Object, pdfFileTransformerService : transformerMock.Object).GetFile(location);

                repositoryMock.Verify(m => m.GetPdfFile(location), Times.Once);
                transformerMock.Verify(m => m.Transform(pdfFile), Times.Once);

                response.Result.ShouldBeOfType(typeof(OkObjectResult));
                var okObjectResult = response.Result as OkObjectResult;

                okObjectResult.Value.ShouldBeSameAs(pdfFileDto);
            }