Package es.ua.dccia.datos

Source Code of es.ua.dccia.datos.PeticionDaoTest

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package es.ua.dccia.datos;

import es.ua.dccia.dominio.Peticion;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.dbunit.DatabaseUnitException;
import org.dbunit.database.DatabaseConnection;
import org.dbunit.database.IDatabaseConnection;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.xml.FlatXmlDataSetBuilder;
import org.dbunit.operation.DatabaseOperation;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;

public class PeticionDaoTest {

    private static EntityManagerFactory emf;
    private static IDatabaseConnection connection;
    private static IDataSet dataset;

    @BeforeClass
    public static void initDatabaseTest() throws ClassNotFoundException, SQLException, DatabaseUnitException {
        emf = Persistence.createEntityManagerFactory("muevete");
        /*
        Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
        Connection jdbcConnection = (Connection) DriverManager
                .getConnection(
                "jdbc:derby:memory:unit-testing-jpa",
                "", "");
        */
         Class.forName("com.mysql.jdbc.Driver");
         Connection jdbcConnection = (Connection) DriverManager
               .getConnection(
                     "jdbc:mysql://localhost:3306/muevete_test",
                     "root", "adi");
        connection = new DatabaseConnection(jdbcConnection);

        FlatXmlDataSetBuilder flatXmlDataSetBuilder = new FlatXmlDataSetBuilder();
        flatXmlDataSetBuilder.setColumnSensing(true);
        dataset = flatXmlDataSetBuilder.build(Thread.currentThread()
                .getContextClassLoader()
                .getResourceAsStream("db/test-daos-dataset.xml"));
    }

    @AfterClass
    public static void closeEntityManagerFactory() throws Exception {
        DatabaseOperation.DELETE_ALL.execute(connection, dataset);
        if (emf != null) {
            emf.close();
        }
    }

    @Before
    public void cleanDB() throws Exception {
        DatabaseOperation.CLEAN_INSERT.execute(connection, dataset);
    }

    @Test
    public void testBuscarPeticiones() {
        EntityManager em = emf.createEntityManager();
        em.getTransaction().begin();
        PeticionDao pdao = new PeticionDao(em);
        List<Peticion> destacadas = pdao.findDestacadas(5);
        assertEquals(2, destacadas.size());
        assertEquals(2, destacadas.get(0).getId());
        em.getTransaction().commit();
    }
}
TOP

Related Classes of es.ua.dccia.datos.PeticionDaoTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.