Esempio n. 1
0
        public void SetOnSetCompleteExcept()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.onValidateExist = true;
            myDictionary.onSetExist      = true;
            myDictionary.onSetCompleteMustThrowException = true;

            try {
                myDictionary.BaseDictionary[10] = 50;
                Assert.Fail("#A1");
            } catch (AssertionException) {
                throw;
            } catch (Exception ex) {
                Assert.AreEqual(typeof(Exception), ex.GetType(), "#A2");
                Assert.IsNull(ex.InnerException, "#A3");
                Assert.IsNotNull(ex.Message, "#A4");
            }

            Assert.IsFalse(myDictionary.onInsertFired, "#B1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#B2");
            Assert.IsTrue(myDictionary.onValidateFired, "#B3");
            Assert.IsFalse(myDictionary.onRemoveFired, "#B4");
            Assert.IsFalse(myDictionary.onRemoveCompleteFired, "#B5");
            Assert.IsFalse(myDictionary.onClearFired, "#B6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#B7");
            Assert.IsTrue(myDictionary.onSetFired, "#B8");
            Assert.IsTrue(myDictionary.onSetCompleteFired, "#B9");
            Assert.IsFalse(myDictionary.onGetFired, "#B10");
            myDictionary.onGetExist = true;
            Assert.AreEqual(20, myDictionary.BaseDictionary [10], "#B11");
        }
        public void ClearOnClearExcept()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(30);

            myDictionary.onClearMustThrowException = true;

            try
            {
                myDictionary.Clear();
                Assert.Fail("#A1");
            }
            catch (AssertionException)
            {
                throw;
            }
            catch (Exception ex)
            {
                Assert.AreEqual(typeof(Exception), ex.GetType(), "#A2");
                Assert.IsNull(ex.InnerException, "#A3");
                Assert.IsNotNull(ex.Message, "#A4");
            }

            Assert.IsTrue(myDictionary.onClearFired, "#B1");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#B2");
            Assert.AreEqual(30, myDictionary.Count, "#B3");
        }
        public void AddOnInsertCompleteExcept()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(5);

            myDictionary.onInsertCompleteMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary.Add(888, 999);
                Assert.Fail("#A1");
            }
            catch (AssertionException)
            {
                throw;
            }
            catch (Exception ex)
            {
                Assert.AreEqual(typeof(Exception), ex.GetType(), "#A2");
                Assert.IsNull(ex.InnerException, "#A3");
                Assert.IsNotNull(ex.Message, "#A4");
            }

            Assert.IsTrue(myDictionary.onValidateFired, "#B1");
            Assert.IsTrue(myDictionary.onInsertFired, "#B2");
            Assert.IsTrue(myDictionary.onInsertCompleteFired, "#B3");
            Assert.AreEqual(5, myDictionary.Count, "#B4");
        }
Esempio n. 4
0
        public void RemoveOnRemoveCompleteExcept()
        {
            bool exceptionThrown = false;

            ConcreteDictionary myDictionary = new ConcreteDictionary(28);

            myDictionary.onRemoveCompleteMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary.Remove(11);
            }
            catch
            {
                exceptionThrown = true;
            }
            finally
            {
                Assert("Exception must be thrown", exceptionThrown);
                Assert("OnValidate must be fired", myDictionary.onValidateFired);
                Assert("OnRemove must be fired", myDictionary.onRemoveFired);
                Assert("OnRemoveComplete must be fired", myDictionary.onRemoveCompleteFired);
#if NOT_MSCLR
                AssertEquals("Count", 27, myDictionary.Count);
                AssertEquals(null, myDictionary.BaseDictionary[11]);
#endif
            }
        }
Esempio n. 5
0
        public void SetOnSetCompleteExcept()
        {
            bool exceptionThrown = false;

            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.onSetCompleteMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary[10] = 50;
            }
            catch
            {
                exceptionThrown = true;
            }
            finally
            {
                Assert("Exception must be thrown", exceptionThrown);
                Assert("OnValidate must be fired", myDictionary.onValidateFired);
                Assert("OnSet must be fired", myDictionary.onSetFired);
                Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
                AssertEquals(20, myDictionary.BaseDictionary[10]);
            }
        }
