예제 #1
0
        public void CompletedVisitor2()
        {
            var bag = new Bag<string> { "5", "4", "3", "2" };

            var visitor = new CompletedTrackingVisitor<string>();
            bag.AcceptVisitor<string>(visitor);
        }
예제 #2
0
        public void CompletedVisitor1()
        {
            var bag = new Bag<string> { "5", "4", "3", "2" };

            var visitor = new CompletedTrackingVisitor<KeyValuePair<string, int>>();
            bag.AcceptVisitor<KeyValuePair<string, int>>(visitor);
        }
예제 #3
0
        public void CompletedVisitor2()
        {
            var bag = new Bag <string> {
                "5", "4", "3", "2"
            };

            var visitor = new CompletedTrackingVisitor <string>();

            bag.AcceptVisitor <string>(visitor);
        }
예제 #4
0
        public void CompletedVisitor1()
        {
            var bag = new Bag <string> {
                "5", "4", "3", "2"
            };

            var visitor = new CompletedTrackingVisitor <KeyValuePair <string, int> >();

            bag.AcceptVisitor <KeyValuePair <string, int> >(visitor);
        }
예제 #5
0
        public void Simple2()
        {
            var bag = new Bag<string> { "5", "4", "3", "2" };

            var visitor = new TrackingVisitor<KeyValuePair<string, int>>();
            bag.AcceptVisitor<KeyValuePair<string, int>>(visitor);

            Assert.AreEqual(visitor.TrackingList.Count, 4);
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair<string, int>("5", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair<string, int>("4", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair<string, int>("3", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair<string, int>("2", 1)));
        }
예제 #6
0
        public void Simple()
        {
            var bag = new Bag<string> { "5", "4", "3", "2" };

            var visitor = new TrackingVisitor<string>();
            bag.AcceptVisitor<string>(visitor);

            Assert.AreEqual(visitor.TrackingList.Count, 4);
            Assert.IsTrue(visitor.TrackingList.Contains("5"));
            Assert.IsTrue(visitor.TrackingList.Contains("4"));
            Assert.IsTrue(visitor.TrackingList.Contains("3"));
            Assert.IsTrue(visitor.TrackingList.Contains("2"));
        }
예제 #7
0
        public void Simple2()
        {
            var bag = new Bag <string> {
                "5", "4", "3", "2"
            };

            var visitor = new TrackingVisitor <KeyValuePair <string, int> >();

            bag.AcceptVisitor <KeyValuePair <string, int> >(visitor);

            Assert.AreEqual(visitor.TrackingList.Count, 4);
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair <string, int>("5", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair <string, int>("4", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair <string, int>("3", 1)));
            Assert.IsTrue(visitor.TrackingList.Contains(new KeyValuePair <string, int>("2", 1)));
        }
예제 #8
0
        public void Simple()
        {
            var bag = new Bag <string> {
                "5", "4", "3", "2"
            };

            var visitor = new TrackingVisitor <string>();

            bag.AcceptVisitor <string>(visitor);

            Assert.AreEqual(visitor.TrackingList.Count, 4);
            Assert.IsTrue(visitor.TrackingList.Contains("5"));
            Assert.IsTrue(visitor.TrackingList.Contains("4"));
            Assert.IsTrue(visitor.TrackingList.Contains("3"));
            Assert.IsTrue(visitor.TrackingList.Contains("2"));
        }
예제 #9
0
        public void AcceptVisitorExample()
        {
            // Create a Bag
            var bag = new Bag <string>
            {
                "cat",
                "dog",
                "canary"
            };

            // There should be 3 items in the bag.
            Assert.AreEqual(3, bag.Count);

            // Create a visitor that will simply count the items in the bag.
            var visitor = new CountingVisitor <string>();

            // Make bag call IVisitor<T>.Visit on all items contained.
            bag.AcceptVisitor <string>(visitor);

            // The counting visitor would have visited 3 items.
            Assert.AreEqual(3, visitor.Count);
        }
예제 #10
0
        public void AcceptVisitorExample()
        {
            // Create a Bag
            var bag = new Bag<string>
                      	{
                      		"cat",
                      		"dog",
                      		"canary"
                      	};

            // There should be 3 items in the bag.
            Assert.AreEqual(3, bag.Count);

            // Create a visitor that will simply count the items in the bag.
            var visitor = new CountingVisitor<string>();

            // Make bag call IVisitor<T>.Visit on all items contained.
            bag.AcceptVisitor<string>(visitor);

            // The counting visitor would have visited 3 items.
            Assert.AreEqual(3, visitor.Count);
        }
예제 #11
0
        public void ExceptionInvalid1()
        {
            var bag = new Bag <string>();

            bag.AcceptVisitor <string>(null);
        }
예제 #12
0
 public void ExceptionNullVisitor1()
 {
     var bag = new Bag<string>();
     bag.AcceptVisitor<string>(null);
 }
예제 #13
0
        public void ExceptionInvalid1()
        {
            var bag = new Bag <string>();

            Assert.Throws <ArgumentNullException>(() => bag.AcceptVisitor <string>(null));
        }