New test.
[mono.git] / mcs / class / Managed.Windows.Forms / Test / System.Resources / CultureTest.cs
1 //
2 // CultureTest.cs: Test cases for culture-invariant string convertions
3 //
4 // Authors:
5 //     Robert Jordan <robertj@gmx.net>
6 //
7
8 using System;
9 using System.Collections;
10 using System.Globalization;
11 using System.Drawing;
12 using System.IO;
13 using System.Resources;
14 using System.Threading;
15 using NUnit.Framework;
16
17 namespace MonoTests.System.Resources
18 {
19         [TestFixture]
20         public class CultureTest
21         {
22                 string fileName = Path.GetTempFileName ();
23
24                 [Test]
25                 public void Test ()
26                 {
27                         Thread.CurrentThread.CurrentCulture =
28                                 Thread.CurrentThread.CurrentUICulture = new CultureInfo ("de-DE");
29
30                         ResXResourceWriter w = new ResXResourceWriter (fileName);
31                         w.AddResource ("point", new Point (42, 43));
32                         w.Generate ();
33                         w.Close ();
34
35                         int count = 0;
36                         ResXResourceReader r = new ResXResourceReader (fileName);
37                         IDictionaryEnumerator e = r.GetEnumerator ();
38                         while (e.MoveNext ()) {
39                                 if ((string)e.Key == "point") {
40                                         Assert.AreEqual (typeof (Point), e.Value.GetType (), "#1");
41                                         Point p = (Point) e.Value;
42                                         Assert.AreEqual (42, p.X, "#2");
43                                         Assert.AreEqual (43, p.Y, "#3");
44                                         count++;
45                                 }
46                         }
47                         r.Close ();
48                         File.Delete (fileName);
49                         Assert.AreEqual (1, count, "#100");
50                 }
51         }
52 }