PaddingTest.cs 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. //
  2. // PaddingTest.cs
  3. //
  4. // Permission is hereby granted, free of charge, to any person obtaining
  5. // a copy of this software and associated documentation files (the
  6. // "Software"), to deal in the Software without restriction, including
  7. // without limitation the rights to use, copy, modify, merge, publish,
  8. // distribute, sublicense, and/or sell copies of the Software, and to
  9. // permit persons to whom the Software is furnished to do so, subject to
  10. // the following conditions:
  11. //
  12. // The above copyright notice and this permission notice shall be
  13. // included in all copies or substantial portions of the Software.
  14. //
  15. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  16. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  17. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  18. // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  19. // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  20. // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  21. // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  22. //
  23. // Copyright (c) 2006 Daniel Nauck
  24. //
  25. // Author:
  26. // Daniel Nauck (dna(at)mono-project(dot)de)
  27. #if NET_2_0
  28. using System;
  29. using System.Windows.Forms;
  30. using System.Drawing;
  31. using System.IO;
  32. using System.Runtime.Serialization.Formatters.Binary;
  33. using NUnit.Framework;
  34. namespace MonoTests.System.Windows.Forms
  35. {
  36. [TestFixture]
  37. public class PaddingTest
  38. {
  39. [Test]
  40. public void PaddingPropertiesTest()
  41. {
  42. Padding pad = new Padding();
  43. Assert.AreEqual(-1, pad.All, "#A1");
  44. Assert.AreEqual(0, pad.Top, "#A2");
  45. Assert.AreEqual(0, pad.Left, "#A3");
  46. Assert.AreEqual(0, pad.Right, "#A4");
  47. Assert.AreEqual(0, pad.Bottom, "#A5");
  48. Assert.AreEqual(0, pad.Horizontal, "#A6");
  49. Assert.AreEqual(0, pad.Vertical, "#A7");
  50. Assert.AreEqual("{Left=0,Top=0,Right=0,Bottom=0}", pad.ToString(), "#A8");
  51. Assert.AreEqual(new Size(0,0), pad.Size, "#A9");
  52. Padding pad2 = new Padding(5);
  53. Assert.AreEqual(5, pad2.All, "#B1");
  54. Assert.AreEqual(5, pad2.Top, "#B2");
  55. Assert.AreEqual(5, pad2.Left, "#B3");
  56. Assert.AreEqual(5, pad2.Right, "#B4");
  57. Assert.AreEqual(5, pad2.Bottom, "#B5");
  58. Assert.AreEqual(10, pad2.Horizontal, "#B6");
  59. Assert.AreEqual(10, pad2.Vertical, "#B7");
  60. Assert.AreEqual("{Left=5,Top=5,Right=5,Bottom=5}", pad2.ToString(), "#B8");
  61. Assert.AreEqual(new Size(10, 10), pad2.Size, "#B9");
  62. Padding pad3 = new Padding(5, 5, 10, 10);
  63. Assert.AreEqual(-1, pad3.All, "#C1");
  64. Assert.AreEqual(5, pad3.Top, "#C2");
  65. Assert.AreEqual(5, pad3.Left, "#C3");
  66. Assert.AreEqual(10, pad3.Right, "#C4");
  67. Assert.AreEqual(10, pad3.Bottom, "#C5");
  68. Assert.AreEqual(15, pad3.Horizontal, "#C6");
  69. Assert.AreEqual(15, pad3.Vertical, "#C7");
  70. Assert.AreEqual("{Left=5,Top=5,Right=10,Bottom=10}", pad3.ToString(), "#C8");
  71. Assert.AreEqual(new Size(15, 15), pad3.Size, "#C9");
  72. Padding pad4 = new Padding(10, 10, 10, 10);
  73. Assert.AreEqual(10, pad4.All, "#D1");
  74. Padding pad5 = Padding.Empty;
  75. Assert.AreEqual(0, pad5.All, "#E1");
  76. Assert.AreEqual(0, pad5.Top, "#E2");
  77. Assert.AreEqual(0, pad5.Left, "#E3");
  78. Assert.AreEqual(0, pad5.Right, "#E4");
  79. Assert.AreEqual(0, pad5.Bottom, "#E5");
  80. Assert.AreEqual(0, pad5.Horizontal, "#E6");
  81. Assert.AreEqual(0, pad5.Vertical, "#E7");
  82. Assert.AreEqual("{Left=0,Top=0,Right=0,Bottom=0}", pad5.ToString(), "#E8");
  83. Assert.AreEqual(new Size(0, 0), pad5.Size, "#E9");
  84. }
  85. [Test]
  86. public void PaddingOperatorTest()
  87. {
  88. Padding pad = new Padding(0);
  89. Assert.AreEqual(Padding.Empty, pad, "#A1");
  90. Padding pad1 = new Padding(2, 4, 6, 8);
  91. Padding pad2 = new Padding(5, 5, 10, 11);
  92. Padding pad3 = pad1 + pad2;
  93. Assert.AreEqual(-1, pad3.All, "#B1");
  94. Assert.AreEqual("{Left=7,Top=9,Right=16,Bottom=19}", pad3.ToString(), "#B2");
  95. pad3 = Padding.Add(pad1, pad2);
  96. Assert.AreEqual(-1, pad3.All, "#C1");
  97. Assert.AreEqual("{Left=7,Top=9,Right=16,Bottom=19}", pad3.ToString(), "#C2");
  98. Padding pad4 = pad3 - pad1;
  99. Assert.AreEqual(-1, pad4.All, "#D1");
  100. Assert.AreEqual("{Left=5,Top=5,Right=10,Bottom=11}", pad4.ToString(), "#D2");
  101. pad4 = Padding.Subtract(pad3, pad1);
  102. Assert.AreEqual(-1, pad4.All, "#E1");
  103. Assert.AreEqual("{Left=5,Top=5,Right=10,Bottom=11}", pad4.ToString(), "#E2");
  104. }
  105. }
  106. }
  107. #endif