Example #1
0
        public void TestICollectionAdd()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            ((ICollection <KeyValuePair <string, string> >)dic).Add(new KeyValuePair <string, string>("Key1", "Value1"));
            Assert.AreEqual(1, dic.Count);
        }
Example #2
0
        public void TestIDictionarySetItem()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            ((IDictionary)dic)["Key1"] = "Value1";
            Assert.AreEqual("Value1", ((IDictionary)dic)["Key1"]);
        }
Example #3
0
        public void TestIDictionaryGetEnumerator()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");

            bool containsV2 = false;
            bool containsV3 = false;

            foreach (object o in (IDictionary)dic)
            {
                if ("Value2".Equals(((DictionaryEntry)o).Value))
                {
                    containsV2 = true;
                }
                else if ("Value3".Equals(((DictionaryEntry)o).Value))
                {
                    containsV3 = true;
                }
                else
                {
                    Assert.Fail();
                }
            }
            Assert.IsTrue(containsV2);
            Assert.IsTrue(containsV3);
        }
Example #4
0
        public void TestSequencedEnumerator()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");

            IDictionaryEnumerator enumerator = ((IDictionary)dic).GetEnumerator();

            Assert.IsTrue(enumerator.MoveNext());
            Assert.AreEqual("Key2", enumerator.Key);
            Assert.AreEqual("Value2", enumerator.Value);
            Assert.IsNotNull(enumerator.Entry);
            Assert.IsTrue(enumerator.MoveNext());
            Assert.AreEqual("Key3", enumerator.Key);
            Assert.AreEqual("Value3", enumerator.Value);
            Assert.IsNotNull(enumerator.Entry);
            Assert.IsFalse(enumerator.MoveNext());
            enumerator.Reset();
            Assert.IsTrue(enumerator.MoveNext());
            Assert.AreEqual("Key2", enumerator.Key);
            Assert.AreEqual("Value2", enumerator.Value);
            Assert.IsNotNull(enumerator.Entry);
        }
Example #5
0
        public void TestIDictionaryGetItem()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            Assert.AreEqual("Value1", ((IDictionary)dic)["Key1"]);
        }
Example #6
0
        public void TestIDictionaryAdd()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            ((IDictionary)dic).Add("Key1", "Value1");
            Assert.AreEqual(1, dic.Count);
        }
        public MessageDictionary()
        {
            ReadCommandsFromAttributes();

            _currentDict = _normalDict;
            InputMode = InputMode.Normal;
        }
 public void ChangeMode(InputMode mode)
 {
     var member = GetType().GetField(string.Format("_{0}Dict", mode.ToString().ToLower()), BindingFlags.NonPublic | BindingFlags.Instance);
     if (member == null) throw new Exception(mode + " does not have a dictionary set up");
     _currentDict = (SequencedDictionary<Key, Message>)member.GetValue(this);
     InputMode = mode;
 }
Example #9
0
        public void TestIEnumerableGetEnumerator()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");

            bool        containsV2 = false;
            bool        containsV3 = false;
            IEnumerator enumerator = ((IEnumerable)dic).GetEnumerator();

            while (enumerator.MoveNext())
            {
                string s = (string)enumerator.Current;
                if ("Value2".Equals(s))
                {
                    containsV2 = true;
                }
                else if ("Value3".Equals(s))
                {
                    containsV3 = true;
                }
                else
                {
                    Assert.Fail();
                }
            }
            Assert.IsTrue(containsV2);
            Assert.IsTrue(containsV3);
        }
Example #10
0
        public void TestIDictionaryValues()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");

            bool containsV2 = false;
            bool containsV3 = false;

            foreach (string s in ((IDictionary <string, string>)dic).Values)
            {
                if ("Value2".Equals(s))
                {
                    containsV2 = true;
                }
                else if ("Value3".Equals(s))
                {
                    containsV3 = true;
                }
                else
                {
                    Assert.Fail();
                }
            }
            Assert.IsTrue(containsV2);
            Assert.IsTrue(containsV3);
        }
Example #11
0
        public void TestICollectionContains()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            Assert.AreEqual(1, dic.Count);
            Assert.IsTrue(((ICollection <KeyValuePair <string, string> >)dic).Contains(new KeyValuePair <string, string>("Key1", "Value1")));
        }
Example #12
0
        public void TestContains()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            Assert.AreEqual(1, dic.Count);
            Assert.IsTrue(dic.Contains("Key1"));
        }
Example #13
0
        public void TestClear()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            Assert.AreEqual(1, dic.Count);
            dic.Clear();
            Assert.AreEqual(0, dic.Count);
        }
Example #14
0
        public void TestLastValue()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            Assert.AreEqual("Value1", dic.LastValue);
            dic.Add("Key2", "Value2");
            Assert.AreEqual("Value2", dic.LastValue);
            dic.Remove("Key1");
            Assert.AreEqual("Value2", dic.LastValue);
        }
Example #15
0
        public void TestIDictionaryKeys()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");
            ICollection keys = ((IDictionary)dic).Keys;

            Assert.AreEqual(2, keys.Count);
        }