Esempio n. 6
0
        public void RemoveOnValidateExcept()
        {
            bool exceptionThrown = false;

            ConcreteDictionary myDictionary = new ConcreteDictionary(28);

            myDictionary.onValidateMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary.Remove(11);
            }
            catch
            {
                exceptionThrown = true;
            }
            finally
            {
                Assert("Exception must be thrown in this test", exceptionThrown);
                Assert("OnValidate must be fired", myDictionary.onValidateFired);
                Assert("OnRemove must not be fired", !myDictionary.onRemoveFired);
                Assert("OnRemoveComplete must not be fired", !myDictionary.onRemoveCompleteFired);
                AssertEquals("Count", 28, myDictionary.Count);
                AssertEquals(22, myDictionary.BaseDictionary[11]);
            }
        }
Esempio n. 7
0
        public void AddOnInsertCompleteExcept()
        {
            bool exceptionThrown = false;

            ConcreteDictionary myDictionary = new ConcreteDictionary(5);

            myDictionary.onInsertCompleteMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary.Add(888, 999);
            }
            catch
            {
                exceptionThrown = true;
            }
            finally
            {
                Assert("Exception must be thrown", exceptionThrown);
                Assert("OnValidate must be fired", myDictionary.onValidateFired);
                Assert("OnInsert must be fired", myDictionary.onInsertFired);
                Assert("OnInsertComplete must be fired", myDictionary.onInsertCompleteFired);
                AssertEquals("Count", 5, myDictionary.Count);
            }
        }
Esempio n. 8
0
        public void Get()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);
            int v = (int)myDictionary.BaseDictionary[10];

            Assert("OnGet must be fired", myDictionary.onGetFired);
            AssertEquals(v, 20);
        }
Esempio n. 9
0
        public void Items()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(19);

            for (int i = 0; i < 19; i++)
            {
                AssertEquals(i * 2, (int)myDictionary.BaseDictionary[i]);
            }
        }
Esempio n. 10
0
        public void ShouldHandleConcreteClassInheritingFromDictionary()
        {
            var dictionary = new ConcreteDictionary()
            {
                { "Name", "Bob" }
            };
            var result = UpcastDictionary.Create(dictionary);

            Assert.AreEqual(dictionary["Name"], result["Name"]);
        }
Esempio n. 11
0
        public void Clear()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(30);

            myDictionary.Clear();

            Assert.IsTrue(myDictionary.onClearFired, "#1");
            Assert.IsTrue(myDictionary.onClearCompleteFired, "#2");
            Assert.AreEqual(0, myDictionary.Count, "#3");
        }
Esempio n. 12
0
        public void Clear()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(30);

            myDictionary.Clear();

            Assert("OnClear must be fired", myDictionary.onClearFired);
            Assert("OnClearComplete must be fired", myDictionary.onClearCompleteFired);
            AssertEquals("Count", 0, myDictionary.Count);
        }
Esempio n. 13
0
        public void Items()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(19);

            myDictionary.onGetExist = true;

            for (int i = 0; i < 19; i++)
            {
                Assert.AreEqual(i * 2, (int)myDictionary.BaseDictionary [i]);
            }
        }
Esempio n. 14
0
        public void Set()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.BaseDictionary[10] = 50;

            Assert("OnValidate must be fired", myDictionary.onValidateFired);
            Assert("OnSet must be fired", myDictionary.onSetFired);
            Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
            AssertEquals(50, myDictionary.BaseDictionary[10]);
        }
Esempio n. 15
0
        public void RemoveKeyNotInDictionary()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(28);

            myDictionary.BaseDictionary.Remove(80);
#if NOT_MSCLR
            Assert("OnValidate must be fired", myDictionary.onValidateFired);
            Assert("OnRemove must be fired", myDictionary.onRemoveFired);
            Assert("OnRemoveComplete must be fired", myDictionary.onRemoveCompleteFired);
#endif
        }
Esempio n. 16
0
        public void Add()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(10);

            myDictionary.BaseDictionary.Add(100, 1);

            Assert("OnValidate must be fired", myDictionary.onValidateFired);
            Assert("OnInsert must be fired", myDictionary.onInsertFired);
            Assert("OnInsertComplete must be fired", myDictionary.onInsertCompleteFired);
            AssertEquals("Count", 11, myDictionary.Count);
            AssertEquals(1, myDictionary.BaseDictionary[100]);
        }
