public void ExecutePost(PostProcessImageRequest request)
        {
            Base64DecodedData base64Decoded = _processImageDecoder.DecodeBase64ImageString(request.base64Image);
            ProcessImageData  imageData     = ImageDataFactory.CreateImageDataObject(request, base64Decoded);

            _processImageGateway.UploadImage(imageData);
        }
Ejemplo n.º 2
0
        public void test_that_gateway_throws_document_not_inserted_when_s3_call_throws_an_exception()
        {
            //arrange
            var request = new ProcessImageData()
            {
                imageData  = new Base64DecodedData(),
                imageId    = faker.Random.Word(),
                processRef = faker.Random.Guid().ToString()
            };

            mockS3Client.Setup(x => x.insertImage(It.IsAny <AWSCredentials>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Throws <AggregateException>();
            mockAssumeRoleHelper.Setup(x => x.GetTemporaryCredentials()).Returns(It.IsAny <Credentials>());
            //assert
            Assert.Throws <ImageNotInsertedToS3>(() => classUnderTest.UploadImage(request));
        }
 public void UploadImage(ProcessImageData request)
 {
     try
     {
         //insert image
         var result = s3Client.insertImage(assumeRoleHelper.GetTemporaryCredentials(), request.imageData.imagebase64String.ToString(), request.key,
                                           request.imageData.imageType);
         if (result.HttpStatusCode != HttpStatusCode.OK)
         {
             throw new ImageNotInsertedToS3();
         }
     }
     catch (Exception ex)
     {
         throw new ImageNotInsertedToS3(); //500
     }
 }
Ejemplo n.º 4
0
        public void test_that_gateway_throws_document_not_inserted_when_status_code_is_not_204()
        {
            //arrange
            var request = new ProcessImageData()
            {
                imageData  = new Base64DecodedData(),
                imageId    = faker.Random.Word(),
                processRef = faker.Random.Guid().ToString()
            };
            var expectedResponse = new PutObjectResponse();

            expectedResponse.HttpStatusCode = HttpStatusCode.Conflict;

            mockS3Client.Setup(x => x.insertImage(It.IsAny <AWSCredentials>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(expectedResponse);
            mockAssumeRoleHelper.Setup(x => x.GetTemporaryCredentials()).Returns(It.IsAny <Credentials>());
            //assert
            Assert.Throws <ImageNotInsertedToS3>(() => classUnderTest.UploadImage(request));
        }
Ejemplo n.º 5
0
        public void test_that_gateway_returns_does_not_throw_an_exception_when_successfully_inserting_an_image()
        {
            //arrange
            var request = new ProcessImageData()
            {
                imageData = new Base64DecodedData()
                {
                    imagebase64String = faker.Random.Word()
                }, imageId = faker.Random.Word(),
                processRef = faker.Random.Guid().ToString()
            };
            var expectedResponse = new PutObjectResponse();

            expectedResponse.HttpStatusCode = System.Net.HttpStatusCode.OK;
            mockS3Client.Setup(x => x.insertImage(It.IsAny <AWSCredentials>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(expectedResponse);
            mockAssumeRoleHelper.Setup(x => x.GetTemporaryCredentials()).Returns(It.IsAny <Credentials>());
            //act
            Assert.DoesNotThrow(() => classUnderTest.UploadImage(request));
        }
 public void SetUp()
 {
     //act
     _processImageData  = new ProcessImageData();
     _base64DecodedData = new Base64DecodedData();
 }