ChangeLog: Updated ChangeLog.
[mono.git] / mcs / class / System.Drawing / Test / System.Drawing / TestIcon.cs
1 //
2 // Icon class testing unit
3 //
4 // Author:
5 //
6 //       Sanjay Gupta <gsanjay@novell.com>
7 //
8 // (C) 2004 Novell, Inc.  http://www.novell.com
9 //
10 using System;
11 using System.Drawing;
12 using NUnit.Framework;
13 using System.IO;
14
15 namespace MonoTests.System.Drawing{
16
17         [TestFixture]   
18         public class TestIcon {
19                 
20                 Icon icon;
21                 Icon newIcon;
22                 FileStream fs;
23                 FileStream fs1;
24                 
25                 [SetUp]
26                 public void SetUp ()            
27                 {
28                         String path = TestBitmap.getInFile ("bitmaps/smiley.ico");
29                         icon = new Icon (path);                 
30                         fs1 = new FileStream (path, FileMode.Open);
31                 }
32
33                 [Test]
34                 public void TestConstructors ()
35                 {
36                         newIcon = new Icon (fs1, 48, 48);
37                         Assert.AreEqual (48, newIcon.Height, "C#1a");                   
38                         Assert.AreEqual (48, newIcon.Width, "C#1b");
39
40                         newIcon = new Icon (icon, 16, 16);
41                         Assert.AreEqual (16, newIcon.Height, "C#2a");                   
42                         Assert.AreEqual (16, newIcon.Width, "C#2b");
43                 }                               
44
45                 [Test]
46                 public void TestProperties ()
47                 {
48                         Assert.AreEqual (32, icon.Height, "P#1");
49                         Assert.AreEqual (32, icon.Width, "P#2");
50                         Assert.AreEqual (32, icon.Size.Width, "P#3");
51                         Assert.AreEqual (32, icon.Size.Height, "P#4");
52
53                 }
54
55                 [Test]
56                 public void TestMethods ()
57                 {
58                         newIcon = (Icon) icon.Clone ();
59                         Assert.AreEqual (32, newIcon.Height, "M#1a");
60                         Assert.AreEqual (32, newIcon.Width, "M#1b");
61                         
62                         Bitmap bmp = icon.ToBitmap();
63                         Assert.AreEqual (32, bmp.Height, "M#2a");
64                         Assert.AreEqual (32, bmp.Width, "M#2b");
65                         
66                         fs = new FileStream ("newIcon.ico", FileMode.Create);
67                         icon.Save (fs);
68                         
69                         Assert.AreEqual (fs1.Length, fs.Length, "M#3");                 
70                 }
71
72                 [TearDown]
73                 public void TearDown () 
74                 {
75                         if (fs != null)
76                                 fs.Close();
77                         if (fs1 != null)
78                                 fs1.Close();
79                         if (File.Exists ("newIcon.ico"))
80                                 File.Delete("newIcon.ico");
81                 }
82         }
83 }