Esempio n. 17
0
        public void Remove()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(8);

            myDictionary.BaseDictionary.Remove(5);

            Assert("OnValidate must be fired", myDictionary.onValidateFired);
            Assert("OnRemove must be fired", myDictionary.onRemoveFired);
            Assert("OnRemoveComplete must be fired", myDictionary.onRemoveCompleteFired);
            AssertEquals("Count", 7, myDictionary.Count);
            AssertEquals(null, myDictionary.BaseDictionary[5]);
        }
Esempio n. 18
0
        public void Contains()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(14);

            for (int i = 0; i < 14; i++)
            {
                Assert.IsTrue(myDictionary.BaseDictionary.Contains(i), "Must contain " + i);
            }
            for (int i = 14; i < 34; i++)
            {
                Assert.IsFalse(myDictionary.BaseDictionary.Contains(i), "Must not contain " + i);
            }
        }
Esempio n. 19
0
        public void Contains()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(14);

            for (int i = 0; i < 14; i++)
            {
                Assert("Must contain " + i, myDictionary.BaseDictionary.Contains(i));
            }
            for (int i = 14; i < 34; i++)
            {
                Assert("Must not contain " + i, !myDictionary.BaseDictionary.Contains(i));
            }
        }
Esempio n. 20
0
        public void Keys()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(5);
            ICollection        keys         = myDictionary.BaseDictionary.Keys;

            int total = 0;

            foreach (int i in keys)
            {
                total += i;
            }
            Assert.AreEqual(10, total, "#1");
            Assert.AreEqual(5, keys.Count, "#2");
        }
Esempio n. 21
0
        public void SetNewKey()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.BaseDictionary[111] = 222;

            Assert("OnValidate must be fired", myDictionary.onValidateFired);
            Assert("OnSet must be fired", myDictionary.onSetFired);
            Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
            Assert("OnInsert must not be fired", !myDictionary.onInsertFired);
            Assert("OnInsertComplete must not be fired", !myDictionary.onInsertCompleteFired);
            AssertEquals(222, myDictionary.BaseDictionary[111]);
            AssertEquals(19, myDictionary.Count);
        }
Esempio n. 22
0
        public void Values()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(5);
            ICollection        values       = myDictionary.BaseDictionary.Values;

            int total = 0;

            foreach (int i in values)
            {
                total += i;
            }
            Assert.AreEqual(20, total, "#1");
            Assert.AreEqual(5, values.Count, "#2");
        }
Esempio n. 23
0
        public void RemoveKeyNotInDictionary()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(28);

            myDictionary.BaseDictionary.Remove(80);

            Assert.IsFalse(myDictionary.onInsertFired, "#B1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#B2");
            Assert.IsFalse(myDictionary.onValidateFired, "#1");
            Assert.IsFalse(myDictionary.onRemoveFired, "#2");
            Assert.IsFalse(myDictionary.onRemoveCompleteFired, "#3");
            Assert.IsFalse(myDictionary.onClearFired, "#B6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#B7");
            Assert.IsFalse(myDictionary.onSetFired, "#B8");
            Assert.IsFalse(myDictionary.onSetCompleteFired, "#B9");
            Assert.IsFalse(myDictionary.onGetFired, "#B10");
        }
Esempio n. 24
0
        public void AddNullKey()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary();

            try {
                myDictionary.BaseDictionary.Add(null, 11);
                Assert.Fail("#A1");
            } catch (ArgumentNullException ex) {
                Assert.AreEqual(typeof(ArgumentNullException), ex.GetType(), "#A2");
                Assert.IsNull(ex.InnerException, "#A3");
                Assert.IsNotNull(ex.Message, "#A4");
                Assert.AreEqual("key", ex.ParamName, "#A5");
            }

            Assert.IsTrue(myDictionary.onValidateFired, "#B1");
            Assert.IsTrue(myDictionary.onInsertFired, "#B2");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#B3");
        }
