From d9cef737e33e968562c0a4ca072e0ab57fbcc7b6 Mon Sep 17 00:00:00 2001 From: rbygrave Date: Wed, 1 Sep 2021 09:02:01 +1200 Subject: [PATCH] #2335 Initial test work --- .../model/basic/cache/ESoftWithCache.java | 69 +++++++++++++++++++ .../basic/cache/TestCacheWithSoftDelete.java | 34 +++++++++ 2 files changed, 103 insertions(+) create mode 100644 ebean-core/src/test/java/org/tests/model/basic/cache/ESoftWithCache.java create mode 100644 ebean-core/src/test/java/org/tests/model/basic/cache/TestCacheWithSoftDelete.java diff --git a/ebean-core/src/test/java/org/tests/model/basic/cache/ESoftWithCache.java b/ebean-core/src/test/java/org/tests/model/basic/cache/ESoftWithCache.java new file mode 100644 index 000000000..d570e1e4a --- /dev/null +++ b/ebean-core/src/test/java/org/tests/model/basic/cache/ESoftWithCache.java @@ -0,0 +1,69 @@ +package org.tests.model.basic.cache; + +import io.ebean.Model; +import io.ebean.annotation.Cache; +import io.ebean.annotation.SoftDelete; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; +import javax.persistence.Version; + +@Cache +@Entity +@Table(name = "e_softwithcache") +public class ESoftWithCache extends Model { + + @Id + long id; + + String name; + + String description; + + @SoftDelete + boolean deleted; + + @Version + long version; + + public ESoftWithCache(String name) { + this.name = name; + } + + public long id() { + return id; + } + + public ESoftWithCache id(long id) { + this.id = id; + return this; + } + + public String name() { + return name; + } + + public ESoftWithCache name(String name) { + this.name = name; + return this; + } + + public String description() { + return description; + } + + public ESoftWithCache description(String description) { + this.description = description; + return this; + } + + public long version() { + return version; + } + + public ESoftWithCache version(long version) { + this.version = version; + return this; + } +} diff --git a/ebean-core/src/test/java/org/tests/model/basic/cache/TestCacheWithSoftDelete.java b/ebean-core/src/test/java/org/tests/model/basic/cache/TestCacheWithSoftDelete.java new file mode 100644 index 000000000..a4d8d5b7c --- /dev/null +++ b/ebean-core/src/test/java/org/tests/model/basic/cache/TestCacheWithSoftDelete.java @@ -0,0 +1,34 @@ +package org.tests.model.basic.cache; + +import io.ebean.BaseTestCase; +import io.ebean.DB; +import org.junit.Test; + +import java.util.List; + +import static org.assertj.core.api.Assertions.assertThat; + +public class TestCacheWithSoftDelete extends BaseTestCase { + + @Test + public void idIn_expect_hitCache() { + + ESoftWithCache bean = new ESoftWithCache("hello"); + DB.save(bean); + + final List found = DB.find(ESoftWithCache.class) + .where().idIn(bean.id()) + //.setUseCache(true) + .findList(); + + assertThat(found).hasSize(1); + + final List foundAgain = DB.find(ESoftWithCache.class) + .where().idIn(bean.id()) + //.setUseCache(true) + .findList(); + + assertThat(foundAgain).hasSize(1); + + } +}