#3216 - Fix querybean generation for @Embedded beans (fix for 13.22.0 change)

Version 13.22.0 added a change to query bean generation that has an issue for
embedded beans. This fixes that issue.
This commit is contained in:
Rob Bygrave
2023-09-11 23:01:44 +12:00
parent 0842a3f3e2
commit f03892a4bd
5 changed files with 163 additions and 28 deletions
@@ -0,0 +1,44 @@
package org.querytest;
import io.ebean.DB;
import org.example.domain.CaoBean;
import org.example.domain.CaoKey;
import org.example.domain.query.QCaoBean;
import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
class QueryCaoBeanTest {
@Test
void withEmbeddedId() {
insertTestData();
List<CaoBean> list = new QCaoBean()
.key.type.eq(3)
.findList();
assertThat(list).hasSize(2);
for (CaoBean caoBean : list) {
assertThat(caoBean.getKey().type()).isEqualTo(3);
}
}
private static void insertTestData() {
var key = new CaoKey(42, 3);
var bean = new CaoBean();
bean.setKey(key);
bean.setDescription("hi");
DB.save(bean);
var key2 = new CaoKey(43, 3);
var bean2 = new CaoBean();
bean2.setKey(key2);
bean2.setDescription("hi2");
DB.save(bean2);
}
}