/** * Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved. * EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * http://www.ewcms.com */ package com.ewcms.plugin.externalds.manager.service; import static org.junit.Assert.*; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.mockito.ArgumentCaptor; import com.ewcms.plugin.externalds.manager.dao.BaseDSDAO; import com.ewcms.plugin.externalds.manager.service.BaseDSService; import com.ewcms.plugin.externalds.model.BaseDS; import com.ewcms.plugin.externalds.model.JdbcDS; import com.ewcms.plugin.externalds.model.JndiDS; public class BaseDSServiceTest { private BaseDSService baseDSService; private BaseDSDAO mockBaseDSDAO; @Before public void setUp() throws Exception { baseDSService = new BaseDSService(); mockBaseDSDAO = mock(BaseDSDAO.class); baseDSService.setBaseDSDAO(mockBaseDSDAO); } @After public void tearDown() throws Exception { } @Test public void testSaveOrUpdateJdbcDS() { BaseDS baseDS = getJdbcDS(); baseDSService.saveOrUpdateBaseDS(baseDS); ArgumentCaptor<JdbcDS> argument = ArgumentCaptor.forClass(JdbcDS.class); verify(mockBaseDSDAO).merge(argument.capture()); assertEquals(argument.getValue().getName(), getJdbcDS().getName()); assertEquals(argument.getValue().getUserName(), getJdbcDS().getUserName()); assertEquals(argument.getValue().getPassWord(), getJdbcDS().getPassWord()); assertEquals(argument.getValue().getConnUrl(), getJdbcDS().getConnUrl()); assertEquals(argument.getValue().getDriver(), getJdbcDS().getDriver()); assertEquals(argument.getValue().getRemarks(), getJdbcDS().getRemarks()); } @Test public void testSaveOrUpdateJndiDS(){ BaseDS baseDS = getJndiDS(); baseDSService.saveOrUpdateBaseDS(baseDS); ArgumentCaptor<JndiDS> argument = ArgumentCaptor.forClass(JndiDS.class); verify(mockBaseDSDAO).merge(argument.capture()); assertEquals(argument.getValue().getName(), getJndiDS().getName()); assertEquals(argument.getValue().getJndiName(), getJndiDS().getJndiName()); assertEquals(argument.getValue().getRemarks(), getJndiDS().getRemarks()); } @Test public void testDeletedBaseDS() { fail("Not yet implemented"); } private JdbcDS getJdbcDS(){ JdbcDS jdbcDS = new JdbcDS(); jdbcDS.setName("test-jdbc"); jdbcDS.setUserName("postgres"); jdbcDS.setPassWord("123456"); jdbcDS.setConnUrl("jdbc:postgresql://localhost/ewcms"); jdbcDS.setDriver("org.postgresql.Driver"); jdbcDS.setRemarks("test-jdbc"); return jdbcDS; } private JndiDS getJndiDS(){ JndiDS jndiDS = new JndiDS(); jndiDS.setJndiName("testJndi"); jndiDS.setName("test-jndi"); jndiDS.setRemarks("test-jndi"); return jndiDS; } }