Exemplo n.º 1
0
        public void Background_CreateBrushTest()
        {
            BackgroundStyle target = new BackgroundStyle();

            target.FillStyle = FillType.Solid;
            target.Color     = PDFColors.Red;
            PDFBrush expected = new PDFSolidBrush(PDFColors.Red);
            PDFBrush actual;

            actual = target.CreateBrush();
            Assert.AreEqual(expected.GetType(), actual.GetType());
            Assert.AreEqual(expected.FillStyle, actual.FillStyle);

            PDFSolidBrush solidexpected = (PDFSolidBrush)expected;
            PDFSolidBrush solidactual   = (PDFSolidBrush)actual;

            Assert.AreEqual(solidexpected.Color, solidactual.Color);
            Assert.AreEqual(solidexpected.Opacity, solidactual.Opacity);

            target                  = new BackgroundStyle();
            target.FillStyle        = FillType.Image;
            target.ImageSource      = "../images/animage.png";
            target.PatternRepeat    = PatternRepeat.RepeatBoth;
            target.PatternXPosition = 10;
            target.PatternXSize     = 100;
            target.PatternXStep     = 90;
            target.PatternYPosition = 20;
            target.PatternYSize     = 200;
            target.PatternYStep     = 180;


            expected = new PDFImageBrush("../images/animage.png");
            actual   = target.CreateBrush();
            Assert.AreEqual(expected.GetType(), actual.GetType());
            Assert.AreEqual(expected.FillStyle, actual.FillStyle);

            PDFImageBrush imgexpected = (PDFImageBrush)expected;
            PDFImageBrush imgactual   = (PDFImageBrush)actual;

            Assert.AreEqual(imgexpected.ImageSource, imgactual.ImageSource);
            Assert.AreEqual(imgexpected.Opacity, imgactual.Opacity);
            Assert.AreEqual(target.PatternXPosition, imgactual.XPostion);
            Assert.AreEqual(target.PatternXSize, imgactual.XSize);
            Assert.AreEqual(target.PatternXStep, imgactual.XStep);
            Assert.AreEqual(target.PatternYPosition, imgactual.YPostion);
            Assert.AreEqual(target.PatternYSize, imgactual.YSize);
            Assert.AreEqual(target.PatternYStep, imgactual.YStep);

            //check that the patterns are conformed to repeating

            target.PatternRepeat = PatternRepeat.RepeatX;
            imgactual            = (PDFImageBrush)target.CreateBrush();
            Assert.AreEqual(imgactual.YStep, Style.NoYRepeatStepSize);

            target.PatternRepeat = PatternRepeat.RepeatY;
            imgactual            = (PDFImageBrush)target.CreateBrush();
            Assert.AreEqual(imgactual.XStep, Style.NoXRepeatStepSize);

            target.PatternRepeat = PatternRepeat.None;
            imgactual            = (PDFImageBrush)target.CreateBrush();
            Assert.AreEqual(imgactual.YStep, Style.NoYRepeatStepSize);
            Assert.AreEqual(imgactual.XStep, Style.NoXRepeatStepSize);
        }