public void CanCreateClassAdapterForModernGraphicRendererAndDrawLineWithColor() { var writer = new StringWriter(); var adapter = new MGRendererClassAdapter(writer); var startX = 1; var startY = 1; var endX = 10; var endY = 20; var testColor = Color.Coral; adapter.BeginDraw(); adapter.SetColor((uint)testColor.ToArgb()); adapter.MoveTo(startX, startY); adapter.LineTo(endX, endY); adapter.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={startX} fromY={startY} toX={endX} toY={endY}>"); testString.WriteLine($"<color r={testColor.R} g={testColor.G} b={testColor.B} a={testColor.A} />"); testString.WriteLine($"</line>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public void CanThrowExceptionIfCallLineToWithoutBeginDrawMethod() { var writer = new StringWriter(); var adapter = new MGRendererClassAdapter(writer); var x = 10; var y = 20; Assert.ThrowsException <LogicErrorException>(() => adapter.LineTo(x, y)); }
private void PaintPictureOnMGRendererClassAdapter() { var adapter = new MGRendererClassAdapter(Console.Out); var painter = new CanvasPainter(adapter); try { adapter.BeginDraw(); PaintPicture(painter); adapter.EndDraw(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public void CanCreateClassAdapterForModernGraphicRendererAndDrawLineFromStartPosition() { var writer = new StringWriter(); var adapter = new MGRendererClassAdapter(writer); var x = 10; var y = 20; adapter.BeginDraw(); adapter.LineTo(x, y); adapter.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={0} fromY={0} toX={x} toY={y}/>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public void CanCreateClassAdapterForModernGraphicRendererAndDrawLineFromStartPositionWithDefaultColor() { var writer = new StringWriter(); var adapter = new MGRendererClassAdapter(writer); var x = 10; var y = 20; adapter.BeginDraw(); adapter.LineTo(x, y); adapter.EndDraw(); var testColor = Color.Black; var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={0} fromY={0} toX={x} toY={y}>"); testString.WriteLine($"<color r={testColor.R} g={testColor.G} b={testColor.B} a={testColor.A} />"); testString.WriteLine($"</line>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }
public void CanCreateClassAdapterForModernGraphicRendererAndDrawLine() { var writer = new StringWriter(); var adapter = new MGRendererClassAdapter(writer); var startX = 1; var startY = 1; var endX = 10; var endY = 20; adapter.BeginDraw(); adapter.MoveTo(startX, startY); adapter.LineTo(endX, endY); adapter.EndDraw(); var testString = new StringWriter(); testString.WriteLine("<draw>"); testString.WriteLine($"<line fromX={startX} fromY={startY} toX={endX} toY={endY}/>"); testString.WriteLine("</draw>"); Assert.AreEqual(testString.ToString(), writer.ToString()); }