Example #16
0
        public void TestSequencedEnumeratorEntry()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");

            IDictionaryEnumerator enumerator = ((IDictionary)dic).GetEnumerator();
            object o = enumerator.Entry;
        }
Example #17
0
        public void TestICollectionCopyTo()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");
            object[] values = new object[2];
            ((ICollection)dic).CopyTo(values, 0);
            Assert.AreEqual("Value2", values[0]);
            Assert.AreEqual("Value3", values[1]);
        }
Example #18
0
        public void TestKeys()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            dic.Add("Key1", "Value1");
            dic.Add("Key2", "Value2");
            dic.Add("Key3", "Value3");
            dic.Remove("Key1");
            ICollection <string> keys = dic.Keys;

            Assert.IsFalse(keys.Contains("Key1"));
            Assert.IsTrue(keys.Contains("Key2"));
            Assert.IsTrue(keys.Contains("Key3"));
        }
        public void Test()
        {
            var dict = new SequencedDictionary<char, string>();
            dict.Add("sam", "sam");
            dict.Add("sa", "sa");
            dict.Add("zebra", "zebra");
            dict.Add("ze", "ze");
            dict.Add("charlie", "charlie");
            dict.Add("te", "te");

            dict.Push('s');
            Assert.AreEqual(0, dict.Count());
            dict.Push('a');
            Assert.AreEqual(0, dict.Count());
            dict.Push('m');
            Assert.AreEqual(1, dict.Count());
            Assert.AreEqual("sam", dict.Pop().Value);

            dict.Push('z');
            dict.Push('e');
            dict.Push('b');
            dict.Push('d');
            Assert.AreEqual("ze", dict.Pop().Value);

            var dictPop = dict.Pop();
            Assert.AreEqual('b', dictPop.Keys.Single());
            Assert.IsNull(dictPop.Value);

            dictPop = dict.Pop();
            Assert.AreEqual('d', dictPop.Keys.Single());
            Assert.IsNull(dictPop.Value);

            dict.Push('c');
            Assert.AreEqual(0, dict.Count());
            dict.Push('h');
            Assert.AreEqual(0, dict.Count());
            dict.Push('d');
            Assert.AreEqual(3, dict.Count());

            dictPop = dict.Pop();
            Assert.AreEqual('c', dictPop.Keys.Single());
            Assert.IsNull(dictPop.Value);

            dictPop = dict.Pop();
            Assert.AreEqual('h', dictPop.Keys.Single());
            Assert.IsNull(dictPop.Value);

            dictPop = dict.Pop();
            Assert.AreEqual('d', dictPop.Keys.Single());
            Assert.IsNull(dictPop.Value);

            dict.Push('t');
            dict.Push('e');
            Assert.AreEqual(1, dict.Count());
            Assert.AreEqual("te", dict.Pop().Value);

            /*            var dict = new SequencedDictionary<char, string>();
            dict.Add("sam", "sam");
            dict.Add("s", "s");

            SequencedDictionary<char, string>.ResultToken token = null;
            token = dict.Get('s', token);
            token = dict.Get('a', token);
            token = dict.Get('p', token);
            Assert.IsFalse(token.IsComplete);
            Assert.AreEqual(1, token.Values.Count());
            Assert.AreEqual("s", token.Values.First());

            token = null;
            token = dict.Get('s', token);
            token = dict.Get('a', token);
            token = dict.Get('m', token);
            Assert.IsTrue(token.IsComplete);
            Assert.AreEqual(1, token.Values.Count());
            Assert.AreEqual("sam", token.Values.First());*/
        }
 private void Pop(SequencedDictionary<char, string> dict)
 {
     Enumerable
         .Range(0, dict.Count())
         .Select(i => dict.Pop())
         .ToList();
 }
Example #21
0
        public void TestIsReadOnly()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsFalse(dic.IsReadOnly);
        }
Example #22
0
        public void TestIsFixedSize()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsFalse(dic.IsFixedSize);
        }
Example #23
0
        public void TestGetItemMissing()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsNull(dic["Key1"]);
        }
Example #24
0
        private void Initialize()
        {
            if (_initialized) return;

            _stateChangeStrings = GetStateChangeStrings();
            _actionMap = GetActionMap();
            _characterMap = GetCharacterMap();
            _defaultStateChangeType = GetDefaultStateChange();

            _sequencedDictionary = new SequencedDictionary<char, CharacterType>();
            _characterMap.Do(pair => pair.Value.GetStrings().Do(s => _sequencedDictionary.Add(s, pair.Key)));

            _initialized = true;
        }
Example #25
0
        public void TestRemoveMissing()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsFalse(dic.Remove("Key1"));
        }
Example #26
0
        public void TestSyncRoot()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsNotNull(dic.SyncRoot);
        }
Example #27
0
 public void TestConstructeurSize()
 {
     SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>(15);
 }
Example #28
0
        public void TestICollectionIsReadOnly()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsFalse(((ICollection <KeyValuePair <string, string> >)dic).IsReadOnly);
        }
Example #29
0
        public void TestIsSynchronized()
        {
            SequencedDictionary <string, string> dic = new SequencedDictionary <string, string>();

            Assert.IsFalse(dic.IsSynchronized);
        }