package cn.org.rapid_framework.web.session.store; import java.util.HashMap; import java.util.Map; import org.junit.Before; import org.junit.Test; import static org.junit.Assert.*; import org.springframework.mock.web.MockHttpServletRequest; import org.springframework.mock.web.MockHttpServletResponse; import cn.org.rapid_framework.test.hsql.HSQLMemDataSourceUtils; public class JdbcSessionStoreTest { JdbcSessionStore store = new JdbcSessionStore(); Map sessionData = new HashMap(); @Before public void setUp() { sessionData.put("empty", ""); sessionData.put("blank", " "); sessionData.put("null", null); sessionData.put("string", "string"); String sql = " CREATE TABLE http_session_store (session_id char(40) PRIMARY KEY,session_data varchar(4000),expire_date bigint ) "; store.setDataSource(HSQLMemDataSourceUtils.getDataSource(sql)); } @Test public void test_get_and_delete() { Map map = store.getSession("123",100); assertEquals(map.size(), 0); store.saveSession("123", sessionData,100); //test get map = store.getSession("123",5); assertEquals(map.size(), 4); assertMapEquals(map); //test delete store.deleteSession("123"); map = store.getSession("123",100); assertEquals(map.size(), 0); } @Test public void test_timeout() throws InterruptedException { store.saveSession("for_test_timeout_1", sessionData,3); Thread.sleep(5 * 1000); //test get Map map = store.getSession("for_test_timeout_1",0); assertEquals(0,map.size()); } private void assertMapEquals(Map map) { } }