2 // CompatTest.cs: Compatibility unit tests for ResXResourceReader.
5 // Robert Jordan <robertj@gmx.net>
9 using System.Collections;
12 using System.Resources;
13 using NUnit.Framework;
15 namespace MonoTests.System.Resources
18 public class CompatTest
22 public static void TestReader (string fileName)
24 ResXResourceReader r = new ResXResourceReader (fileName);
25 Hashtable h = new Hashtable();
26 foreach (DictionaryEntry e in r) {
27 h.Add (e.Key, e.Value);
31 Assert.AreEqual ("hola", (string) h["String"], fileName + "#1");
32 Assert.AreEqual ("hello", (string) h["String2"], fileName + "#2");
33 Assert.AreEqual (42, (int) h["Int"], fileName + "#3");
34 Assert.AreEqual (PlatformID.Win32NT, (PlatformID) h["Enum"], fileName + "#4");
35 Assert.AreEqual (43, ((Point) h["Convertible"]).X, fileName + "#5");
36 Assert.AreEqual (2, (byte) ((ArrayList) h["Serializable"])[1], fileName + "#6");
37 Assert.AreEqual (13, ((byte[]) h["ByteArray"])[1], fileName + "#7");
38 Assert.AreEqual (16, ((byte[]) h["ByteArray2"])[1], fileName + "#8");
39 Assert.AreEqual (1013, ((int[]) h["IntArray"])[1], fileName + "#9");
40 Assert.AreEqual ("world", ((string[]) h["StringArray"])[1], fileName + "#10");
45 public void TestReader ()
47 Helper.TestReader ("Test/System.Resources/compat_1_1.resx");
48 Helper.TestReader ("Test/System.Resources/compat_2_0.resx");