From da5d5296b6dbb55b998e754c1eb18864cdc336d7 Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Fri, 14 Oct 2016 21:09:23 +1300 Subject: [PATCH] #831 - EQL query language parser needs to throw exception on invalid query ... "find ..." - remove unhelpful tests --- .../com/avaje/tests/model/basic/Slot.java | 72 ------------------- .../query/TestNamedQueryWithNamedParam.java | 60 ---------------- 2 files changed, 132 deletions(-) delete mode 100644 src/test/java/com/avaje/tests/model/basic/Slot.java delete mode 100644 src/test/java/com/avaje/tests/query/TestNamedQueryWithNamedParam.java diff --git a/src/test/java/com/avaje/tests/model/basic/Slot.java b/src/test/java/com/avaje/tests/model/basic/Slot.java deleted file mode 100644 index 6a3a354dd..000000000 --- a/src/test/java/com/avaje/tests/model/basic/Slot.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.avaje.tests.model.basic; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; - -import org.joda.time.DateTime; - -@Entity -@NamedQueries({ - @NamedQuery(name = "findOverlappingSlots", -// query = "where slotState != 4 and oid != :thisOID and swimlaneOid = :thisSwimlaneOID and :thisPlannedBegin < plannedEnd and plannedBegin < :thisPlannedEnd") // See JODA AbstractInterval -// query = "where slotState != 4 and oid != :thisOID and swimlaneOid = :thisSwimlaneOID and :thisPlannedBegin < plannedEnd") - query = "where :thisPlannedBegin < plannedEnd") // Doesn't work -// query = "where plannedEnd < :thisPlannedBegin") // Works -}) -public class Slot { - - @Id - private long oid; - - private long slotState; - - private long swimlaneOid; - - public long getSwimlaneOid() { - return swimlaneOid; - } - - public void setSwimlaneOid(long swimlaneOid) { - this.swimlaneOid = swimlaneOid; - } - - private DateTime plannedBegin; - - /** The planned end. */ - private DateTime plannedEnd; - - - public long getOid() { - return oid; - } - - public void setOid(long oid) { - this.oid = oid; - } - - public long getSlotState() { - return slotState; - } - - public void setSlotState(long slotState) { - this.slotState = slotState; - } - - public DateTime getPlannedBegin() { - return plannedBegin; - } - - public void setPlannedBegin(DateTime plannedBegin) { - this.plannedBegin = plannedBegin; - } - - public DateTime getPlannedEnd() { - return plannedEnd; - } - - public void setPlannedEnd(DateTime plannedEnd) { - this.plannedEnd = plannedEnd; - } -} diff --git a/src/test/java/com/avaje/tests/query/TestNamedQueryWithNamedParam.java b/src/test/java/com/avaje/tests/query/TestNamedQueryWithNamedParam.java deleted file mode 100644 index 7c5465953..000000000 --- a/src/test/java/com/avaje/tests/query/TestNamedQueryWithNamedParam.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.avaje.tests.query; - -import java.util.List; - -import org.joda.time.DateTime; -import org.junit.Assert; -import org.junit.Test; - -import com.avaje.ebean.BaseTestCase; -import com.avaje.ebean.Ebean; -import com.avaje.ebean.Query; -import com.avaje.tests.model.basic.Article; -import com.avaje.tests.model.basic.Section; -import com.avaje.tests.model.basic.Slot; - -public class TestNamedQueryWithNamedParam extends BaseTestCase { - - - @Test - public void testInvalidEQL() { - Section s0 = new Section("some content"); - String author1 = "auth1"; - Article a0 = new Article("art1", author1); - a0.addSection(s0); - - Ebean.save(a0); - - Section s1 = new Section("some content"); - String author2 = "auth2"; - Article a1 = new Article("art2", author2); - a1.addSection(s1); - - Ebean.save(a1); - - List
list = Ebean.find(Article.class).where().eq("author", author1).findList(); - - Assert.assertTrue(list.size() ==1); //<<<<<<<<<<<<< Works fine - - Query
query = Ebean.createQuery(Article.class, "find Article where name = :p0"); // Should throw an exception - query.setParameter("p0", author1); - list = query.findList(); - - Assert.assertTrue("Shouldn't get this far as the query is syntactically incorrect", list.size() ==1); // <<<<<<<<<<<<< fails - - } - - @Test - public void testNamedQuery() { - final Query query = - Ebean.createNamedQuery(Slot.class, "findOverlappingSlots"); - -// query.setParameter("thisOID", 1); -// query.setParameter("swimlaneOid", 1); - query.setParameter("thisPlannedBegin", new DateTime()); -// query.setParameter("thisPlannedEnd", new DateTime()); -// - query.findList(); - } - -}