package com.coding.basic.test; import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.JUnitCore; import org.junit.runner.Result; import org.junit.runner.notification.Failure; import com.coding.basic.Iterator; import com.coding.basic.impl.Stack; /** * stack 简单测试 * @author 240094626 * */ public class StackTest { @Test public void test() { Stack stack = new Stack(); System.out.println("******测试push(Object o):压入第一个元素0******"); stack.push(0); System.out.println("Stack print:"+stack.toString()); System.out.println("******测试push(Object o):压入第二个元素2******"); stack.push(2); System.out.println("Stack print:"+stack.toString()); System.out.println("******测试peek():从栈尾取出2,不删除******"); stack.peek(); System.out.println("Stack print:"+stack.toString()); System.out.println("******测试peek():再次从栈尾取出2,不删除******"); // 断言出栈为2 assertEquals(2,stack.peek()); // 断言size为2 assertEquals(2,stack.size()); System.out.println("******测试pop():末尾元素2出栈,并移除******"); // 断言出栈为2 assertEquals(2,stack.pop()); System.out.println("Stack print:"+stack.toString()); // 断言不为空 assertEquals(false,stack.isEmpty()); // 断言size为1 assertEquals(1,stack.size()); // 添加3,5 两个元素 stack.push(3); stack.push(5); System.out.println("Stack print:"+stack.toString()); // 测试迭代器 Iterator it = stack.iterator(); int i = 1; while(it.hasNext()){ System.out.println("第"+i+"个元素:"+it.next()); i++; } } public static void main(String[] args) { Result result = JUnitCore.runClasses(StackTest.class); for(Failure failure : result.getFailures()){ System.out.println(failure.toString()); } System.out.println("test success!:"+result.wasSuccessful()); } }