public void ProviderCollectionAddDuplicate() { SettingsProviderCollection c = new SettingsProviderCollection(); c.Add(new MyProvider()); c.Add(new MyProvider()); }
public void PropertyValuesInitialized() { SettingsPropertyCollection props = new SettingsPropertyCollection(); SettingsProviderCollection provs = new SettingsProviderCollection(); MyProvider p = new MyProvider(); MySettings s = new MySettings(); int i; try { i = s.Foo; Assert.Fail("#1-2"); } catch (SettingsPropertyNotFoundException) { } s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(0, s.PropertyValues.Count, "#2-1"); Assert.AreEqual(0, s.Context.Count, "#2-2"); props.Add(new SettingsProperty("Foo", typeof(int), p, false, 10, SettingsSerializeAs.String, null, true, true)); // initialize w/o the provider s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(0, s.PropertyValues.Count, "#3-0"); Assert.AreEqual(100, s.Foo, "#3-1"); // ... !!! Assert.AreEqual(1, s.PropertyValues.Count, "#3-2"); SettingsPropertyValue v = s.PropertyValues ["Foo"]; Assert.AreEqual(100, v.PropertyValue, "#3-3"); Assert.AreEqual(0, s.Context.Count, "#3-4"); // initialize w/ the provider provs.Add(p); provs.Add(new MyProvider2("Bar", 25)); props.Add(new SettingsProperty("Bar", typeof(int), provs ["MyProvider2"], false, 10, SettingsSerializeAs.String, null, true, true)); s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(1, s.PropertyValues.Count, "#4-1"); Assert.AreEqual(100, s.Foo, "#4-2"); Assert.AreEqual(25, s.Bar, "#4-3"); // ... !!! Assert.AreEqual(2, s.PropertyValues.Count, "#4-3-2"); Assert.AreEqual(0, s.Context.Count, "#4-4"); // wrong provider props.Remove("Bar"); props.Add(new SettingsProperty("Bar", typeof(int), provs ["MyProvider"], false, 10, SettingsSerializeAs.String, null, true, true)); s = new MySettings(); s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(0, s.PropertyValues.Count, "#5-1"); Assert.AreEqual(100, s.Foo, "#5-2"); Assert.AreEqual(10, s.Bar, "#5-3"); }
public void ExceptionalGetPropertyValues() { SettingsPropertyCollection props = new SettingsPropertyCollection(); SettingsProviderCollection provs = new SettingsProviderCollection(); MyProvider3 p = new MyProvider3(); MySettings s = new MySettings(); props.Add(new SettingsProperty("Foo", typeof(string), p, false, 10, SettingsSerializeAs.String, null, true, true)); provs.Add(p); s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(0, s.Context.Count, "#0"); try { Assert.AreEqual(100, s.Foo, "#1"); Assert.Fail("#2"); #if !TARGET_JVM } catch (Win32Exception) { #else } catch (CustomerException) { #endif } }
public void Initialize(string username, bool isAuthenticated) { _settingsContext = new SettingsContext(); _settingsContext.Add("UserName", username); _settingsContext.Add("IsAuthenticated", isAuthenticated); SettingsProviderCollection spc = new SettingsProviderCollection(); spc.Add(ProfileManager.Provider); base.Initialize(Context, ProfileBase.Properties, spc); }
public void AddPropertyNoProviderButInProviders() { SettingsPropertyCollection props = new SettingsPropertyCollection(); SettingsProviderCollection provs = new SettingsProviderCollection(); MyProvider p = new MyProvider(); MySettings s = new MySettings(); props.Add(new SettingsProperty("Foo", typeof(string), null, false, 10, SettingsSerializeAs.String, null, true, true)); provs.Add(p); s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(100, s.Foo); }
public void AddPropertyTypeMismatch() { SettingsPropertyCollection props = new SettingsPropertyCollection(); SettingsProviderCollection provs = new SettingsProviderCollection(); MyProvider p = new MyProvider(); MySettings s = new MySettings(); props.Add(new SettingsProperty("Foo", typeof(string), p, false, 10, SettingsSerializeAs.String, null, true, true)); provs.Add(p); s.Initialize(new SettingsContext(), props, provs); int i = s.Foo; // it still works as int, regardless of the settings property type... }
public void PropertyValuesInstance() { SettingsPropertyCollection props = new SettingsPropertyCollection(); SettingsProviderCollection provs = new SettingsProviderCollection(); MyProvider p = new MyProvider(); MySettings s = new MySettings(); props.Add(new SettingsProperty("Foo", typeof(string), p, false, 10, SettingsSerializeAs.String, null, true, true)); provs.Add(p); s.Initialize(new SettingsContext(), props, provs); Assert.AreEqual(s.PropertyValues, s.PropertyValues); }