// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/DbQuerydslTestModule.java
// public class DbQuerydslTestModule extends AbstractModule {
// 
// 	@Override
// 	protected void configure() {
// 		install(new GuiceConfModule());
// 		install(new DataSourceModule());
// 		install(new GuiceDbTestModule());
// 	}
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/QUser.java
// @Generated("com.querydsl.sql.codegen.MetaDataSerializer")
// public class QUser extends com.querydsl.sql.RelationalPathBase<User> {
// 
//     private static final long serialVersionUID = -50309753;
// 
//     public static final QUser user = new QUser("USER");
// 
//     public final BooleanPath active = createBoolean("active");
// 
//     public final DateTimePath<java.time.LocalDateTime> creationDate = createDateTime("creationDate", java.time.LocalDateTime.class);
// 
//     public final NumberPath<Long> id = createNumber("id", Long.class);
// 
//     public final StringPath name = createString("name");
// 
//     public final com.querydsl.sql.PrimaryKey<User> constraint2 = createPrimaryKey(id);
// 
//     public QUser(String variable) {
//         super(User.class, forVariable(variable), "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public QUser(String variable, String schema, String table) {
//         super(User.class, forVariable(variable), schema, table);
//         addMetadata();
//     }
// 
//     public QUser(Path<? extends User> path) {
//         super(path.getType(), path.getMetadata(), "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public QUser(PathMetadata metadata) {
//         super(User.class, metadata, "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public void addMetadata() {
//         addMetadata(active, ColumnMetadata.named("ACTIVE").withIndex(3).ofType(Types.BOOLEAN).withSize(1));
//         addMetadata(creationDate, ColumnMetadata.named("CREATION_DATE").withIndex(4).ofType(Types.TIMESTAMP).withSize(23).withDigits(10));
//         addMetadata(id, ColumnMetadata.named("ID").withIndex(1).ofType(Types.BIGINT).withSize(19).notNull());
//         addMetadata(name, ColumnMetadata.named("NAME").withIndex(2).ofType(Types.VARCHAR).withSize(255));
//     }
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/User.java
// @Generated("com.coreoz.plume.db.querydsl.generation.IdBeanSerializer")
// public class User extends com.coreoz.plume.db.querydsl.crud.CrudEntityQuerydsl {
// 
//     @Column("ACTIVE")
//     private Boolean active;
// 
//     @Column("CREATION_DATE")
//     private java.time.LocalDateTime creationDate;
// 
//     @Column("ID")
//     private Long id;
// 
//     @Column("NAME")
//     private String name;
// 
//     public Boolean getActive() {
//         return active;
//     }
// 
//     public void setActive(Boolean active) {
//         this.active = active;
//     }
// 
//     public java.time.LocalDateTime getCreationDate() {
//         return creationDate;
//     }
// 
//     public void setCreationDate(java.time.LocalDateTime creationDate) {
//         this.creationDate = creationDate;
//     }
// 
//     public Long getId() {
//         return id;
//     }
// 
//     public void setId(Long id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     @Override
//     public boolean equals(Object o) {
//         if (id == null) {
//             return super.equals(o);
//         }
//         if (!(o instanceof User)) {
//             return false;
//         }
//         User obj = (User) o;
//         return id.equals(obj.id);
//     }
// 
//     @Override
//     public int hashCode() {
//         if (id == null) {
//             return super.hashCode();
//         }
//         final int prime = 31;
//         int result = 1;
//         result = prime * result + id.hashCode();
//         return result;
//     }
// 
//     @Override
//     public String toString() {
//         return "User#" + id;
//     }
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/UserDao.java
// @Singleton
// public class UserDao extends CrudDaoQuerydsl<User> {
// 
// 	@Inject
// 	public UserDao(TransactionManagerQuerydsl transactionManagerQuerydsl) {
// 		super(transactionManagerQuerydsl, QUser.user);
// 	}
// 
// }


import static org.assertj.core.api.Assertions.assertThat;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.List;
import javax.inject.Inject;
import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.junit.runner.RunWith;
import com.carlosbecker.guice.GuiceModules;
import com.carlosbecker.guice.GuiceTestRunner;
import com.coreoz.plume.db.querydsl.DbQuerydslTestModule;
import com.coreoz.plume.db.querydsl.db.QUser;
import com.coreoz.plume.db.querydsl.db.User;
import com.coreoz.plume.db.querydsl.db.UserDao;
package com.coreoz.plume.db.querydsl.crud;






@RunWith(GuiceTestRunner.class)
@GuiceModules(DbQuerydslTestModule.class)
public class CrudDaoQuerydslTest {