Esempio n. 25
0
        public void Get()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.onGetExist = true;
            int v = (int)myDictionary.BaseDictionary[10];

            Assert.IsFalse(myDictionary.onInsertFired, "#1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#2");
            Assert.IsFalse(myDictionary.onValidateFired, "#3");
            Assert.IsFalse(myDictionary.onRemoveFired, "#4");
            Assert.IsFalse(myDictionary.onRemoveCompleteFired, "#5");
            Assert.IsFalse(myDictionary.onClearFired, "#6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#7");
            Assert.IsFalse(myDictionary.onSetFired, "#8");
            Assert.IsFalse(myDictionary.onSetCompleteFired, "#9");
            Assert.IsTrue(myDictionary.onGetFired, "#10");
            Assert.AreEqual(20, v, "#11");
        }
        public void RemoveOnRemoveCompleteExcept()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(28);

            myDictionary.onValidateExist = true;
            myDictionary.onRemoveExist   = true;
            myDictionary.onRemoveCompleteMustThrowException = true;

            try
            {
                myDictionary.BaseDictionary.Remove(11);
                Assert.Fail("#A1");
            }
            catch (AssertionException)
            {
                throw;
            }
            catch (Exception ex)
            {
                Assert.AreEqual(typeof(Exception), ex.GetType(), "#A2");
                Assert.IsNull(ex.InnerException, "#A3");
                Assert.IsNotNull(ex.Message, "#A4");
            }

            Assert.IsFalse(myDictionary.onInsertFired, "#B1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#B2");
            Assert.IsTrue(myDictionary.onValidateFired, "#B3");
            Assert.IsTrue(myDictionary.onRemoveFired, "#B4");
            Assert.IsTrue(myDictionary.onRemoveCompleteFired, "#B5");
            Assert.IsFalse(myDictionary.onClearFired, "#B6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#B7");
            Assert.IsFalse(myDictionary.onSetFired, "#B8");
            Assert.IsFalse(myDictionary.onSetCompleteFired, "#B9");
            Assert.IsFalse(myDictionary.onGetFired, "#B10");
#if NET_2_0
            myDictionary.onGetExist = true;
            Assert.AreEqual(28, myDictionary.Count, "#B11");
            Assert.AreEqual(22, myDictionary.BaseDictionary [11], "#B12");
#else
            Assert.AreEqual(27, myDictionary.Count, "#B11");
            Assert.IsNull(myDictionary.BaseDictionary [11], "#B12");
#endif
        }
Esempio n. 27
0
        public void SetNewKey()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.BaseDictionary[111] = 222;

            Assert.IsFalse(myDictionary.onInsertFired, "#1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#2");
            Assert.IsTrue(myDictionary.onValidateFired, "#3");
            Assert.IsFalse(myDictionary.onRemoveFired, "#4");
            Assert.IsFalse(myDictionary.onRemoveCompleteFired, "#5");
            Assert.IsFalse(myDictionary.onClearFired, "#6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#7");
            Assert.IsTrue(myDictionary.onSetFired, "#8");
            Assert.IsTrue(myDictionary.onSetCompleteFired, "#9");
            Assert.IsFalse(myDictionary.onGetFired, "#10");
            myDictionary.onGetExist = true;
            Assert.AreEqual(222, myDictionary.BaseDictionary [111], "#11");
            Assert.AreEqual(19, myDictionary.Count, "#12");
        }
Esempio n. 28
0
        public void Add()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(10);

            myDictionary.BaseDictionary.Add(100, 1);

            Assert.IsTrue(myDictionary.onInsertFired, "#1");
            Assert.IsTrue(myDictionary.onInsertCompleteFired, "#2");
            Assert.IsTrue(myDictionary.onValidateFired, "#3");
            Assert.IsFalse(myDictionary.onRemoveFired, "#4");
            Assert.IsFalse(myDictionary.onRemoveCompleteFired, "#5");
            Assert.IsFalse(myDictionary.onClearFired, "#6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#7");
            Assert.IsFalse(myDictionary.onSetFired, "#8");
            Assert.IsFalse(myDictionary.onSetCompleteFired, "#9");
            Assert.IsFalse(myDictionary.onGetFired, "#10");
            Assert.AreEqual(11, myDictionary.Count, "#11");
            myDictionary.onGetExist = true;
            Assert.AreEqual(1, myDictionary.BaseDictionary [100], "#12");
        }
Esempio n. 29
0
        public void Remove()
        {
            ConcreteDictionary myDictionary = new ConcreteDictionary(8);

            myDictionary.onValidateExist = true;
            myDictionary.onRemoveExist   = true;
            myDictionary.BaseDictionary.Remove(5);

            Assert.IsFalse(myDictionary.onInsertFired, "#1");
            Assert.IsFalse(myDictionary.onInsertCompleteFired, "#2");
            Assert.IsTrue(myDictionary.onValidateFired, "#3");
            Assert.IsTrue(myDictionary.onRemoveFired, "#4");
            Assert.IsTrue(myDictionary.onRemoveCompleteFired, "#5");
            Assert.IsFalse(myDictionary.onClearFired, "#6");
            Assert.IsFalse(myDictionary.onClearCompleteFired, "#7");
            Assert.IsFalse(myDictionary.onSetFired, "#8");
            Assert.IsFalse(myDictionary.onSetCompleteFired, "#9");
            Assert.IsFalse(myDictionary.onGetFired, "#10");
            Assert.AreEqual(7, myDictionary.Count, "#11");
            Assert.IsNull(myDictionary.BaseDictionary [5], "#12");
        }
