CStackTest.java
class CStackTest {
static public void main(String[] args) {
Stack stack = new CStack();
//Empty stack should say its empty
Tester.test(stack.notEmpty(), false);
//Test to make sure pop from empty stack returns null
Tester.test(stack.pop(), null);
stack.push("one");
//Stack should say its not empty now
Tester.test(stack.notEmpty(), true);
stack.push("two");
stack.push("three");
Tester.test(stack.pop(),"three");
Tester.test(stack.pop(),"two");
//Test to see if stack accept different kinds of objects
stack.push(new Integer(100000));
Tester.test((Integer)stack.pop(), new Integer(100000));
//Empty the stack and make sure it acts empty
drain(stack);
stack.pop();
Tester.test(stack.notEmpty(), false);
Tester.test(stack.pop(), null);
//See if we can push lots of things onto stack
for (int i=0; i<1000; i++) {
stack.push(new Integer(i));
}
Tester.test((Integer)stack.pop(),new Integer(999));
//pop off all but final value
for (int i=998; i>=0; i--) {
Tester.test((Integer) stack.pop(), new Integer(i));
}
//Should be empty again
Tester.test(stack.notEmpty(), false);
Tester.printResults();
}
static void drain(Stack s) {
while (s.notEmpty()) {
s.pop();
}
}
}
Generated by GNU enscript 1.6.3.