	@Inject
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/DbQuerydslTestModule.java
// public class DbQuerydslTestModule extends AbstractModule {
// 
// 	@Override
// 	protected void configure() {
// 		install(new GuiceConfModule());
// 		install(new DataSourceModule());
// 		install(new GuiceDbTestModule());
// 	}
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/QUser.java
// @Generated("com.querydsl.sql.codegen.MetaDataSerializer")
// public class QUser extends com.querydsl.sql.RelationalPathBase<User> {
// 
//     private static final long serialVersionUID = -50309753;
// 
//     public static final QUser user = new QUser("USER");
// 
//     public final BooleanPath active = createBoolean("active");
// 
//     public final DateTimePath<java.time.LocalDateTime> creationDate = createDateTime("creationDate", java.time.LocalDateTime.class);
// 
//     public final NumberPath<Long> id = createNumber("id", Long.class);
// 
//     public final StringPath name = createString("name");
// 
//     public final com.querydsl.sql.PrimaryKey<User> constraint2 = createPrimaryKey(id);
// 
//     public QUser(String variable) {
//         super(User.class, forVariable(variable), "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public QUser(String variable, String schema, String table) {
//         super(User.class, forVariable(variable), schema, table);
//         addMetadata();
//     }
// 
//     public QUser(Path<? extends User> path) {
//         super(path.getType(), path.getMetadata(), "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public QUser(PathMetadata metadata) {
//         super(User.class, metadata, "PUBLIC", "USER");
//         addMetadata();
//     }
// 
//     public void addMetadata() {
//         addMetadata(active, ColumnMetadata.named("ACTIVE").withIndex(3).ofType(Types.BOOLEAN).withSize(1));
//         addMetadata(creationDate, ColumnMetadata.named("CREATION_DATE").withIndex(4).ofType(Types.TIMESTAMP).withSize(23).withDigits(10));
//         addMetadata(id, ColumnMetadata.named("ID").withIndex(1).ofType(Types.BIGINT).withSize(19).notNull());
//         addMetadata(name, ColumnMetadata.named("NAME").withIndex(2).ofType(Types.VARCHAR).withSize(255));
//     }
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/User.java
// @Generated("com.coreoz.plume.db.querydsl.generation.IdBeanSerializer")
// public class User extends com.coreoz.plume.db.querydsl.crud.CrudEntityQuerydsl {
// 
//     @Column("ACTIVE")
//     private Boolean active;
// 
//     @Column("CREATION_DATE")
//     private java.time.LocalDateTime creationDate;
// 
//     @Column("ID")
//     private Long id;
// 
//     @Column("NAME")
//     private String name;
// 
//     public Boolean getActive() {
//         return active;
//     }
// 
//     public void setActive(Boolean active) {
//         this.active = active;
//     }
// 
//     public java.time.LocalDateTime getCreationDate() {
//         return creationDate;
//     }
// 
//     public void setCreationDate(java.time.LocalDateTime creationDate) {
//         this.creationDate = creationDate;
//     }
// 
//     public Long getId() {
//         return id;
//     }
// 
//     public void setId(Long id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     @Override
//     public boolean equals(Object o) {
//         if (id == null) {
//             return super.equals(o);
//         }
//         if (!(o instanceof User)) {
//             return false;
//         }
//         User obj = (User) o;
//         return id.equals(obj.id);
//     }
// 
//     @Override
//     public int hashCode() {
//         if (id == null) {
//             return super.hashCode();
//         }
//         final int prime = 31;
//         int result = 1;
//         result = prime * result + id.hashCode();
//         return result;
//     }
// 
//     @Override
//     public String toString() {
//         return "User#" + id;
//     }
// 
// }
// 
// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/db/UserDao.java
// @Singleton
// public class UserDao extends CrudDaoQuerydsl<User> {
// 
// 	@Inject
// 	public UserDao(TransactionManagerQuerydsl transactionManagerQuerydsl) {
// 		super(transactionManagerQuerydsl, QUser.user);
// 	}
// 
// }


// Path: plume-db-querydsl/src/test/java/com/coreoz/plume/db/querydsl/crud/CrudDaoQuerydslTest.java
import static org.assertj.core.api.Assertions.assertThat;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.List;
import javax.inject.Inject;
import org.assertj.core.api.Assertions;
import org.junit.Test;
import org.junit.runner.RunWith;
import com.carlosbecker.guice.GuiceModules;
import com.carlosbecker.guice.GuiceTestRunner;
import com.coreoz.plume.db.querydsl.DbQuerydslTestModule;
import com.coreoz.plume.db.querydsl.db.QUser;
import com.coreoz.plume.db.querydsl.db.User;
import com.coreoz.plume.db.querydsl.db.UserDao;

package com.coreoz.plume.db.querydsl.crud;






@RunWith(GuiceTestRunner.class)
@GuiceModules(DbQuerydslTestModule.class)
public class CrudDaoQuerydslTest {

	@Inject
	UserDao userDao;