2 // System.ComponentModel.ComponentResourceManager test cases
5 // Gert Driesen (drieseng@users.sourceforge.net)
7 // (c) 2007 Gert Driesen
13 using System.Collections;
14 using System.ComponentModel;
15 using System.Globalization;
16 using System.Reflection;
17 using System.Resources;
19 using NUnit.Framework;
21 namespace MonoTests.System.ComponentModel
24 public class ComponentResourceManagerTest
27 public void Constructor0 ()
29 MockComponentResourceManager crm = new MockComponentResourceManager ();
30 Assert.IsNull (crm.BaseName, "#1");
31 Assert.IsNull (crm.BaseNameField, "#2");
32 Assert.IsFalse (crm.IgnoreCase, "#3");
33 Assert.IsNull (crm.MainAssembly, "#4");
34 Assert.IsNull (crm.ResourceSets, "#5");
35 Assert.IsNotNull (crm.ResourceSetType, "#6");
36 Assert.IsTrue (typeof (ResourceSet).IsAssignableFrom (crm.ResourceSetType), "#7");
37 //Assert.IsFalse (typeof (ResourceSet) == crm.ResourceSetType, "#7");
41 public void Constructor1 ()
43 MockComponentResourceManager crm = new MockComponentResourceManager (
45 Assert.IsNotNull (crm.BaseName, "#1");
46 Assert.AreEqual ("Component", crm.BaseName, "#2");
47 Assert.IsNotNull (crm.BaseNameField, "#3");
48 Assert.AreEqual ("Component", crm.BaseNameField, "#4");
49 Assert.IsFalse (crm.IgnoreCase, "#5");
50 Assert.IsNotNull (crm.MainAssembly, "#6");
51 Assert.AreEqual (typeof (Component).Assembly, crm.MainAssembly, "#7");
52 Assert.IsNotNull (crm.ResourceSets, "#8");
53 Assert.AreEqual (0, crm.ResourceSets.Count, "#9");
54 Assert.IsNotNull (crm.ResourceSetType, "#10");
55 Assert.IsTrue (typeof (ResourceSet).IsAssignableFrom (crm.ResourceSetType), "#11");
56 //Assert.IsFalse (typeof (ResourceSet) == crm.ResourceSetType, "#12");
60 public void Constructor1_ResourceSource_Null ()
63 new ComponentResourceManager ((Type) null);
65 } catch (ArgumentNullException ex) {
66 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#2");
67 Assert.IsNull (ex.InnerException, "#3");
68 Assert.IsNotNull (ex.Message, "#4");
69 Assert.IsNotNull (ex.ParamName, "#5");
70 Assert.AreEqual ("resourceSource", ex.ParamName, "#6");
75 public void ApplyResources_ObjectName_Null ()
77 ComponentResourceManager crm = new ComponentResourceManager ();
79 crm.ApplyResources (new object (), (string) null);
81 } catch (ArgumentNullException ex) {
82 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#A2");
83 Assert.IsNull (ex.InnerException, "#A3");
84 Assert.IsNotNull (ex.Message, "#A4");
85 Assert.IsNotNull (ex.ParamName, "#A5");
86 Assert.AreEqual ("objectName", ex.ParamName, "#A6");
90 crm.ApplyResources (new object (), (string) null, CultureInfo.InvariantCulture);
92 } catch (ArgumentNullException ex) {
93 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#B2");
94 Assert.IsNull (ex.InnerException, "#B3");
95 Assert.IsNotNull (ex.Message, "#B4");
96 Assert.IsNotNull (ex.ParamName, "#B5");
97 Assert.AreEqual ("objectName", ex.ParamName, "#B6");
102 public void ApplyResources_Value_Null ()
104 ComponentResourceManager crm = new ComponentResourceManager ();
106 crm.ApplyResources (null, "$this");
108 } catch (ArgumentNullException ex) {
109 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#A2");
110 Assert.IsNull (ex.InnerException, "#A3");
111 Assert.IsNotNull (ex.Message, "#A4");
112 Assert.IsNotNull (ex.ParamName, "#A5");
113 Assert.AreEqual ("value", ex.ParamName, "#A6");
117 crm.ApplyResources (null, "$this", CultureInfo.InvariantCulture);
119 } catch (ArgumentNullException ex) {
120 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#B2");
121 Assert.IsNull (ex.InnerException, "#B3");
122 Assert.IsNotNull (ex.Message, "#B4");
123 Assert.IsNotNull (ex.ParamName, "#B5");
124 Assert.AreEqual ("value", ex.ParamName, "#B6");
129 public void IgnoreCase ()
131 ComponentResourceManager crm = new ComponentResourceManager ();
132 Assert.IsFalse (crm.IgnoreCase, "#1");
133 crm.IgnoreCase = true;
134 Assert.IsTrue (crm.IgnoreCase, "#2");
137 class MockComponentResourceManager : ComponentResourceManager
139 public MockComponentResourceManager ()
143 public MockComponentResourceManager (Type resourceSource)
144 : base (resourceSource)
148 public new string BaseNameField {
149 get { return base.BaseNameField; }
152 public new Assembly MainAssembly {
153 get { return base.MainAssembly; }
156 public new Hashtable ResourceSets {
157 get { return base.ResourceSets; }