2 // System.ComponentModel.ComponentResourceManager test cases
5 // Gert Driesen (drieseng@users.sourceforge.net)
7 // (c) 2007 Gert Driesen
11 using System.Collections;
12 using System.ComponentModel;
13 using System.Globalization;
14 using System.Reflection;
15 using System.Resources;
17 using NUnit.Framework;
19 namespace MonoTests.System.ComponentModel
22 public class ComponentResourceManagerTest
25 public void Constructor0 ()
27 MockComponentResourceManager crm = new MockComponentResourceManager ();
28 Assert.IsNull (crm.BaseName, "#1");
29 Assert.IsNull (crm.BaseNameField, "#2");
30 Assert.IsFalse (crm.IgnoreCase, "#3");
31 Assert.IsNull (crm.MainAssembly, "#4");
32 Assert.IsNull (crm.ResourceSets, "#5");
33 Assert.IsNotNull (crm.ResourceSetType, "#6");
34 Assert.IsTrue (typeof (ResourceSet).IsAssignableFrom (crm.ResourceSetType), "#7");
35 //Assert.IsFalse (typeof (ResourceSet) == crm.ResourceSetType, "#7");
39 public void Constructor1 ()
41 MockComponentResourceManager crm = new MockComponentResourceManager (
43 Assert.IsNotNull (crm.BaseName, "#1");
44 Assert.AreEqual ("Component", crm.BaseName, "#2");
45 Assert.IsNotNull (crm.BaseNameField, "#3");
46 Assert.AreEqual ("Component", crm.BaseNameField, "#4");
47 Assert.IsFalse (crm.IgnoreCase, "#5");
48 Assert.IsNotNull (crm.MainAssembly, "#6");
49 Assert.AreEqual (typeof (Component).Assembly, crm.MainAssembly, "#7");
50 Assert.IsNotNull (crm.ResourceSets, "#8");
51 Assert.AreEqual (0, crm.ResourceSets.Count, "#9");
52 Assert.IsNotNull (crm.ResourceSetType, "#10");
53 Assert.IsTrue (typeof (ResourceSet).IsAssignableFrom (crm.ResourceSetType), "#11");
54 //Assert.IsFalse (typeof (ResourceSet) == crm.ResourceSetType, "#12");
58 public void Constructor1_ResourceSource_Null ()
61 new ComponentResourceManager ((Type) null);
63 } catch (ArgumentNullException ex) {
64 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#2");
65 Assert.IsNull (ex.InnerException, "#3");
66 Assert.IsNotNull (ex.Message, "#4");
67 Assert.IsNotNull (ex.ParamName, "#5");
68 Assert.AreEqual ("resourceSource", ex.ParamName, "#6");
73 public void ApplyResources_ObjectName_Null ()
75 ComponentResourceManager crm = new ComponentResourceManager ();
77 crm.ApplyResources (new object (), (string) null);
79 } catch (ArgumentNullException ex) {
80 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#A2");
81 Assert.IsNull (ex.InnerException, "#A3");
82 Assert.IsNotNull (ex.Message, "#A4");
83 Assert.IsNotNull (ex.ParamName, "#A5");
84 Assert.AreEqual ("objectName", ex.ParamName, "#A6");
88 crm.ApplyResources (new object (), (string) null, CultureInfo.InvariantCulture);
90 } catch (ArgumentNullException ex) {
91 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#B2");
92 Assert.IsNull (ex.InnerException, "#B3");
93 Assert.IsNotNull (ex.Message, "#B4");
94 Assert.IsNotNull (ex.ParamName, "#B5");
95 Assert.AreEqual ("objectName", ex.ParamName, "#B6");
100 public void ApplyResources_Value_Null ()
102 ComponentResourceManager crm = new ComponentResourceManager ();
104 crm.ApplyResources (null, "$this");
106 } catch (ArgumentNullException ex) {
107 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#A2");
108 Assert.IsNull (ex.InnerException, "#A3");
109 Assert.IsNotNull (ex.Message, "#A4");
110 Assert.IsNotNull (ex.ParamName, "#A5");
111 Assert.AreEqual ("value", ex.ParamName, "#A6");
115 crm.ApplyResources (null, "$this", CultureInfo.InvariantCulture);
117 } catch (ArgumentNullException ex) {
118 Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#B2");
119 Assert.IsNull (ex.InnerException, "#B3");
120 Assert.IsNotNull (ex.Message, "#B4");
121 Assert.IsNotNull (ex.ParamName, "#B5");
122 Assert.AreEqual ("value", ex.ParamName, "#B6");
127 public void IgnoreCase ()
129 ComponentResourceManager crm = new ComponentResourceManager ();
130 Assert.IsFalse (crm.IgnoreCase, "#1");
131 crm.IgnoreCase = true;
132 Assert.IsTrue (crm.IgnoreCase, "#2");
135 class MockComponentResourceManager : ComponentResourceManager
137 public MockComponentResourceManager ()
141 public MockComponentResourceManager (Type resourceSource)
142 : base (resourceSource)
146 public new string BaseNameField {
147 get { return base.BaseNameField; }
150 public new Assembly MainAssembly {
151 get { return base.MainAssembly; }
154 public new Hashtable ResourceSets {
155 get { return base.ResourceSets; }