Esempio n. 30
0
        public void GetOnGetExcept()
        {
            bool exceptionThrown = false;

            ConcreteDictionary myDictionary = new ConcreteDictionary(18);

            myDictionary.onGetMustThrowException = true;

            try
            {
                int v = (int)myDictionary.BaseDictionary[10];
            }
            catch
            {
                exceptionThrown = true;
            }
            finally
            {
                Assert("Exception must be thrown", exceptionThrown);
                Assert("OnGet must be fired", myDictionary.onGetFired);
            }
        }
Esempio n. 31
0
		public void IsFixedSize() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (1);
			Assert.IsFalse (myDictionary.BaseDictionary.IsFixedSize);
		}
Esempio n. 32
0
		public void SetOnSetCompleteExcept() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (18);
			myDictionary.onValidateExist = true;
			myDictionary.onSetExist = true;
			myDictionary.onSetCompleteMustThrowException = true;
			
			try {
				myDictionary.BaseDictionary[10] = 50;
				Assert.Fail ("#A1");
			} catch (AssertionException) {
				throw;
			} catch (Exception ex) {
				Assert.AreEqual (typeof (Exception), ex.GetType (), "#A2");
				Assert.IsNull (ex.InnerException, "#A3");
				Assert.IsNotNull (ex.Message, "#A4");
			}

			Assert.IsFalse (myDictionary.onInsertFired, "#B1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#B2");
			Assert.IsTrue (myDictionary.onValidateFired, "#B3");
			Assert.IsFalse (myDictionary.onRemoveFired, "#B4");
			Assert.IsFalse (myDictionary.onRemoveCompleteFired, "#B5");
			Assert.IsFalse (myDictionary.onClearFired, "#B6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#B7");
			Assert.IsTrue (myDictionary.onSetFired, "#B8");
			Assert.IsTrue (myDictionary.onSetCompleteFired, "#B9");
			Assert.IsFalse (myDictionary.onGetFired, "#B10");
			myDictionary.onGetExist = true;
			Assert.AreEqual (20, myDictionary.BaseDictionary [10], "#B11");
		}
		public void GetOnGetExcept() 
		{
			bool exceptionThrown = false;

			ConcreteDictionary myDictionary = new ConcreteDictionary(18);
			myDictionary.onGetMustThrowException = true;

			try {
				int v = (int) myDictionary.BaseDictionary[10];
			} catch {
				exceptionThrown = true;
			} finally {
				Assert("Exception must be thrown", exceptionThrown);
				Assert("OnGet must be fired", myDictionary.onGetFired);
			}
		}
Esempio n. 34
0
		public void GetEnumerator ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (4);
			Assert.IsNotNull (myDictionary.GetEnumerator ());
		}
Esempio n. 35
0
		public void Items ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (19);
			myDictionary.onGetExist = true;

			for (int i = 0; i < 19; i++)
				Assert.AreEqual (i * 2, (int) myDictionary.BaseDictionary [i]);
		}
Esempio n. 36
0
		public void Remove ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(8);
			myDictionary.onValidateExist = true;
			myDictionary.onRemoveExist = true;
			myDictionary.BaseDictionary.Remove (5);

			Assert.IsFalse (myDictionary.onInsertFired, "#1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#2");
			Assert.IsTrue (myDictionary.onValidateFired, "#3");
			Assert.IsTrue (myDictionary.onRemoveFired, "#4");
			Assert.IsTrue (myDictionary.onRemoveCompleteFired, "#5");
			Assert.IsFalse (myDictionary.onClearFired, "#6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#7");
			Assert.IsFalse (myDictionary.onSetFired, "#8");
			Assert.IsFalse (myDictionary.onSetCompleteFired, "#9");
			Assert.IsFalse (myDictionary.onGetFired, "#10");
			Assert.AreEqual (7, myDictionary.Count, "#11");
			Assert.IsNull (myDictionary.BaseDictionary [5], "#12");
		}
