public void IgnoresCustomSettingsWithSourceFile()
        {
            var outputImage = new OutputImage
            {
                OutputFile = "Sample.png",
                Watermark  = new WatermarkConfiguration
                {
                    Colors     = new[] { "Foo", "Bar" },
                    FontFamily = "MakeBelieve",
                    Text       = "Hello World",
                    SourceFile = "FooBar.png",
                    Opacity    = 0.5
                }
            };

            var taskItem       = outputImage.ToTaskItem();
            var convertedImage = OutputImage.FromTaskItem(taskItem);

            Assert.NotNull(convertedImage.Watermark);
            Assert.Null(convertedImage.Watermark.Colors);
            Assert.Null(convertedImage.Watermark.Text);
            Assert.Null(convertedImage.Watermark.FontFamily);

            Assert.Equal(outputImage.Watermark.SourceFile, convertedImage.Watermark.SourceFile);
            Assert.Equal(outputImage.Watermark.Opacity, convertedImage.Watermark.Opacity);
        }
Ejemplo n.º 2
0
        internal override void ExecuteInternal(IBuildConfiguration config)
        {
            GeneratedImages = Array.Empty <ITaskItem>();
            var images = Images.Select(x => OutputImage.FromTaskItem(x));

            if (!images.Any())
            {
                return;
            }

            var generator = new ImageResizeGenerator(this)
            {
                OutputImages = images,
            };

            generator.Execute();
            GeneratedImages = generator.Outputs.Select(x => x.ToTaskItem()).ToArray();
        }
        public void ConvertedImageUsesDefaultValues()
        {
            var outputImage = new OutputImage
            {
                OutputFile = "Sample.png",
                Watermark  = new WatermarkConfiguration
                {
                    Text = "Hello World",
                }
            };

            var taskItem       = outputImage.ToTaskItem();
            var convertedImage = OutputImage.FromTaskItem(taskItem);

            Assert.NotNull(convertedImage.Watermark);
            Assert.Equal(outputImage.Watermark.Text, convertedImage.Watermark.Text);

            Assert.Equal("White", convertedImage.Watermark.TextColor);
            Assert.Equal(new[] { "Red", "OrangeRed" }, convertedImage.Watermark.Colors);
            Assert.Equal("Arial", convertedImage.Watermark.FontFamily);
            Assert.Equal(WatermarkPosition.BottomRight, convertedImage.Watermark.Position);
            Assert.Equal(Constants.DefaultOpacity, convertedImage.Watermark.Opacity);
        }