All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jpattern.orm.test.crud.OrmCRUDQueryGeneratorTest Maven / Gradle / Ivy

package com.jpattern.orm.test.crud;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;

import org.junit.Test;

import com.jpattern.orm.BaseTestShared;
import com.jpattern.orm.classmapper.ClassMapperBuilder;
import com.jpattern.orm.classmapper.ClassTableMapBuilder;
import com.jpattern.orm.classmapper.IClassMapper;
import com.jpattern.orm.classmapper.IClassMapperBuilder;
import com.jpattern.orm.classmapper.TableMap;
import com.jpattern.orm.crud.IOrmCRUDQuery;
import com.jpattern.orm.crud.IOrmCRUDQueryGenerator;
import com.jpattern.orm.crud.OrmCRUDQueryGenerator;
import com.jpattern.orm.dialect.DefaultDialect;
import com.jpattern.orm.session.SessionProvider;
import com.jpattern.orm.test.domain.Employee;
import com.jpattern.orm.test.domain.People;
import com.jpattern.orm.test.domain.Zoo_People;

/**
 * 
 * @author Francesco Cina
 *
 * 01/giu/2011
 */
public class OrmCRUDQueryGeneratorTest extends BaseTestShared {

	@Override
	protected void setUp() throws Exception {
	}

	@Override
	protected void tearDown() throws Exception {
	}

	@Test
	public void testOrmProvider() throws Exception {
		final SessionProvider connectionProvider = this.getJPOrm().getSessionProvider();
		this.ormCrudWithSequence(connectionProvider);
		this.ormCrud(connectionProvider);
		this.ormCrudWithSchema(connectionProvider);
		this.ormCrudSelectFromClause(connectionProvider);
	}

	public void ormCrudWithSequence(SessionProvider sessionProvider) throws Exception {
		final Class clazz = People.class;
		final TableMap tableMap = new TableMap();
		new ClassTableMapBuilder(clazz, tableMap).updateTableMap();
		final IClassMapperBuilder classMapperGenerator = new ClassMapperBuilder(clazz, tableMap);
		final IClassMapper classMapper = classMapperGenerator.generate();
		assertNotNull(classMapper);

		final IOrmCRUDQueryGenerator ormGenerator = new OrmCRUDQueryGenerator(new DefaultDialect(), classMapper);
		final IOrmCRUDQuery ormCrudQuery = ormGenerator.generate();
		assertNotNull(ormCrudQuery);

		System.out.println(ormCrudQuery.getLoadQuery());
		System.out.println(ormCrudQuery.getUpdateQuery());
		System.out.println(ormCrudQuery.getDeleteQuery());
		System.out.println(ormCrudQuery.getSaveQuery());
	}

	public void ormCrud(SessionProvider sessionProvider) throws Exception {
		final Class clazz = Employee.class;
		final TableMap tableMap = new TableMap();
		new ClassTableMapBuilder(clazz, tableMap).updateTableMap();
		final IClassMapperBuilder classMapperGenerator = new ClassMapperBuilder(clazz, tableMap);
		final IClassMapper classMapper = classMapperGenerator.generate();
		assertNotNull(classMapper);

		final IOrmCRUDQueryGenerator ormGenerator = new OrmCRUDQueryGenerator(new DefaultDialect(), classMapper);
		final IOrmCRUDQuery ormCrudQuery = ormGenerator.generate();
		assertNotNull(ormCrudQuery);

		System.out.println(ormCrudQuery.getLoadQuery());
		System.out.println(ormCrudQuery.getUpdateQuery());
		System.out.println(ormCrudQuery.getDeleteQuery());
		System.out.println(ormCrudQuery.getSaveQuery());
	}

	public void ormCrudWithSchema(SessionProvider sessionProvider) throws Exception {
		final Class clazz = Zoo_People.class;
		final TableMap tableMap = new TableMap();
		new ClassTableMapBuilder(clazz, tableMap).updateTableMap();
		final IClassMapperBuilder classMapperGenerator = new ClassMapperBuilder(clazz, tableMap);
		final IClassMapper classMapper = classMapperGenerator.generate();
		assertNotNull(classMapper);

		final IOrmCRUDQueryGenerator ormGenerator = new OrmCRUDQueryGenerator(new DefaultDialect(), classMapper);
		final IOrmCRUDQuery ormCrudQuery = ormGenerator.generate();
		assertNotNull(ormCrudQuery);

		System.out.println(ormCrudQuery.getLoadQuery());
		System.out.println(ormCrudQuery.getUpdateQuery());
		System.out.println(ormCrudQuery.getDeleteQuery());
		System.out.println(ormCrudQuery.getSaveQuery());
	}

	public void ormCrudSelectFromClause(SessionProvider sessionProvider) throws Exception {
		final Class clazz = Zoo_People.class;
		final TableMap tableMap = new TableMap();
		new ClassTableMapBuilder(clazz, tableMap).updateTableMap();
		final IClassMapperBuilder classMapperGenerator = new ClassMapperBuilder(clazz, tableMap);
		final IClassMapper classMapper = classMapperGenerator.generate();
		assertNotNull(classMapper);

		final IOrmCRUDQueryGenerator ormGenerator = new OrmCRUDQueryGenerator(new DefaultDialect(), classMapper);
		final IOrmCRUDQuery ormCrudQuery = ormGenerator.generate();
		assertNotNull(ormCrudQuery);

		System.out.println(ormCrudQuery.getBaseSelectClause());
		System.out.println(ormCrudQuery.getBaseSelectClause("alias."));
		System.out.println(ormCrudQuery.getBaseFromClause());

		assertEquals("ZOO.PEOPLE.FIRSTCLOB, ZOO.PEOPLE.ID, ZOO.PEOPLE.SECONDBLOB, ZOO.PEOPLE.BIRTHDATE, ZOO.PEOPLE.LASTNAME, ZOO.PEOPLE.FIRSTNAME, ZOO.PEOPLE.FIRSTBLOB, ZOO.PEOPLE.DEATHDATE", ormCrudQuery.getBaseSelectClause());
		assertEquals("alias.FIRSTCLOB, alias.ID, alias.SECONDBLOB, alias.BIRTHDATE, alias.LASTNAME, alias.FIRSTNAME, alias.FIRSTBLOB, alias.DEATHDATE", ormCrudQuery.getBaseSelectClause("alias."));
		assertEquals("ZOO.PEOPLE", ormCrudQuery.getBaseFromClause());

	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy