public void TestMove() { One.MoveFirst(1); One.MoveLast(1); One.MoveFirst(2); One.MoveLast(2); Two.MoveFirst(1); Two.MoveLast(1); Two.MoveFirst(2); Two.MoveLast(2); Two.MoveAfter(1, 2); Two.MoveAfter(2, 1); Two.MoveBefore(1, 2); Two.MoveBefore(2, 1); Four.MoveFirst(1).MoveFirst(2).MoveFirst(3).MoveFirst(4).MoveFirst(6); Four.MoveFirst(4).MoveFirst(3).MoveFirst(2).MoveFirst(1); Four.MoveLast(1).MoveLast(2).MoveLast(3).MoveLast(4).MoveLast(6); Four.MoveLast(4).MoveLast(3).MoveLast(2).MoveLast(1); Four.MoveBefore(1, 2).MoveBefore(2, 1).MoveBefore(4, 3).MoveBefore(4, 3); Four.MoveAfter(1, 2).MoveAfter(2, 1).MoveAfter(4, 3).MoveAfter(4, 3); Four.MoveAfter(1, 4); Four.MoveAfter(4, 1); Four.MoveBefore(4, 1); Four.MoveBefore(1, 4); Four.MoveAfter(1, 1); Four.MoveAfter(4, 4); Four.MoveBefore(1, 1); Four.MoveBefore(4, 4); Four.MoveAfter(1, 6); Four.MoveAfter(6, 1); Four.MoveBefore(1, 6); Four.MoveBefore(6, 1); }