diff --git a/querydsl-collections/src/test/java/com/mysema/query/collections/UniqueResultContract.java b/querydsl-collections/src/test/java/com/mysema/query/collections/UniqueResultContract.java
new file mode 100644
index 000000000..e6ec30b2b
--- /dev/null
+++ b/querydsl-collections/src/test/java/com/mysema/query/collections/UniqueResultContract.java
@@ -0,0 +1,14 @@
+package com.mysema.query.collections;
+
+import org.junit.Test;
+
+import com.mysema.query.NonUniqueResultException;
+
+public class UniqueResultContract extends AbstractQueryTest{
+
+ @Test(expected=NonUniqueResultException.class)
+ public void Unique_Result_Throws_Exception_On_Multiple_Results(){
+ MiniApi.from(cat, cats).where(cat.name.isNotNull()).uniqueResult(cat);
+ }
+
+}
diff --git a/querydsl-core/src/main/java/com/mysema/query/NonUniqueResultException.java b/querydsl-core/src/main/java/com/mysema/query/NonUniqueResultException.java
new file mode 100644
index 000000000..f5fb52d86
--- /dev/null
+++ b/querydsl-core/src/main/java/com/mysema/query/NonUniqueResultException.java
@@ -0,0 +1,19 @@
+package com.mysema.query;
+
+/**
+ * @author tiwe
+ *
+ */
+public class NonUniqueResultException extends QueryException{
+
+ private static final long serialVersionUID = -1757423191400510323L;
+
+ public NonUniqueResultException() {
+ super("Only one result is allowed for uniqueResult calls");
+ }
+
+ public NonUniqueResultException(String message) {
+ super(message);
+ }
+
+}
diff --git a/querydsl-core/src/main/java/com/mysema/query/Projectable.java b/querydsl-core/src/main/java/com/mysema/query/Projectable.java
index 3d6ae0193..bef86fa8c 100644
--- a/querydsl-core/src/main/java/com/mysema/query/Projectable.java
+++ b/querydsl-core/src/main/java/com/mysema/query/Projectable.java
@@ -196,6 +196,7 @@ public interface Projectable {
* @param first
* @param second
* @param rest
+ * @throws NonUniqueResultException if there is more than one matching result
* @return
*/
@Nullable
@@ -203,10 +204,9 @@ public interface Projectable {
/**
* return a unique result for the given projection or null if not result is found
- *
- *
for multiple results only the first one is returned
*
* @param args
+ * @throws NonUniqueResultException if there is more than one matching result
* @return
*/
@Nullable
@@ -214,12 +214,11 @@ public interface Projectable {
/**
* return a unique result for the given projection or null if not result is found
- *
- * for multiple results only the first one is returned
*
* @param
* return type
* @param projection
+ * @throws NonUniqueResultException if there is more than one matching result
* @return the result or null for an empty result
*/
@Nullable
diff --git a/querydsl-core/src/main/java/com/mysema/query/SimpleProjectable.java b/querydsl-core/src/main/java/com/mysema/query/SimpleProjectable.java
index 7d834f774..4caaf4591 100644
--- a/querydsl-core/src/main/java/com/mysema/query/SimpleProjectable.java
+++ b/querydsl-core/src/main/java/com/mysema/query/SimpleProjectable.java
@@ -49,7 +49,8 @@ public interface SimpleProjectable {
/**
* Get the projection as a unique result
- *
+ *
+ * @throws NonUniqueResultException if there is more than one matching result
* @return
*/
@Nullable
diff --git a/querydsl-core/src/main/java/com/mysema/query/support/ProjectableQuery.java b/querydsl-core/src/main/java/com/mysema/query/support/ProjectableQuery.java
index f9a9dee22..bb86a69de 100644
--- a/querydsl-core/src/main/java/com/mysema/query/support/ProjectableQuery.java
+++ b/querydsl-core/src/main/java/com/mysema/query/support/ProjectableQuery.java
@@ -13,6 +13,7 @@ import java.util.Map;
import org.apache.commons.collections15.IteratorUtils;
import com.mysema.commons.lang.CloseableIterator;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.Projectable;
import com.mysema.query.SearchResults;
import com.mysema.query.types.Expression;
@@ -128,15 +129,29 @@ public abstract class ProjectableQuery>
public Object[] uniqueResult(Expression>[] args) {
queryMixin.setUnique(true);
- Iterator it = iterate(args);
- return it.hasNext() ? it.next() : null;
+ return getUniqueResult(iterate(args));
}
@Override
public RT uniqueResult(Expression expr) {
queryMixin.setUnique(true);
- limit(1l);
- Iterator it = iterate(expr);
- return it.hasNext() ? it.next() : null;
+ if (queryMixin.getMetadata().getModifiers().getLimit() == null){
+ limit(2l);
+ }
+ return getUniqueResult(iterate(expr));
}
+
+ protected T getUniqueResult(Iterator it) {
+ if (it.hasNext()){
+ T rv = it.next();
+ if (it.hasNext()){
+ throw new NonUniqueResultException();
+ }
+ return rv;
+ }else{
+ return null;
+ }
+ }
+
+
}
diff --git a/querydsl-hibernate-search/src/main/java/com/mysema/query/search/SearchQuery.java b/querydsl-hibernate-search/src/main/java/com/mysema/query/search/SearchQuery.java
index 44c57dbb1..3d24b8e27 100644
--- a/querydsl-hibernate-search/src/main/java/com/mysema/query/search/SearchQuery.java
+++ b/querydsl-hibernate-search/src/main/java/com/mysema/query/search/SearchQuery.java
@@ -15,6 +15,7 @@ import org.hibernate.search.Search;
import com.mysema.commons.lang.Assert;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
import com.mysema.query.SearchResults;
@@ -159,7 +160,11 @@ public class SearchQuery implements SimpleQuery>, SimpleProjec
@SuppressWarnings("unchecked")
@Override
public T uniqueResult() {
- return (T) createQuery(false).uniqueResult();
+ try{
+ return (T) createQuery(false).uniqueResult();
+ }catch (org.hibernate.NonUniqueResultException e){
+ throw new NonUniqueResultException();
+ }
}
@Override
diff --git a/querydsl-hibernate-search/src/test/java/com/mysema/query/search/SearchQueryTest.java b/querydsl-hibernate-search/src/test/java/com/mysema/query/search/SearchQueryTest.java
index 3c80a2b7e..1cd4c53a2 100644
--- a/querydsl-hibernate-search/src/test/java/com/mysema/query/search/SearchQueryTest.java
+++ b/querydsl-hibernate-search/src/test/java/com/mysema/query/search/SearchQueryTest.java
@@ -15,6 +15,7 @@ import java.util.List;
import org.hibernate.Session;
import org.junit.Test;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.SearchResults;
import com.mysema.query.types.OrderSpecifier;
import com.mysema.query.types.expr.BooleanExpression;
@@ -57,6 +58,11 @@ public class SearchQueryTest extends AbstractQueryTest{
assertEquals(u, list.get(0));
}
+ @Test(expected=NonUniqueResultException.class)
+ public void Unique_Result_Throws_Exception_On_Multiple_Results(){
+ query().where(user.middleName.eq("X")).uniqueResult();
+ }
+
@Test
public void Ordering(){
BooleanExpression filter = user.middleName.eq("X");
diff --git a/querydsl-jdo/src/main/java/com/mysema/query/jdo/AbstractJDOQLQuery.java b/querydsl-jdo/src/main/java/com/mysema/query/jdo/AbstractJDOQLQuery.java
index fda6b0bda..85d5c21c3 100644
--- a/querydsl-jdo/src/main/java/com/mysema/query/jdo/AbstractJDOQLQuery.java
+++ b/querydsl-jdo/src/main/java/com/mysema/query/jdo/AbstractJDOQLQuery.java
@@ -24,6 +24,7 @@ import org.slf4j.LoggerFactory;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
@@ -270,9 +271,24 @@ public abstract class AbstractJDOQLQuery> extend
@Nullable
public RT uniqueResult(Expression expr) {
queryMixin.addToProjection(expr);
- Query query = createQuery(false);
- query.setUnique(true);
+ if (getMetadata().getModifiers().getLimit() == null){
+ limit(2);
+ }
+ Query query = createQuery(false);
reset();
- return (RT) execute(query);
+ Object rv = execute(query);
+ if (rv instanceof List){
+ List list = (List)rv;
+ if (!list.isEmpty()){
+ if (list.size() > 1){
+ throw new NonUniqueResultException();
+ }
+ return list.get(0);
+ }else{
+ return null;
+ }
+ }else{
+ return (RT)rv;
+ }
}
}
diff --git a/querydsl-jdo/src/test/java/com/mysema/query/jdo/BasicsTest.java b/querydsl-jdo/src/test/java/com/mysema/query/jdo/BasicsTest.java
index 8497f1add..b85d09cd6 100644
--- a/querydsl-jdo/src/test/java/com/mysema/query/jdo/BasicsTest.java
+++ b/querydsl-jdo/src/test/java/com/mysema/query/jdo/BasicsTest.java
@@ -17,6 +17,7 @@ import org.junit.Ignore;
import org.junit.Test;
import com.mysema.query.BooleanBuilder;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.jdo.test.domain.Book;
import com.mysema.query.jdo.test.domain.Product;
import com.mysema.query.jdo.test.domain.QBook;
@@ -67,6 +68,11 @@ public class BasicsTest extends AbstractJDOTest {
public void CountTests() {
assertEquals("count", 2, query().from(product).count());
}
+
+ @Test(expected=NonUniqueResultException.class)
+ public void Unique_Result_Throws_Exception_On_Multiple_Results(){
+ query().from(product).uniqueResult(product);
+ }
@Test
public void SimpleTest() throws IOException{
diff --git a/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/AbstractHibernateQuery.java b/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/AbstractHibernateQuery.java
index 8992a8646..55e6f016e 100644
--- a/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/AbstractHibernateQuery.java
+++ b/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/AbstractHibernateQuery.java
@@ -22,6 +22,7 @@ import org.slf4j.LoggerFactory;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
@@ -351,8 +352,12 @@ public abstract class AbstractHibernateQuery
String queryString = toQueryString();
logQuery(queryString);
Query query = createQuery(queryString, modifiers);
- reset();
- return (RT) query.uniqueResult();
+ reset();
+ try{
+ return (RT) query.uniqueResult();
+ }catch (org.hibernate.NonUniqueResultException e){
+ throw new NonUniqueResultException();
+ }
}
}
diff --git a/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/sql/HibernateSQLQuery.java b/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/sql/HibernateSQLQuery.java
index 19c24ace5..69d81c6e8 100644
--- a/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/sql/HibernateSQLQuery.java
+++ b/querydsl-jpa/src/main/java/com/mysema/query/jpa/hibernate/sql/HibernateSQLQuery.java
@@ -19,6 +19,7 @@ import org.slf4j.LoggerFactory;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
import com.mysema.query.SearchResults;
@@ -201,8 +202,12 @@ public final class HibernateSQLQuery extends AbstractSQLQuery
@SuppressWarnings("unchecked")
public RT uniqueResult(Expression expr) {
Query query = createQuery(expr);
- reset();
- return (RT) query.uniqueResult();
+ reset();
+ try{
+ return (RT) query.uniqueResult();
+ }catch (org.hibernate.NonUniqueResultException e){
+ throw new NonUniqueResultException();
+ }
}
/**
diff --git a/querydsl-jpa/src/main/java/com/mysema/query/jpa/impl/AbstractJPAQuery.java b/querydsl-jpa/src/main/java/com/mysema/query/jpa/impl/AbstractJPAQuery.java
index 0669248c1..7c1778a82 100644
--- a/querydsl-jpa/src/main/java/com/mysema/query/jpa/impl/AbstractJPAQuery.java
+++ b/querydsl-jpa/src/main/java/com/mysema/query/jpa/impl/AbstractJPAQuery.java
@@ -13,7 +13,6 @@ import java.util.Map;
import javax.annotation.Nullable;
import javax.persistence.EntityManager;
import javax.persistence.LockModeType;
-import javax.persistence.NoResultException;
import javax.persistence.Query;
import org.slf4j.Logger;
@@ -22,6 +21,7 @@ import org.slf4j.LoggerFactory;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
@@ -216,11 +216,12 @@ public abstract class AbstractJPAQuery> extends JP
reset();
try{
return (RT) query.getSingleResult();
- }catch(NoResultException e){
+ }catch(javax.persistence.NoResultException e){
logger.debug(e.getMessage(),e);
return null;
+ }catch(javax.persistence.NonUniqueResultException e){
+ throw new NonUniqueResultException();
}
-
}
@SuppressWarnings("unchecked")
diff --git a/querydsl-jpa/src/main/java/com/mysema/query/jpa/sql/JPASQLQuery.java b/querydsl-jpa/src/main/java/com/mysema/query/jpa/sql/JPASQLQuery.java
index c5684b56c..4dfa3538a 100644
--- a/querydsl-jpa/src/main/java/com/mysema/query/jpa/sql/JPASQLQuery.java
+++ b/querydsl-jpa/src/main/java/com/mysema/query/jpa/sql/JPASQLQuery.java
@@ -19,6 +19,7 @@ import org.slf4j.LoggerFactory;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
import com.mysema.query.SearchResults;
@@ -176,9 +177,11 @@ public final class JPASQLQuery extends AbstractSQLQuery implements
reset();
try{
return (RT) query.getSingleResult();
- }catch(NoResultException e){
+ }catch(javax.persistence.NoResultException e){
logger.debug(e.getMessage(),e);
return null;
+ }catch(javax.persistence.NonUniqueResultException e){
+ throw new NonUniqueResultException();
}
}
diff --git a/querydsl-lucene/src/main/java/com/mysema/query/lucene/AbstractLuceneQuery.java b/querydsl-lucene/src/main/java/com/mysema/query/lucene/AbstractLuceneQuery.java
index b667bde95..0d1af174f 100644
--- a/querydsl-lucene/src/main/java/com/mysema/query/lucene/AbstractLuceneQuery.java
+++ b/querydsl-lucene/src/main/java/com/mysema/query/lucene/AbstractLuceneQuery.java
@@ -14,6 +14,7 @@ import org.apache.lucene.search.Sort;
import com.mysema.commons.lang.CloseableIterator;
import com.mysema.commons.lang.EmptyCloseableIterator;
import com.mysema.commons.lang.IteratorAdapter;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
@@ -202,7 +203,7 @@ SimpleProjectable {
}
final ScoreDoc[] scoreDocs = searcher.search(createQuery(), maxDoc).scoreDocs;
if (scoreDocs.length > 1) {
- throw new QueryException("More than one result found!");
+ throw new NonUniqueResultException();
} else if (scoreDocs.length == 1) {
return transformer.transform(searcher.doc(scoreDocs[0].doc));
} else {
diff --git a/querydsl-mongodb/src/main/java/com/mysema/query/mongodb/MongodbQuery.java b/querydsl-mongodb/src/main/java/com/mysema/query/mongodb/MongodbQuery.java
index c08afebd3..a45d6f618 100644
--- a/querydsl-mongodb/src/main/java/com/mysema/query/mongodb/MongodbQuery.java
+++ b/querydsl-mongodb/src/main/java/com/mysema/query/mongodb/MongodbQuery.java
@@ -15,6 +15,7 @@ import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mysema.commons.lang.CloseableIterator;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryMetadata;
import com.mysema.query.QueryModifiers;
import com.mysema.query.SearchResults;
@@ -148,7 +149,15 @@ public class MongodbQuery implements SimpleQuery>, SimpleProj
@Override
public K uniqueResult() {
DBCursor c = createCursor().limit(1);
- return c.hasNext() ? transformer.transform(c.next()) : null;
+ if (c.hasNext()){
+ K rv = transformer.transform(c.next());
+ if (c.hasNext()){
+ throw new NonUniqueResultException();
+ }
+ return rv;
+ }else{
+ return null;
+ }
}
@Override
diff --git a/querydsl-mongodb/src/test/java/com/mysema/query/mongodb/MongodbQueryTest.java b/querydsl-mongodb/src/test/java/com/mysema/query/mongodb/MongodbQueryTest.java
index bddfceb61..579012321 100644
--- a/querydsl-mongodb/src/test/java/com/mysema/query/mongodb/MongodbQueryTest.java
+++ b/querydsl-mongodb/src/test/java/com/mysema/query/mongodb/MongodbQueryTest.java
@@ -20,6 +20,7 @@ import org.junit.Test;
import com.google.code.morphia.Datastore;
import com.google.code.morphia.Morphia;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.SearchResults;
import com.mysema.query.mongodb.domain.Address;
import com.mysema.query.mongodb.domain.City;
@@ -59,6 +60,11 @@ public class MongodbQueryTest {
public void UniqueResult(){
assertEquals("Jantunen", where(user.firstName.eq("Jaakko")).uniqueResult().getLastName());
}
+
+ @Test(expected=NonUniqueResultException.class)
+ public void UniqueResultContract(){
+ where(user.firstName.isNotNull()).uniqueResult();
+ }
@Test
public void LongPath(){
diff --git a/querydsl-sql/src/main/java/com/mysema/query/sql/AbstractSQLQuery.java b/querydsl-sql/src/main/java/com/mysema/query/sql/AbstractSQLQuery.java
index 5ab83d207..c3e53722b 100644
--- a/querydsl-sql/src/main/java/com/mysema/query/sql/AbstractSQLQuery.java
+++ b/querydsl-sql/src/main/java/com/mysema/query/sql/AbstractSQLQuery.java
@@ -27,6 +27,7 @@ import com.mysema.commons.lang.IteratorAdapter;
import com.mysema.query.DefaultQueryMetadata;
import com.mysema.query.JoinExpression;
import com.mysema.query.JoinFlag;
+import com.mysema.query.NonUniqueResultException;
import com.mysema.query.QueryException;
import com.mysema.query.QueryFlag;
import com.mysema.query.QueryMetadata;
@@ -548,10 +549,18 @@ public abstract class AbstractSQLQuery> extends
@Override
public RT uniqueResult(Expression expr) {
+ if (getMetadata().getModifiers().getLimit() == null
+ && !expr.toString().contains("count(")){
+ limit(2);
+ }
CloseableIterator iterator = iterate(expr);
try{
if (iterator.hasNext()){
- return iterator.next();
+ RT rv = iterator.next();
+ if (iterator.hasNext()){
+ throw new NonUniqueResultException();
+ }
+ return rv;
}else{
return null;
}
diff --git a/querydsl-sql/src/test/java/com/mysema/query/BeanPopulationBaseTest.java b/querydsl-sql/src/test/java/com/mysema/query/BeanPopulationBaseTest.java
index 4008c54a3..419fa090c 100644
--- a/querydsl-sql/src/test/java/com/mysema/query/BeanPopulationBaseTest.java
+++ b/querydsl-sql/src/test/java/com/mysema/query/BeanPopulationBaseTest.java
@@ -29,7 +29,7 @@ public abstract class BeanPopulationBaseTest extends AbstractBaseTest{
assertEquals(1l, update(e).populate(employee).where(e.id.eq(employee.getId())).execute());
// Query
- Employee smith = query().from(e).where(e.lastname.eq("Smith")).uniqueResult(e);
+ Employee smith = query().from(e).where(e.lastname.eq("Smith")).limit(1).uniqueResult(e);
assertEquals("John", smith.getFirstname());
// Delete (no changes needed)
@@ -50,18 +50,21 @@ public abstract class BeanPopulationBaseTest extends AbstractBaseTest{
// Query
Employee smith = extQuery().from(e).where(e.lastname.eq("Smith"))
+ .limit(1)
.uniqueResult(Employee.class, e.lastname, e.firstname);
assertEquals("John", smith.getFirstname());
assertEquals("Smith", smith.getLastname());
// Query with alias
smith = extQuery().from(e).where(e.lastname.eq("Smith"))
+ .limit(1)
.uniqueResult(Employee.class, e.lastname.as("lastname"), e.firstname.as("firstname"));
assertEquals("John", smith.getFirstname());
assertEquals("Smith", smith.getLastname());
// Query into custom type
OtherEmployee other = extQuery().from(e).where(e.lastname.eq("Smith"))
+ .limit(1)
.uniqueResult(OtherEmployee.class, e.lastname, e.firstname);
assertEquals("John", other.getFirstname());
assertEquals("Smith", other.getLastname());
diff --git a/querydsl-sql/src/test/java/com/mysema/query/SelectBaseTest.java b/querydsl-sql/src/test/java/com/mysema/query/SelectBaseTest.java
index 0e320ec40..e87b6c1e8 100644
--- a/querydsl-sql/src/test/java/com/mysema/query/SelectBaseTest.java
+++ b/querydsl-sql/src/test/java/com/mysema/query/SelectBaseTest.java
@@ -807,7 +807,7 @@ public abstract class SelectBaseTest extends AbstractBaseTest{
@Test
public void Unique_Constructor_Projection(){
// unique constructor projection
- IdName idAndName = query().from(survey).uniqueResult(new QIdName(survey.id, survey.name));
+ IdName idAndName = query().from(survey).limit(1).uniqueResult(new QIdName(survey.id, survey.name));
assertNotNull(idAndName);
assertNotNull(idAndName.getId());
assertNotNull(idAndName.getName());
@@ -817,7 +817,7 @@ public abstract class SelectBaseTest extends AbstractBaseTest{
@Test
public void Unique_Single(){
// unique single
- String s = query().from(survey).uniqueResult(survey.name);
+ String s = query().from(survey).limit(1).uniqueResult(survey.name);
assertNotNull(s);
}
@@ -825,13 +825,18 @@ public abstract class SelectBaseTest extends AbstractBaseTest{
@Test
public void Unique_Wildcard(){
// unique wildcard
- Object[] row = query().from(survey).uniqueResult(survey.all());
+ Object[] row = query().from(survey).limit(1).uniqueResult(survey.all());
assertNotNull(row);
assertEquals(2, row.length);
assertNotNull(row[0]);
assertNotNull(row[1]);
}
+
+ @Test(expected=NonUniqueResultException.class)
+ public void UniqueResultContract(){
+ query().from(employee).uniqueResult(employee.all());
+ }
@Test
public void Various() throws SQLException {
@@ -872,7 +877,7 @@ public abstract class SelectBaseTest extends AbstractBaseTest{
@SkipForQuoted
public void Wildcard_All() {
expectedQuery = "select * from EMPLOYEE2 e";
- query().from(employee).uniqueResult(Wildcard.all);
+ query().from(employee).list(Wildcard.all);
}
@Test