Esempio n. 37
0
		public void ClearOnClearExcept ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (30);
			myDictionary.onClearMustThrowException = true;

			try {
				myDictionary.Clear ();
				Assert.Fail ("#A1");
			} catch (AssertionException) {
				throw;
			} catch (Exception ex) {
				Assert.AreEqual (typeof (Exception), ex.GetType (), "#A2");
				Assert.IsNull (ex.InnerException, "#A3");
				Assert.IsNotNull (ex.Message, "#A4");
			}

			Assert.IsTrue (myDictionary.onClearFired, "#B1");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#B2");
			Assert.AreEqual (30, myDictionary.Count, "#B3");
		}
		public void RemoveKeyNotInDictionary() 
		{
		
			ConcreteDictionary myDictionary = new ConcreteDictionary(28);

			myDictionary.BaseDictionary.Remove(80);
			Assert("OnValidate must be fired", myDictionary.onValidateFired);
			Assert("OnRemove must be fired", myDictionary.onRemoveFired);
			Assert("OnRemoveComplete must be fired", myDictionary.onRemoveCompleteFired);
                }
		public void Items() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(19);
			for (int i = 0; i < 19; i++) 
			{
				AssertEquals(i*2, (int) myDictionary.BaseDictionary[i]);
			}
		}
		public void Contains() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(14);
			for (int i = 0; i < 14; i++) 
			{
				Assert("Must contain " + i, myDictionary.BaseDictionary.Contains(i));
			}
			for (int i = 14; i < 34; i++) 
			{
				Assert("Must not contain " + i, !myDictionary.BaseDictionary.Contains(i));
			}
		}
		public void Get() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(18);
			int v = (int) myDictionary.BaseDictionary[10];

			Assert("OnGet must be fired", myDictionary.onGetFired);
			AssertEquals(v, 20);
		}
		public void SetNewKey() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(18);
			myDictionary.BaseDictionary[111] = 222;

			Assert("OnValidate must be fired", myDictionary.onValidateFired);
			Assert("OnSet must be fired", myDictionary.onSetFired);
			Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
			Assert("OnInsert must not be fired", !myDictionary.onInsertFired);
			Assert("OnInsertComplete must not be fired", !myDictionary.onInsertCompleteFired);
			AssertEquals(222, myDictionary.BaseDictionary[111]);
			AssertEquals(19, myDictionary.Count);
		}
Esempio n. 43
0
		public void Clear ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (30);
			myDictionary.Clear();

			Assert.IsTrue (myDictionary.onClearFired, "#1");
			Assert.IsTrue (myDictionary.onClearCompleteFired, "#2");
			Assert.AreEqual (0, myDictionary.Count, "#3");
		}
		public void RemoveOnRemoveCompleteExcept() 
		{
			bool exceptionThrown = false;

			ConcreteDictionary myDictionary = new ConcreteDictionary(28);
			myDictionary.onRemoveCompleteMustThrowException = true;

			try 
			{
				myDictionary.BaseDictionary.Remove(11);
			} 
			catch 
			{
				exceptionThrown = true;
			} 
			finally 
			{
				Assert("Exception must be thrown", exceptionThrown);
				Assert("OnValidate must be fired", myDictionary.onValidateFired);
				Assert("OnRemove must be fired", myDictionary.onRemoveFired);
				Assert("OnRemoveComplete must be fired", myDictionary.onRemoveCompleteFired);
				AssertEquals("Count", 27, myDictionary.Count);
				AssertEquals(null, myDictionary.BaseDictionary[11]);
			}

		}
Esempio n. 45
0
		public void Count ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (19);
			Assert.AreEqual (19, myDictionary.Count);
		}
		public void SetOnSetCompleteExcept() 
		{
			bool exceptionThrown = false;

			ConcreteDictionary myDictionary = new ConcreteDictionary(18);
			myDictionary.onSetCompleteMustThrowException = true;
			
			try {
				myDictionary.BaseDictionary[10] = 50;
			} catch {
				exceptionThrown = true;
			} finally {
				Assert("Exception must be thrown", exceptionThrown);
				Assert("OnValidate must be fired", myDictionary.onValidateFired);
				Assert("OnSet must be fired", myDictionary.onSetFired);
				Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
				AssertEquals(20, myDictionary.BaseDictionary[10]);
			}
		}
