コード例 #1
0
 public void SetUp()
 {
     node1 = new Wrapper(typeof(FakeJsonBehavior));
     node2 = new Wrapper(typeof(FakeJsonBehavior));
     node3 = new Wrapper(typeof(FakeJsonBehavior));
     node1.AddToEnd(node2);
     node1.AddToEnd(node3);
 }
コード例 #2
0
 public void SetUp()
 {
     node1 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
     node2 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
     node3 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
     node1.AddToEnd(node2);
     node1.AddToEnd(node3);
 }
コード例 #3
0
 public void SetUp()
 {
     node1 = new Wrapper(typeof(FakeJsonBehavior));
     node2 = new Wrapper(typeof(FakeJsonBehavior));
     node3 = new Wrapper(typeof(FakeJsonBehavior));
     node1.AddToEnd(node2);
     node1.AddToEnd(node3);
 }
コード例 #4
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void replacing_a_node_should_disconnect_the_node_being_replaced()
        {
            var node1   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node2   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node3   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.ReplaceWith(newNode);

            node2.Next.ShouldBeNull();
            node2.Previous.ShouldBeNull();
        }
コード例 #5
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void removing_a_node_maintains_the_link_between_its_predecessor_and_successor()
        {
            var node1 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node3 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.Remove();

            node2.Previous.ShouldBeNull();
            node2.Next.ShouldBeNull();
            node1.Next.ShouldBeTheSameAs(node3);
            node3.Previous.ShouldBeTheSameAs(node1);
        }
コード例 #6
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void replacing_a_node_should_set_the_new_nodes_predecessor_and_successor()
        {
            var node1   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node2   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node3   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.ReplaceWith(newNode);

            newNode.Previous.ShouldBeTheSameAs(node1);
            newNode.Next.ShouldBeTheSameAs(node3);
            node1.Next.ShouldBeTheSameAs(newNode);
            node3.Previous.ShouldBeTheSameAs(newNode);
        }
コード例 #7
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void replacing_a_node_without_a_predecessor_should_set_the_new_node_to_the_front()
        {
            var node1   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node2   = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node1.AddToEnd(node2);
            node1.ReplaceWith(newNode);

            newNode.Previous.ShouldBeNull();
            newNode.Next.ShouldBeTheSameAs(node2);
        }
コード例 #8
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void removing_a_node_without_a_predecessor_sets_its_successor_to_the_front()
        {
            var node1 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node1.AddToEnd(node2);

            node1.Remove();

            node1.Previous.ShouldBeNull();
            node1.Next.ShouldBeNull();
            node2.Previous.ShouldBeNull();
        }
コード例 #9
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void appending_a_node_also_sets_the_previous()
        {
            var chain   = new BehaviorChain();
            var wrapper = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            chain.AddToEnd(wrapper);

            wrapper.Previous.ShouldBeNull();

            var wrapper2 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            wrapper.AddToEnd(wrapper2);

            wrapper2.Previous.ShouldBeTheSameAs(wrapper);
            wrapper.Previous.ShouldBeNull();
        }
コード例 #10
0
        public void appending_a_node_also_sets_the_previous()
        {
            var chain = new BehaviorChain();
            var wrapper = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));

            chain.AddToEnd(wrapper);

            wrapper.Previous.ShouldBeNull();

            var wrapper2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));

            wrapper.AddToEnd(wrapper2);

            wrapper2.Previous.ShouldBeTheSameAs(wrapper);
            wrapper.Previous.ShouldBeNull();
        }
コード例 #11
0
ファイル: BehaviorChainTester.cs プロジェクト: DRHouk/fubumvc
        public void find_the_parent_from_deep_in_behavior_chain()
        {
            var chain = new BehaviorChain();
            var node  = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            chain.AddToEnd(node);

            var node2 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node.AddToEnd(node2);

            var node3 = new Wrapper(typeof(ObjectDefInstanceTester.FakeJsonBehavior));

            node2.AddToEnd(node3);

            node3.ParentChain().ShouldBeTheSameAs(chain);
        }
コード例 #12
0
        public void replacing_a_node_without_a_predecessor_should_set_the_new_node_to_the_front()
        {
            var node1 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node1.AddToEnd(node2);
            node1.ReplaceWith(newNode);

            newNode.Previous.ShouldBeNull();
            newNode.Next.ShouldBeTheSameAs(node2);
        }
コード例 #13
0
        public void replacing_a_node_should_set_the_new_nodes_predecessor_and_successor()
        {
            var node1 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node3 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.ReplaceWith(newNode);

            newNode.Previous.ShouldBeTheSameAs(node1);
            newNode.Next.ShouldBeTheSameAs(node3);
            node1.Next.ShouldBeTheSameAs(newNode);
            node3.Previous.ShouldBeTheSameAs(newNode);
        }
コード例 #14
0
        public void replacing_a_node_should_disconnect_the_node_being_replaced()
        {
            var node1 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node3 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var newNode = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.ReplaceWith(newNode);

            node2.Next.ShouldBeNull();
            node2.Previous.ShouldBeNull();
        }
コード例 #15
0
        public void removing_a_node_without_a_predecessor_sets_its_successor_to_the_front()
        {
            var node1 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node1.AddToEnd(node2);

            node1.Remove();

            node1.Previous.ShouldBeNull();
            node1.Next.ShouldBeNull();
            node2.Previous.ShouldBeNull();
        }
コード例 #16
0
        public void removing_a_node_maintains_the_link_between_its_predecessor_and_successor()
        {
            var node1 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            var node3 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node1.AddToEnd(node2);
            node1.AddToEnd(node3);
            node2.Remove();

            node2.Previous.ShouldBeNull();
            node2.Next.ShouldBeNull();
            node1.Next.ShouldBeTheSameAs(node3);
            node3.Previous.ShouldBeTheSameAs(node1);
        }
コード例 #17
0
        public void find_the_parent_from_deep_in_behavior_chain()
        {
            var chain = new BehaviorChain();
            var node = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            chain.AddToEnd(node);

            var node2 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node.AddToEnd(node2);

            var node3 = new Wrapper(typeof (ObjectDefInstanceTester.FakeJsonBehavior));
            node2.AddToEnd(node3);

            node3.ParentChain().ShouldBeTheSameAs(chain);
        }