Hi to All,
I'd like to write a TestCase using JUnit to test my DAO.
This DAO works correctly using the WEB Application, but I'd like write a
"standalone" test case for the DAO.
So I write this java class :
*****************************************************************
package com.fiat.mida.controller.dashboard;
import java.io.IOException;
import java.io.Reader;
import java.util.Map;
import org.springframework.jdbc.CannotGetJdbcConnectionException;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import org.springframework.jdbc.datasource.SingleConnectionDataSource;
import com.fiat.mida.model.dashboard.SearchBean;
import junit.framework.TestCase;
import com.fiat.mida.model.dashboard.dao.SearchRefuseDao;
import com.fiat.mida.model.dashboard.logic.*;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class AbstractTest extends TestCase{
private SearchRefuseService service;
private SearchBean bean;
private String resource =
"com/fiat/mida/controller/dashboard/test-sql-map-config.xml";
private Reader reader ;
protected DriverManagerDataSource m_dataSource;
protected SqlMapClient m_sqlMapClient;
private SearchRefuseDao m_dao;
protected void setUp() {
try {
reader = Resources.getResourceAsReader(resource);
m_dataSource = new SingleConnectionDataSource();
m_dataSource.setDriverClassName("org.hsqldb.jdbcDriver");
System.out.println("driver OK!! ");
m_dataSource.setUrl("jdbc:hsqldb:svuni000.replynet.prv:1522:AHZ7O01S");
m_dataSource.setUsername("AHZ7OP1000");
m_dataSource.setPassword("AHZ7OP1000");
System.out.println("data source created");
m_sqlMapClient =
SqlMapClientBuilder.buildSqlMapClient(reader);
System.out.println("sql map created");
m_dao.setDataSource(m_dataSource);
System.out.println("Setted data source on DAO");
m_dao.setSqlMapClient(m_sqlMapClient);
System.out.println("Setted sql map on DAO");
} catch (CannotGetJdbcConnectionException e) {
System.out.println("no jdbc connection");
e.printStackTrace();
} catch (IOException e) {
System.out.println("IO Exception");
e.printStackTrace();
}
}
public void tearDown() {
}
public void testProva(){
bean = new SearchBean();
bean.setFonte("ACDEK100");
Integer dimStat = service.findCountStatisticGroup(bean);
assertEquals(584, dimStat.intValue());
}
}
***********************************************************************
The test-sql-map-config.xml file is:
************************************************************************
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config
2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<!--
List of all iBatis SQL maps grouped by package name.
-->
<sqlMapConfig>
<settings useStatementNamespaces="true" />
<sqlMap resource="com/fiat/mida/model/dashboard/dao/SearchRefuse.xml" />
</sqlMapConfig>
************************************************************************
And the SearchRefuseDao class is:
**************************************************************************
package com.fiat.mida.model.dashboard.dao;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
import com.fiat.mida.model.dashboard.SearchBean;
public class SearchRefuseDao extends SqlMapClientDaoSupport {
/** Map for a single thread to hold query parameters. */
private static ThreadLocal messageKeyOfThread = new ThreadLocal() {
protected Object initialValue() {
return new HashMap(3);
}
};
/**
* conta il numero di statistiche degli scarti che soddisfano i criteri
di
* ricerca. Serve per la paginazione
*
* @param bean:
* parametri di ricerca
* @return: il numero di record di statistiche
*/
public Integer getCountStatistics(SearchBean bean) {
Map messageKey = (Map) messageKeyOfThread.get();
messageKey.put("sourceCode", bean.getFonte());
messageKey.put("dataAcq", bean.getDati());
return (Integer) getSqlMapClientTemplate().queryForObject(
"SearchRefuse.getCountStatisticGroup",
messageKey);
}
}
************************************************************
When I run this TestCase I have this output:
Apr 20, 2007 1:27:41 PM
org.springframework.jdbc.datasource.DriverManagerDataSource
setDriverClassName
INFO: Loaded JDBC driver: org.hsqldb.jdbcDriver
driver OK!!
data source created
sql map created
And I don't know why my test stop at that point.
Someone could help me ?
Thanks a lot for any suggestion,
Have a good day,
Francesco
--
View this message in context:
http://www.nabble.com/JUnit-Test-with-IBatis-tf3615809.html#a10098759
Sent from the iBATIS - User - Java mailing list archive at Nabble.com.