protected override void given_the_context_of()
        {
            _node = Mock<IInteractionNode>();

            _element = new FakeElement();
            _message = new FakeMessage {AvailabilityEffect = Mock<IAvailabilityEffect>()};
        }
        private void BuildPipeline(int count)
        {
            List <FakeElement> elements = new List <FakeElement> ();

            for (int i = 0; i < count; i++)
            {
                elements.Add(new FakeElement());
            }

            QueuePipeline <object> qp = new QueuePipeline <object> ();

            foreach (FakeElement s in elements)
            {
                qp.AddElement(s);
            }

            Assert.AreEqual(elements[0], qp.FirstElement);

            int         index   = 0;
            FakeElement element = (FakeElement)qp.FirstElement;

            while (element != null)
            {
                Assert.AreEqual(elements[index++], element);
                element = (FakeElement)element.NextElement;
            }
        }
        public void AddAlreadyAddedElement()
        {
            var element = new FakeElement();

            intrusiveList.AddElement(element);

            Assert.Throws <ArgumentOutOfRangeException>(() => intrusiveList.AddElement(element));
        }
示例#4
0
        public void combinationalFeedback()
        {
            ILogicalElement sourceElement = new FakeElement();

            ILine line = new Line(sourceElement, 0);

            line.addConnection(sourceElement, 1);
        }
        protected override void given_the_context_of()
        {
            node = Mock <IInteractionNode>();

            element = new FakeElement();
            message = new FakeMessage {
                AvailabilityEffect = Mock <IAvailabilityEffect>()
            };
        }
        public void AddRemoveAdd_SameElement()
        {
            var element = new FakeElement();

            intrusiveList.AddElement(element);
            Assert.Equal(1, intrusiveList.Count);
            intrusiveList.RemoveElement(element);
            Assert.Equal(0, intrusiveList.Count);
            intrusiveList.AddElement(element);
            Assert.Equal(1, intrusiveList.Count);
        }
示例#7
0
        public void duplicateConnection()
        {
            ILogicalElement sourceElement = new FakeElement();

            ILine line = new Line(sourceElement, 0);

            FakeElement element = new FakeElement();

            line.addConnection(element, 0);
            line.addConnection(element, 0);
        }
示例#8
0
        public void createLine()
        {
            FakeElement sourceElement = new FakeElement();

            ILine line = new Line(sourceElement, 0);

            Assert.AreEqual(line.SourceElement.Item1, sourceElement);

            Assert.AreEqual(line.SourceElement.Item2, 0);

            Assert.AreEqual(line.ElementsConnected, 0);
        }
        public void AddAndRemoveElements()
        {
            FakeElement element1 = new FakeElement();
            FakeElement element2 = new FakeElement();
            FakeElement element3 = new FakeElement();

            intrusiveList.AddElement(element1);
            intrusiveList.AddElement(element2);
            intrusiveList.AddElement(element3);
            Assert.Equal(3, intrusiveList.Count);
            var copy = intrusiveList.Copy();

            Assert.Equal(element3, copy[0]);
            Assert.Equal(element2, copy[1]);
            Assert.Equal(element1, copy[2]);

            // Remove element from the middle of the list.
            intrusiveList.RemoveElement(element2);
            Assert.Equal(2, intrusiveList.Count);
            copy = intrusiveList.Copy();
            Assert.Equal(element3, copy[0]);
            Assert.Equal(element1, copy[1]);

            // Remove element from the tail of the list.
            intrusiveList.RemoveElement(element1);
            Assert.Equal(1, intrusiveList.Count);
            copy = intrusiveList.Copy();
            Assert.Equal(element3, copy[0]);

            intrusiveList.AddElement(element1);
            Assert.Equal(2, intrusiveList.Count);
            copy = intrusiveList.Copy();
            Assert.Equal(element1, copy[0]);
            Assert.Equal(element3, copy[1]);

            // Remove element from the head of the list when there are other elements after.
            intrusiveList.RemoveElement(element1);
            Assert.Equal(1, intrusiveList.Count);
            copy = intrusiveList.Copy();
            Assert.Equal(element3, copy[0]);

            // Remove element from the head of the list when no more other elements in the list.
            intrusiveList.RemoveElement(element3);
            Assert.Equal(0, intrusiveList.Count);
            Assert.Empty(intrusiveList.Copy());
        }
 protected override void given_the_context_of()
 {
     _element = new FakeElement();
 }
        public void removeNotAddedElement()
        {
            var element = new FakeElement();

            Assert.Throws <ArgumentOutOfRangeException>(() => intrusiveList.RemoveElement(element));
        }
 protected override void given_the_context_of()
 {
     element = new FakeElement();
 }