/*
* Copyright 2011 Objectos, Fábrica de Software LTDA.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package br.com.objectos.way.dbunit;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.instanceOf;
import org.dbunit.IDatabaseTester;
import org.dbunit.JdbcDatabaseTester;
import org.testng.annotations.Test;
import br.com.objectos.way.base.sql.Credential;
import br.com.objectos.way.base.sql.Credentials;
import com.google.inject.Guice;
import com.google.inject.Module;
/**
* @author marcio.endo@objectos.com.br (Marcio Endo)
*/
@Test
public class WayDBUnitModuleBuilderTest {
public void it_should_build_a_jdbc_module() {
Credential credential = Credentials.forMysql()
.usingDefaultDriver()
.server("localhost")
.port("jdbc.port", 9000)
.db("WAY_DBUNIT")
.user("jdbc.user", "")
.password("jdbc.password", "")
.get();
Module module = WayDBUnit.using(credential)
.buildModule();
IDatabaseTester tester = Guice.createInjector(module).getInstance(IDatabaseTester.class);
assertThat(tester, instanceOf(JdbcDatabaseTester.class));
assertThat(tester.toString(), containsString("=com.mysql.jdbc.Driver"));
assertThat(tester.toString(), containsString("=jdbc:mysql://localhost"));
}
}