diff --git a/test/Spring/Spring.Core.Tests/Collections/Generic/LinkedHashDictionaryTest.cs b/test/Spring/Spring.Core.Tests/Collections/Generic/LinkedHashDictionaryTest.cs
index 322c10f0..c2eb35aa 100644
--- a/test/Spring/Spring.Core.Tests/Collections/Generic/LinkedHashDictionaryTest.cs
+++ b/test/Spring/Spring.Core.Tests/Collections/Generic/LinkedHashDictionaryTest.cs
@@ -24,46 +24,80 @@ using NUnit.Framework;
namespace Spring.Collections.Generic
{
- ///
- /// This class contains tests for LinkedHashDictionary
- ///
- /// Zbynek Vyskovsky, kvr@centrum.cz
- [TestFixture]
- public class LinkedHashDictionaryTest
- {
- [Test]
- public void TestSunnyDay()
- {
- IDictionary td = new LinkedHashDictionary();
- td.Add(0, "a");
- td.Add(1, "b");
- td.Add(2, "c");
- td.Add(1, "b2");
- td.Add(3, "d");
- td.Add(4, "e");
- Assert.IsTrue(td.ContainsKey(0));
- Assert.IsTrue(td.ContainsKey(1));
- Assert.IsTrue(td.ContainsKey(2));
- Assert.IsTrue(td.ContainsKey(3));
- Assert.IsTrue(td.ContainsKey(4));
- Assert.AreEqual("a", td[0]);
- Assert.AreEqual("b2", td[1]);
- int[] keys = td.Keys.ToArray();
- Assert.AreEqual(5, keys.Length);
- Assert.AreEqual(0, keys[0]);
- Assert.AreEqual(1, keys[1]);
- Assert.AreEqual(2, keys[2]);
- Assert.AreEqual(3, keys[3]);
- Assert.AreEqual(4, keys[4]);
- td.Remove(3);
- td.Remove(2);
- Assert.AreEqual(3, td.Count);
- td.Remove(1);
- Assert.AreEqual(2, td.Count);
- td.Remove(4);
- td.Remove(0);
- Assert.AreEqual(0, td.Count);
- Assert.AreEqual(0, td.Keys.Count);
- }
- }
+ ///
+ /// This class contains tests for LinkedHashDictionary
+ ///
+ /// Zbynek Vyskovsky, kvr@centrum.cz
+ [TestFixture]
+ public class LinkedHashDictionaryTest
+ {
+ private IDictionary _testDictionary;
+
+ [SetUp]
+ public void Setup()
+ {
+ _testDictionary = new LinkedHashDictionary();
+ _testDictionary.Add(0, "a");
+ _testDictionary.Add(1, "b");
+ _testDictionary.Add(2, "c");
+ _testDictionary.Add(3, "d");
+ _testDictionary.Add(4, "e");
+ }
+
+ [Test]
+ public void CanAddEntries()
+ {
+ Assert.IsTrue(_testDictionary.ContainsKey(0));
+ Assert.IsTrue(_testDictionary.ContainsKey(1));
+ Assert.IsTrue(_testDictionary.ContainsKey(2));
+ Assert.IsTrue(_testDictionary.ContainsKey(3));
+ Assert.IsTrue(_testDictionary.ContainsKey(4));
+ }
+
+ [Test]
+ public void AddAtExistingIndexOverwritesEntry()
+ {
+ _testDictionary.Add(1, "b2");
+ Assert.AreEqual("b2", _testDictionary[1]);
+ }
+
+ [Test]
+ public void CanAccessValuesByIndex()
+ {
+ Assert.AreEqual("a", _testDictionary[0]);
+ Assert.AreEqual("b", _testDictionary[1]);
+ }
+
+ ///
+ /// Determines whether this instance [can retreive keys].
+ ///
+ [Test]
+ public void CanRetreiveKeys()
+ {
+ int[] keys = _testDictionary.Keys.ToArray();
+ Assert.AreEqual(5, keys.Length);
+ Assert.AreEqual(0, keys[0]);
+ Assert.AreEqual(1, keys[1]);
+ Assert.AreEqual(2, keys[2]);
+ Assert.AreEqual(3, keys[3]);
+ Assert.AreEqual(4, keys[4]);
+ }
+
+ [Test]
+ public void CanRemoveEntriesByIndex()
+ {
+ _testDictionary.Remove(3);
+ _testDictionary.Remove(2);
+ Assert.AreEqual(3, _testDictionary.Count);
+
+ _testDictionary.Remove(1);
+ Assert.AreEqual(2, _testDictionary.Count);
+
+ _testDictionary.Remove(4);
+ _testDictionary.Remove(0);
+ Assert.AreEqual(0, _testDictionary.Count);
+ Assert.AreEqual(0, _testDictionary.Keys.Count);
+ }
+
+ }
}