package examples.stack1;
import examples.stack1.StackPlus;
/**
* Author: W. M. Farmer
* Revised: February 11, 2007
*
* Description: Tests the public methods of StackPlus.
*/
public class TestStackPlus {
/**
* Test StackPlus.
*/
public static void main(String[] args) {
printState();
testPush(0);
testPush(1);
testPush(2);
testPush(3);
testPop();
testPop();
testPush(4);
testSetTop(5);
testReset();
StackPlus.top();
StackPlus.pop();
}
private static void printState() {
StackPlus.print();
System.out.println("Height = " +
String.valueOf(StackPlus.height()) +
".");
if (StackPlus.height() != 0)
System.out.println("Top = " +
String.valueOf(StackPlus.top()) +
".");
else
System.out.println("Top is undefined.");
if (StackPlus.isEmpty())
System.out.println("Empty = true.");
else
System.out.println("Empty = false.");
System.out.println();
}
private static void testPush(int element) {
StackPlus.push(element);
System.out.println("Push " + String.valueOf(element) + ".");
printState();
}
private static void testPop() {
StackPlus.pop();
System.out.println("Pop.");
printState();
}
private static void testSetTop(int element) {
StackPlus.setTop(element);
System.out.println("Set top " + String.valueOf(element) + ".");
printState();
}
private static void testReset() {
StackPlus.reset();
System.out.println("Reset.");
printState();
}
}