From f13de2c8a6b62d8a2835edae559ac8a9f3f37f19 Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Fri, 13 Jul 2018 19:57:56 +0200 Subject: [PATCH] ADD: Testcase for delete with cache --- .../org/tests/delete/TestDeleteByQuery.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/test/java/org/tests/delete/TestDeleteByQuery.java b/src/test/java/org/tests/delete/TestDeleteByQuery.java index 47c1c7ff8..e19bdf821 100644 --- a/src/test/java/org/tests/delete/TestDeleteByQuery.java +++ b/src/test/java/org/tests/delete/TestDeleteByQuery.java @@ -9,6 +9,7 @@ import io.ebean.annotation.Platform; import org.tests.model.basic.BBookmarkUser; import org.tests.model.basic.Contact; +import org.tests.model.basic.Country; import org.tests.model.basic.Customer; import org.tests.model.basic.ResetBasicData; import org.ebeantest.LoggedSqlCollector; @@ -170,4 +171,22 @@ public class TestDeleteByQuery extends BaseTestCase { Contact contactFind = Ebean.find(Contact.class, contact.getId()); assertThat(contactFind).isNull(); } + + @Test + public void deleteByPredicateCached() { + + Country country = new Country(); + country.setCode("XX"); + country.setName("SecretName"); + Ebean.save(country); + Query query = Ebean.find(Country.class).where().eq("name", "SecretName").setUseQueryCache(true); + + assertThat(query.findList()).hasSize(1); + assertThat(query.findCount()).isEqualTo(1); + + Ebean.find(Country.class).where().eq("name", "SecretName").delete(); + //Ebean.getDefaultServer().getPluginApi().getBeanType(Country.class).clearQueryCache(); + assertThat(query.findList()).hasSize(0); + assertThat(query.findCount()).isEqualTo(0); + } }