コード例 #1
0
        public void Clear()
        {
            var dictionary = new BidirectionalDictionary <string, string> ();

            dictionary.Add(String1, String2);
            dictionary.Clear();
            Assert.AreEqual(0, dictionary.Count);
        }
コード例 #2
0
        public void Initialize(IDictionary <char, char> seeds)
        {
            if (seeds == null || seeds.Count != 16)
            {
                seeds = DefaultPackageSeeds;
            }

            _Backpackage.Clear();

            foreach (var pair in seeds)
            {
                _Backpackage.Add(pair.Key, pair.Value);
            }
        }
コード例 #3
0
        public void TestBidirectionalDictionary()
        {
            var dict1 = new BidirectionalDictionary <int, double>();

            dict1.Add(4, 2.0);
            Assert.IsTrue(dict1.ContainsFirst(4) && dict1.ContainsSecond(2));
            bool exceptionOnDuplicate = false;

            try {
                dict1.Add(4, 3.0);
            }
            catch (ArgumentException) { exceptionOnDuplicate = true; }
            Assert.IsTrue(exceptionOnDuplicate);
            Assert.IsTrue(dict1.GetByFirst(4) == 2);
            Assert.IsTrue(dict1.GetBySecond(2) == 4);
            Assert.IsTrue(dict1.Count == 1);
            dict1.Clear();
            Assert.IsTrue(dict1.Count == 0);

            var dict2 = new BidirectionalDictionary <ComplexType, int>(new ComplexTypeEqualityComparer());

            Assert.IsTrue(!dict2.Any());
            dict2.Add(new ComplexType(1), 2);
            Assert.IsTrue(dict2.Any());
            dict2.Add(new ComplexType(2), 1);
            Assert.IsTrue(dict2.ContainsFirst(new ComplexType(2)));
            Assert.IsTrue(dict2.ContainsSecond(2));
            exceptionOnDuplicate = false;
            try {
                dict2.Add(new ComplexType(2), 3);
            }
            catch (ArgumentException) { exceptionOnDuplicate = true; }
            Assert.IsTrue(exceptionOnDuplicate);
            exceptionOnDuplicate = false;
            try {
                dict2.Add(new ComplexType(3), 1);
            }
            catch (ArgumentException) { exceptionOnDuplicate = true; }
            Assert.IsTrue(exceptionOnDuplicate);
            Assert.IsTrue(dict2.Count == 2);
            Assert.IsTrue(dict2.GetBySecond(1).Field == 2);
            Assert.IsTrue(dict2.GetByFirst(new ComplexType(1)) == 2);
            dict2.Clear();
            Assert.IsTrue(!dict2.Any());
        }