mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
#919 - io.ebean package initial
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
package org.tests.model.bridge;
|
||||
|
||||
import io.ebean.BaseTestCase;
|
||||
import io.ebean.Ebean;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class TestExplicitM2MBridgeTable extends BaseTestCase {
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
|
||||
BUser user = new BUser("Rob");
|
||||
BSite site = new BSite("avaje.org");
|
||||
|
||||
Ebean.save(user);
|
||||
Ebean.save(site);
|
||||
|
||||
insertUpdateBridge(user, site);
|
||||
insertUpdateBridgeB(user, site);
|
||||
insertUpdateBridgeC(user, site);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test where matching by db column naming convention.
|
||||
*/
|
||||
private void insertUpdateBridge(BUser user, BSite site) {
|
||||
|
||||
BSiteUser access = new BSiteUser(BAccessLevel.ONE, site, user);
|
||||
Ebean.save(access);
|
||||
|
||||
access.setAccessLevel(BAccessLevel.TWO);
|
||||
Ebean.save(access);
|
||||
|
||||
List<BSiteUser> list = Ebean.find(BSiteUser.class).findList();
|
||||
assertThat(list).isNotEmpty();
|
||||
|
||||
for (BSiteUser bridge : list) {
|
||||
assertThat(bridge.getId().siteId).isEqualTo(bridge.getSite().id);
|
||||
assertThat(bridge.getId().userId).isEqualTo(bridge.getUser().id);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test where matching by property name.
|
||||
*/
|
||||
private void insertUpdateBridgeB(BUser user, BSite site) {
|
||||
|
||||
BSiteUserB access = new BSiteUserB(BAccessLevel.ONE, site, user);
|
||||
Ebean.save(access);
|
||||
|
||||
access.setAccessLevel(BAccessLevel.TWO);
|
||||
Ebean.save(access);
|
||||
|
||||
List<BSiteUserB> list = Ebean.find(BSiteUserB.class).findList();
|
||||
assertThat(list).isNotEmpty();
|
||||
|
||||
for (BSiteUserB bridge : list) {
|
||||
assertThat(bridge.getId().site).isEqualTo(bridge.getSite().id);
|
||||
assertThat(bridge.getId().user).isEqualTo(bridge.getUser().id);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test where matching by explicit @JoinColumn.
|
||||
*/
|
||||
private void insertUpdateBridgeC(BUser user, BSite site) {
|
||||
|
||||
BSiteUserC access = new BSiteUserC(BAccessLevel.ONE, site, user);
|
||||
Ebean.save(access);
|
||||
|
||||
access.setAccessLevel(BAccessLevel.TWO);
|
||||
Ebean.save(access);
|
||||
|
||||
List<BSiteUserC> list = Ebean.find(BSiteUserC.class).findList();
|
||||
assertThat(list).isNotEmpty();
|
||||
|
||||
for (BSiteUserC bridge : list) {
|
||||
assertThat(bridge.getId().siteUid).isEqualTo(bridge.getSite().id);
|
||||
assertThat(bridge.getId().userUid).isEqualTo(bridge.getUser().id);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user