public void Border_CreatePenTest() { BorderStyle target = new BorderStyle(); //No values PDFPen expected = null; PDFPen actual = target.CreatePen(); Assert.IsNull(actual); //Zero width target.Width = PDFUnit.Empty; actual = target.CreatePen(); Assert.IsNull(actual); //Solid pen expected = new PDFSolidPen(PDFColors.Purple, 10); target.Color = PDFColors.Purple; target.Width = 10; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); //Mitres target.Mitre = 20; expected.MitreLimit = 20; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); //Line Caps target.LineCap = LineCaps.Projecting; expected.LineCaps = LineCaps.Projecting; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); //Line Join target.LineJoin = LineJoin.Bevel; expected.LineJoin = LineJoin.Bevel; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); // Opacity target.Opacity = 0.4; expected.Opacity = 0.4; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); // Dash PDFDash dash = new PDFDash(new int[] { 4, 5, 6 }, 10); expected = new PDFDashPen(dash); ((PDFSolidPen)expected).Color = PDFColors.Lime; expected.Width = 8; target = new BorderStyle(); target.Dash = dash; target.Width = 8; target.Color = PDFColors.Lime; actual = target.CreatePen(); AssertPensAreEqual(expected, actual); }