public class TestCircularSinglyLinkedList {
    public static void main(String[] args) {
        System.out.println("||==========================================||");
        System.out.printf("|| %-40s ||%n","Student Name: Faisal Majed Alghamdi");
        System.out.printf("|| %-40s ||%n","Student Number: 447001625");
        System.out.println("||==========================================||\n\n\n");
        
        CircularSinglyLinkedList<Integer> list = new CircularSinglyLinkedList<>();

        System.out.println("1) Traverse empty list:");
        list.traverse();

        System.out.println("\n2) addLast: 10, 20, 30, 40");
        list.addLast(10);
        list.addLast(20);
        list.addLast(30);
        list.addLast(40);
        System.out.print("List: ");
        list.traverse();

        System.out.println("\n3) addFirst: 5, 3");
        list.addFirst(5);
        list.addFirst(3);
        System.out.print("List: ");
        list.traverse();

        System.out.println("\n4) removeFirst()");
        System.out.println("Removed: " + list.removeFirst());
        System.out.print("List: ");
        list.traverse();

        System.out.println("\n5) rotate() x3 (print after each rotation)");
        for (int i = 1; i <= 3; i++) {
            list.rotate();
            System.out.print("After rotate " + i + ": ");
            list.traverse();
        }
    }
}
