import CursoredList; import CursoredListPrinter; /** * A simple way to test cursored lists. Usage: *
* CursoredListTester helper = * new CursoredListTester(list, input, output); * helper.run(); ** * @author Samuel A. Rebelsky * @version 1.0 of May 2000 */ public class CursoredListTester { // +--------+---------------------------------------- // | Fields | // +--------+ /** The list we're testing. */ protected CursoredList list; /** Something to use for input. */ protected SimpleInput input; /** Something to use for output. */ protected SimpleOutput output; /** Up to ten cursors. */ protected ListCursor[] cursors; // +--------------+---------------------------------- // | Constructors | // +--------------+ public CursoredListTester(CursoredList list, SimpleInput input, SimpleOutput output) { this.list = list; this.input = input; this.output = output; cursors = new ListCursor[10]; } // CursoredListTester(CursoredList, SimpleInput, SimpleOutput) // +---------+--------------------------------------- // | Methods | // +---------+ public void run() { output.println("Starting with A"); list.addToFront("A"); CursoredListPrinter.print(output, list); output.println("Getting cursor 0 at the front of the list."); cursors[0] = list.newCursor(); cursors[0].reset(); output.println("Putting B after cursor 0."); list.addAfter("B", cursors[0]); CursoredListPrinter.print(output, list); output.println("Replacing cursor 0 with C."); list.replaceAt(cursors[0], "C"); CursoredListPrinter.print(output, list); output.println("Getting cursor 1 at the end of the list."); cursors[1] = list.newCursor(); cursors[1].reset(); cursors[1].advance(); output.println("Adding D after cursor 0"); list.addAfter("D", cursors[0]); CursoredListPrinter.print(output, list); output.println("Adding E after cursor 1"); list.addAfter("E", cursors[1]); CursoredListPrinter.print(output, list); output.println("Adding F before cursor 0"); list.addBefore("F", cursors[0]); CursoredListPrinter.print(output, list); output.println("Adding G before cursor 1"); list.addBefore("G", cursors[1]); CursoredListPrinter.print(output, list); output.println("Putting H at the front"); list.addToFront("H"); CursoredListPrinter.print(output, list); output.println("Putting I at the end"); list.addToEnd("I"); CursoredListPrinter.print(output, list); output.println("Deleting cursor 1"); list.deleteAt(cursors[1]); CursoredListPrinter.print(output, list); output.println("Resetting cursor 0"); cursors[0].reset(); output.println("Deleting cursor 0"); list.deleteAt(cursors[0]); CursoredListPrinter.print(output, list); } // run() } // class CursoredListTester