testdaotest.java

来自「纯JAVA代码的考试系统」· Java 代码 · 共 67 行

JAVA
67
字号
package org.fangsoft.testcenter.dao;

import java.util.List;

import junit.framework.TestCase;

import org.fangsoft.testcenter.dao.db.TestDBDao;
import org.fangsoft.testcenter.data.TestData;
import org.fangsoft.testcenter.model.Test;
import org.fangsoft.testcenter.model.test.JavaTest;
import org.fangsoft.testcenter.model.test.WebTest;

public class TestDaoTest extends TestCase {
	
	public void test(){
		TestDao tdao=new TestDBDao();
		testAll(tdao);
	}
	
	public void testAll(TestDao tdao){
		//prepare test data
		Test[] tests=new Test[2];
		tests[0]=new JavaTest();
		tests[1]=new WebTest();
		for(Test t:tests){
			TestData.initTest(t);
		}
		//clean database data
		List<Test> allTest=tdao.findAllTest();
		
		for(Test t:allTest){
			tdao.delete(t.getName());
		}
		assertTrue(tdao.findAllTest().size()==0);
		
		//save
		for(Test t:tests){
			tdao.save(t);
		}
		//findAllTest
		assertTrue(tdao.findAllTest().size()==tests.length);
		//findTestByName
		for(Test t:tests){
			Test tf=tdao.findTestByName(t.getName());
			assertEquals(t.getName(),tf.getName());
		}
		//update
		for(Test t:tests){
			Test tf=tdao.findTestByName(t.getName());
			String newName=tf.getName()+"fangsoft";
			tf.setName(newName);
			tdao.update(tf);
			assertNotNull(tdao.findTestByName(newName));
		}
		
		//delete
		allTest=tdao.findAllTest();
		
		for(Test t:allTest){
			tdao.delete(t.getName());
		}
		assertTrue(tdao.findAllTest().size()==0);
		
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?