Esempio n. 47
0
		public void RemoveKeyNotInDictionary ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (28);
			myDictionary.BaseDictionary.Remove (80);

			Assert.IsFalse (myDictionary.onInsertFired, "#B1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#B2");
			Assert.IsFalse (myDictionary.onValidateFired, "#1");
			Assert.IsFalse (myDictionary.onRemoveFired, "#2");
			Assert.IsFalse (myDictionary.onRemoveCompleteFired, "#3");
			Assert.IsFalse (myDictionary.onClearFired, "#B6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#B7");
			Assert.IsFalse (myDictionary.onSetFired, "#B8");
			Assert.IsFalse (myDictionary.onSetCompleteFired, "#B9");
			Assert.IsFalse (myDictionary.onGetFired, "#B10");
		}
Esempio n. 48
0
		public void Values ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (5);
			ICollection values = myDictionary.BaseDictionary.Values;

			int total = 0;
			foreach (int i in values)
				total += i;
			Assert.AreEqual (20, total, "#1");
			Assert.AreEqual (5, values.Count, "#2");
		}
Esempio n. 49
0
		public void Contains ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (14);
			for (int i = 0; i < 14; i++)
				Assert.IsTrue (myDictionary.BaseDictionary.Contains (i), "Must contain " + i);
			for (int i = 14; i < 34; i++)
				Assert.IsFalse (myDictionary.BaseDictionary.Contains (i), "Must not contain " + i);
		}
Esempio n. 50
0
		public void Set ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (18);
			myDictionary.onValidateExist = true;
			myDictionary.onSetExist = true;
			myDictionary.BaseDictionary[10] = 50;

			Assert.IsFalse (myDictionary.onInsertFired, "#1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#2");
			Assert.IsTrue (myDictionary.onValidateFired, "#3");
			Assert.IsFalse (myDictionary.onRemoveFired, "#4");
			Assert.IsFalse (myDictionary.onRemoveCompleteFired, "#5");
			Assert.IsFalse (myDictionary.onClearFired, "#6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#7");
			Assert.IsTrue (myDictionary.onSetFired, "#8");
			Assert.IsTrue (myDictionary.onSetCompleteFired, "#9");
			Assert.IsFalse (myDictionary.onGetFired, "#10");
			myDictionary.onGetExist = true;
			Assert.AreEqual (50, myDictionary.BaseDictionary [10], "#11");
		}
Esempio n. 51
0
		public void Keys ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (5);
			ICollection keys = myDictionary.BaseDictionary.Keys;

			int total = 0;
			foreach (int i in keys)
				total += i;
			Assert.AreEqual (10, total, "#1");
			Assert.AreEqual (5, keys.Count, "#2");
		}
Esempio n. 52
0
		public void RemoveOnRemoveCompleteExcept ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (28);
			myDictionary.onValidateExist = true;
			myDictionary.onRemoveExist = true;
			myDictionary.onRemoveCompleteMustThrowException = true;

			try {
				myDictionary.BaseDictionary.Remove (11);
				Assert.Fail ("#A1");
			} catch (AssertionException) {
				throw;
			} catch (Exception ex) {
				Assert.AreEqual (typeof (Exception), ex.GetType (), "#A2");
				Assert.IsNull (ex.InnerException, "#A3");
				Assert.IsNotNull (ex.Message, "#A4");
			}

			Assert.IsFalse (myDictionary.onInsertFired, "#B1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#B2");
			Assert.IsTrue (myDictionary.onValidateFired, "#B3");
			Assert.IsTrue (myDictionary.onRemoveFired, "#B4");
			Assert.IsTrue (myDictionary.onRemoveCompleteFired, "#B5");
			Assert.IsFalse (myDictionary.onClearFired, "#B6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#B7");
			Assert.IsFalse (myDictionary.onSetFired, "#B8");
			Assert.IsFalse (myDictionary.onSetCompleteFired, "#B9");
			Assert.IsFalse (myDictionary.onGetFired, "#B10");
#if NET_2_0
			myDictionary.onGetExist = true;
			Assert.AreEqual (28, myDictionary.Count, "#B11");
			Assert.AreEqual (22, myDictionary.BaseDictionary [11], "#B12");
#else
			Assert.AreEqual (27, myDictionary.Count, "#B11");
			Assert.IsNull (myDictionary.BaseDictionary [11], "#B12");
#endif
		}
Esempio n. 53
0
		public void GetNoKey ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (18);
			Assert.IsNull (myDictionary.BaseDictionary [100]);
		}
