PaddingTests.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using NUnit.Framework;
  2. using QuestPDF.Drawing.SpacePlan;
  3. using QuestPDF.Elements;
  4. using QuestPDF.Infrastructure;
  5. using QuestPDF.UnitTests.TestEngine;
  6. namespace QuestPDF.UnitTests
  7. {
  8. [TestFixture]
  9. public class PaddingTests
  10. {
  11. private Padding GetPadding(TestPlan plan)
  12. {
  13. return new Padding()
  14. {
  15. Top = 10,
  16. Right = 20,
  17. Bottom = 30,
  18. Left = 40,
  19. Child = plan.CreateChild()
  20. };
  21. }
  22. [Test]
  23. public void Measure_General_EnoughSpace()
  24. {
  25. TestPlan
  26. .For(GetPadding)
  27. .MeasureElement(new Size(400, 300))
  28. .ExpectChildMeasure(new Size(340, 260), new FullRender(140, 60))
  29. .CheckMeasureResult(new FullRender(200, 100));
  30. }
  31. [Test]
  32. public void Measure_NotEnoughWidth()
  33. {
  34. TestPlan
  35. .For(GetPadding)
  36. .MeasureElement(new Size(50, 300))
  37. .CheckMeasureResult(new Wrap());
  38. }
  39. [Test]
  40. public void Measure_NotEnoughHeight()
  41. {
  42. TestPlan
  43. .For(GetPadding)
  44. .MeasureElement(new Size(20, 300))
  45. .CheckMeasureResult(new Wrap());
  46. }
  47. [Test]
  48. public void Measure_AcceptsPartialRender()
  49. {
  50. TestPlan
  51. .For(GetPadding)
  52. .MeasureElement(new Size(400, 300))
  53. .ExpectChildMeasure(new Size(340, 260), new PartialRender(40, 160))
  54. .CheckMeasureResult(new PartialRender(100, 200));
  55. }
  56. [Test]
  57. public void Measure_AcceptsWrap()
  58. {
  59. TestPlan
  60. .For(GetPadding)
  61. .MeasureElement(new Size(400, 300))
  62. .ExpectChildMeasure(new Size(340, 260), new Wrap())
  63. .CheckMeasureResult(new Wrap());
  64. }
  65. [Test]
  66. public void Draw_General()
  67. {
  68. TestPlan
  69. .For(GetPadding)
  70. .DrawElement(new Size(400, 300))
  71. .ExpectCanvasTranslate(new Position(40, 10))
  72. .ExpectChildDraw(new Size(340, 260))
  73. .ExpectCanvasTranslate(new Position(-40, -10))
  74. .CheckDrawResult();
  75. }
  76. }
  77. }