package io.ebeaninternal.server.deploy; import io.ebean.BaseTestCase; import io.ebean.bean.BeanCollection; import io.ebean.bean.EntityBean; import org.tests.model.basic.Customer; import org.tests.model.basic.ResetBasicData; import org.junit.Test; import java.util.ArrayList; import java.util.List; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.*; public class BeanPropertyAssocManyTest extends BaseTestCase { BeanDescriptor customerDesc = spiEbeanServer().getBeanDescriptor(Customer.class); @SuppressWarnings("unchecked") BeanPropertyAssocMany contacts() { return (BeanPropertyAssocMany) customerDesc.getBeanProperty("contacts"); } @Test public void createReferenceIfNull_when_notBeanCollection_expect_null() { Customer customer = new Customer(); customer.setContacts(new ArrayList<>()); BeanCollection ref = contacts().createReferenceIfNull((EntityBean) customer); assertNull(ref); } @Test public void createReferenceIfNull_when_null_expect_ref() { Customer customer = new Customer(); customer.setContacts(null); BeanCollection ref = contacts().createReferenceIfNull((EntityBean) customer); assertNotNull(ref); assertTrue(ref.isReference()); } @Test public void findIdsByParentId() { ResetBasicData.reset(); List customerIds = new ArrayList<>(); customerIds.add(1L); customerIds.add(2L); List contactIdsForOne = contacts().findIdsByParentId(1L, null, null, null); List contactIdsForMultiple = contacts().findIdsByParentId(null, customerIds, null, null); assertThat(contactIdsForOne).isNotEmpty(); assertThat(contactIdsForMultiple).isNotEmpty(); } }