ShrinkTests.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. using NUnit.Framework;
  2. using QuestPDF.Drawing;
  3. using QuestPDF.Elements;
  4. using QuestPDF.Infrastructure;
  5. using QuestPDF.UnitTests.TestEngine;
  6. namespace QuestPDF.UnitTests
  7. {
  8. [TestFixture]
  9. public class ShrinkTests
  10. {
  11. [Test]
  12. public void Measure() => SimpleContainerTests.Measure<Shrink>();
  13. [Test]
  14. public void Draw_Wrap()
  15. {
  16. TestPlan
  17. .For(x => new Shrink
  18. {
  19. Child = x.CreateChild(),
  20. ShrinkVertical = true,
  21. ShrinkHorizontal = true
  22. })
  23. .DrawElement(new Size(400, 300))
  24. .ExpectChildMeasure(expectedInput: new Size(400, 300), returns: SpacePlan.Wrap())
  25. .CheckDrawResult();
  26. }
  27. [Test]
  28. public void Measure_PartialRender()
  29. {
  30. TestPlan
  31. .For(x => new Shrink
  32. {
  33. Child = x.CreateChild(),
  34. ShrinkVertical = true,
  35. ShrinkHorizontal = true
  36. })
  37. .MeasureElement(new Size(400, 300))
  38. .ExpectChildMeasure(expectedInput: new Size(400, 300), returns: SpacePlan.PartialRender(200, 100))
  39. .ExpectChildDraw(new Size(200, 100))
  40. .CheckDrawResult();
  41. }
  42. [Test]
  43. public void Measure_FullRender()
  44. {
  45. TestPlan
  46. .For(x => new Shrink
  47. {
  48. Child = x.CreateChild(),
  49. ShrinkVertical = true,
  50. ShrinkHorizontal = true
  51. })
  52. .MeasureElement(new Size(500, 400))
  53. .ExpectChildMeasure(expectedInput: new Size(500, 400), returns: SpacePlan.FullRender(300, 200))
  54. .ExpectChildDraw(new Size(300, 200))
  55. .CheckDrawResult();
  56. }
  57. }
  58. }