1 // Tests for System.Drawing.SizeF.cs
3 // Author: Ravindra (rkumar@novell.com)
5 // Modified TestPoint.cs for testing SizeF.cs.
9 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
11 // Permission is hereby granted, free of charge, to any person obtaining
12 // a copy of this software and associated documentation files (the
13 // "Software"), to deal in the Software without restriction, including
14 // without limitation the rights to use, copy, modify, merge, publish,
15 // distribute, sublicense, and/or sell copies of the Software, and to
16 // permit persons to whom the Software is furnished to do so, subject to
17 // the following conditions:
19 // The above copyright notice and this permission notice shall be
20 // included in all copies or substantial portions of the Software.
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using NUnit
.Framework
;
36 namespace MonoTests
.System
.Drawing
39 public class SizeFTest
: Assertion
46 public void TearDown () {}
51 sz11_99
= new SizeF (1.1F
, 9.9F
);
52 sz11_0
= new SizeF (1.1F
, 0F
);
53 sz0_11
= new SizeF (0F
, 1.1F
);
57 public void TestConstructors ()
59 SizeF sz_wh
= new SizeF (1.5F
, 5.8F
);
60 AssertEquals ("C#1", 1.5F
, sz_wh
.Width
);
61 AssertEquals ("C#2", 5.8F
, sz_wh
.Height
);
63 SizeF sz_pf
= new SizeF (new PointF (1.5F
, 5.8F
));
64 AssertEquals ("C#3", 1.5F
, sz_pf
.Width
);
65 AssertEquals ("C#4", 5.8F
, sz_pf
.Height
);
67 SizeF sz_sz
= new SizeF (sz_wh
);
68 AssertEquals ("C#5", 1.5F
, sz_sz
.Width
);
69 AssertEquals ("C#6", 5.8F
, sz_sz
.Height
);
71 AssertEquals ("C#7", sz_wh
, sz_pf
);
72 AssertEquals ("C#8", sz_pf
, sz_sz
);
73 AssertEquals ("C#9", sz_wh
, sz_sz
);
77 public void TestEmptyField ()
79 SizeF sz
= new SizeF (0.0F
, 0.0F
);
80 AssertEquals ("EMP#1", sz
, SizeF
.Empty
);
84 public void TestProperties ()
86 SizeF sz
= new SizeF (0.0F
, 0.0F
);
88 Assert ("P#1", sz
.IsEmpty
);
89 Assert ("P#2", ! sz11_99
.IsEmpty
);
90 AssertEquals ("P#3", 1.1F
, sz11_0
.Width
);
91 AssertEquals ("P#4", 1.1F
, sz0_11
.Height
);
95 public void TestEquals ()
97 AssertEquals ("EQ#1", sz11_99
, sz11_99
);
98 AssertEquals ("EQ#2", sz11_99
, new SizeF (1.1F
, 9.9F
));
99 Assert ("EQ#3", ! sz11_99
.Equals (sz11_0
));
100 Assert ("EQ#4", ! sz11_99
.Equals (sz0_11
));
101 Assert ("EQ#5", ! sz11_0
.Equals (sz0_11
));
105 public void Test2PointF ()
107 PointF p1
= new PointF (1.1F
, 9.9F
);
108 PointF p2
= sz11_99
.ToPointF ();
110 AssertEquals ("2PF#1", p1
, p2
);
114 public void Test2Size ()
116 Size sz1
= new Size (1, 9);
117 Size sz2
= sz11_99
.ToSize ();
119 AssertEquals ("2SZ#1", sz1
, sz2
);
124 public void TestAddition ()
126 AssertEquals ("ADD#1", sz11_99
, sz11_0
+ new SizeF (0.0F
, 9.9F
));
127 AssertEquals ("ADD#2", sz11_99
, new SizeF (0.0F
, 0.0F
) + new SizeF (1.1F
, 9.9F
));
131 public void TestEqualityOp ()
133 Assert ("EOP#1", sz11_99
== sz11_99
);
134 Assert ("EOP#2", sz11_99
== new SizeF (1.1F
, 9.9F
));
135 Assert ("EOP#3", ! (sz11_99
== sz11_0
));
136 Assert ("EOP#4", ! (sz11_99
== sz0_11
));
137 Assert ("EOP#5", ! (sz11_0
== sz0_11
));
141 public void TestInequalityOp ()
143 Assert ("IOP#1", ! (sz11_99
!= sz11_99
));
144 Assert ("IOP#2", ! (sz11_99
!= new SizeF (1.1F
, 9.9F
)));
145 Assert ("IOP#3", sz11_99
!= sz11_0
);
146 Assert ("IOP#4", sz11_99
!= sz0_11
);
147 Assert ("IOP#5", sz11_0
!= sz0_11
);
151 public void TestSubtraction ()
153 AssertEquals ("SUB#1", sz11_0
, sz11_99
- new SizeF (0.0F
, 9.9F
));
154 AssertEquals ("SUB#2", sz0_11
, new SizeF (1.1F
, 1.1F
) - new SizeF (1.1F
, 0.0F
));
158 public void TestSizeF2PointF ()
160 PointF pf1
= new PointF (1.1F
, 9.9F
);
161 PointF pf2
= (PointF
) sz11_99
;
163 AssertEquals ("SF2PF#1", pf1
, pf2
);