Esempio n. 54
0
		public void Add ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (10);
			myDictionary.BaseDictionary.Add(100, 1);

			Assert.IsTrue (myDictionary.onInsertFired, "#1");
			Assert.IsTrue (myDictionary.onInsertCompleteFired, "#2");
			Assert.IsTrue (myDictionary.onValidateFired, "#3");
			Assert.IsFalse (myDictionary.onRemoveFired, "#4");
			Assert.IsFalse (myDictionary.onRemoveCompleteFired, "#5");
			Assert.IsFalse (myDictionary.onClearFired, "#6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#7");
			Assert.IsFalse (myDictionary.onSetFired, "#8");
			Assert.IsFalse (myDictionary.onSetCompleteFired, "#9");
			Assert.IsFalse (myDictionary.onGetFired, "#10");
			Assert.AreEqual (11, myDictionary.Count, "#11");
			myDictionary.onGetExist = true;
			Assert.AreEqual (1, myDictionary.BaseDictionary [100], "#12");
		}
Esempio n. 55
0
		public void SetNewKey ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (18);
			myDictionary.BaseDictionary[111] = 222;

			Assert.IsFalse (myDictionary.onInsertFired, "#1");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#2");
			Assert.IsTrue (myDictionary.onValidateFired, "#3");
			Assert.IsFalse (myDictionary.onRemoveFired, "#4");
			Assert.IsFalse (myDictionary.onRemoveCompleteFired, "#5");
			Assert.IsFalse (myDictionary.onClearFired, "#6");
			Assert.IsFalse (myDictionary.onClearCompleteFired, "#7");
			Assert.IsTrue (myDictionary.onSetFired, "#8");
			Assert.IsTrue (myDictionary.onSetCompleteFired, "#9");
			Assert.IsFalse (myDictionary.onGetFired, "#10");
			myDictionary.onGetExist = true;
			Assert.AreEqual (222, myDictionary.BaseDictionary [111], "#11");
			Assert.AreEqual (19, myDictionary.Count, "#12");
		}
Esempio n. 56
0
		public void AddOnInsertCompleteExcept ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (5);
			myDictionary.onInsertCompleteMustThrowException = true;

			try {
				myDictionary.BaseDictionary.Add (888, 999);
				Assert.Fail ("#A1");
			} catch (AssertionException) {
				throw;
			} catch (Exception ex) {
				Assert.AreEqual (typeof (Exception), ex.GetType (), "#A2");
				Assert.IsNull (ex.InnerException, "#A3");
				Assert.IsNotNull (ex.Message, "#A4");
			}

			Assert.IsTrue (myDictionary.onValidateFired, "#B1");
			Assert.IsTrue (myDictionary.onInsertFired, "#B2");
			Assert.IsTrue (myDictionary.onInsertCompleteFired, "#B3");
			Assert.AreEqual (5, myDictionary.Count, "#B4");
		}
Esempio n. 57
0
		public void IsReadOnly() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (1);
			Assert.IsFalse (myDictionary.BaseDictionary.IsReadOnly);
		}
Esempio n. 58
0
		public void AddNullKey ()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary ();

			try {
				myDictionary.BaseDictionary.Add (null, 11);
				Assert.Fail ("#A1");
			} catch (ArgumentNullException ex) {
				Assert.AreEqual (typeof (ArgumentNullException), ex.GetType (), "#A2");
				Assert.IsNull (ex.InnerException, "#A3");
				Assert.IsNotNull (ex.Message, "#A4");
				Assert.AreEqual ("key", ex.ParamName, "#A5");
			}

			Assert.IsTrue (myDictionary.onValidateFired, "#B1");
			Assert.IsTrue (myDictionary.onInsertFired, "#B2");
			Assert.IsFalse (myDictionary.onInsertCompleteFired, "#B3");
		}
Esempio n. 59
0
		public void DictionaryProperty()
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary (1);
			Assert.AreEqual (myDictionary, myDictionary.BaseDictionary);
		}
		public void Set() 
		{
			ConcreteDictionary myDictionary = new ConcreteDictionary(18);
			myDictionary.BaseDictionary[10] = 50;

			Assert("OnValidate must be fired", myDictionary.onValidateFired);
			Assert("OnSet must be fired", myDictionary.onSetFired);
			Assert("OnSetComplete must be fired", myDictionary.onSetCompleteFired);
			AssertEquals(50, myDictionary.BaseDictionary[10]);
		}