예제 #1
0
        public void ShouldGenerateAnError()
        {
            "Give I have an incomplete request".Context(() =>
            {
                _blitline = new BlitlineApi();
                _request  = new BlitlineRequest("blah", "https://s3-eu-west-1.amazonaws.com/gdoubleu-blitline/moi.jpg");

                var cropFunction = new CropFunction
                {
                    X      = 51,
                    Y      = 126,
                    Width  = 457 - 126,
                    Height = 382 - 51,
                    Save   = new Save
                    {
                        ImageIdentifier = "image_identifier"
                    }
                };

                _request.AddFunction(cropFunction);
            });

            "When I process the request".Do(() => _response = _blitline.ProcessImages(_request));

            "Then the response should fail".Observation(() => Assert.True(_response.Failed));
            "And the response should contain an error".Observation(() => Assert.NotEmpty(_response.Results.Error));
        }
예제 #2
0
        public void CanChangeImageFileExtension()
        {
            "Given I have a request which specifies a different file extension".Context(() =>
            {
                _request = BuildA.Request(r => r
                                          .WithApplicationId("a5KqkemeX2RttyYdkOrdug")
                                          .WithSourceImageUri(
                                              new Uri("https://s3-eu-west-1.amazonaws.com/gdoubleu-test-photos/moi.jpg"))
                                          .Crop(f => f.WithDimensions(51, 126, 457 - 126, 382 - 51)
                                                .SaveAs(
                                                    s =>
                                                    s.WithImageIdentifier("file_extension")
                                                    .WithExtension(Extension.PNG))));
            });

            "When I process the request".Do(() => _response = _request.Send());

            "Then the processed image should contain the new extension".Observation(() => Assert.Contains(".png", _response.Results.Images.First().S3Url));
        }
예제 #3
0
        public void CanFixS3Urls()
        {
            BlitlineResponse            _response           = default(BlitlineResponse);
            BlitlineRequest             _request            = default(BlitlineRequest);
            Dictionary <string, string> _imageKeyBucketList = default(Dictionary <string, string>);

            "Given I have a blitline response with incorrect s3 urls".Context(() =>
            {
                _response = new BlitlineResponse
                {
                    Results = new Results
                    {
                        Images = new List <Image>
                        {
                            new Image
                            {
                                ImageIdentifier = "image",
                                S3Url           =
                                    "http://s3.amazonaws.com/gdoubleu-test-photos/annotate-default.png"
                            }
                        }
                    }
                };
                _request = new BlitlineRequest
                {
                    FixS3ImageUrl = true,
                };

                _imageKeyBucketList = new Dictionary <string, string>
                {
                    { "annotate-default.png", "gdoubleu-test-photos" }
                };
            });

            "When I fix the urls".Do(() => _response.FixS3Urls(_imageKeyBucketList));

            "Then the url is correct".Observation(() => Assert.Equal("http://gdoubleu-test-photos.s3.amazonaws.com/annotate-default.png", _response.Results.Images[0].S3Url));
        }