public void ExtractMultipleChildrenInvalid()
		{
			SingleChild root= new SingleChild();

			MultipleChildren extractMe= new MultipleChildren();
			root.AddChild(extractMe);

			SingleChild child1= new SingleChild();
			SingleChild child2= new SingleChild();
			extractMe.AddChild(child1);
			extractMe.AddChild(child2);

			Assert.That(!extractMe.ExtractNode(), "Node was extracted although not allowed");
			Assert.That(extractMe.Parent ==root, "Parent was modified");
			Assert.That(extractMe.ParentConnector ==root.DefaultConnector, "Parent connector was modified");
			Assert.That(child1.Parent ==extractMe, "Parent was modified on children");
			Assert.That(child1.ParentConnector ==extractMe.DefaultConnector, "Parent connector modified on children");
			Assert.That(child2.Parent ==extractMe, "Parent was modified on children");
			Assert.That(child2.ParentConnector ==extractMe.DefaultConnector, "Parent connector was modified on children");
		}
		public void ExtractMultipleChildrenValid()
		{
			MultipleChildren root= new MultipleChildren();

			MultipleChildren extractMe= new MultipleChildren();
			root.AddChild(extractMe);

			SingleChild child1= new SingleChild();
			SingleChild child2= new SingleChild();
			extractMe.AddChild(child1);
			extractMe.AddChild(child2);

			Assert.That(extractMe.ExtractNode(), "Could not extract node");
			Assert.That(extractMe.Parent ==null, "Parent was not cleared");
			Assert.That(extractMe.ParentConnector ==null, "Parent connector was not cleared");
			Assert.That(child1.Parent ==root, "Parent was not updated on children");
			Assert.That(child1.ParentConnector ==root.DefaultConnector, "Parent connector was not updated on children");
			Assert.That(child2.Parent ==root, "Parent was not updated on children");
			Assert.That(child2.ParentConnector ==root.DefaultConnector, "Parent connector was not updated on children");
		}