Beispiel #1
0
        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
            }
        }
Beispiel #4
0
        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);
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        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...
        }
Beispiel #7
0
        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);
        }