mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
46 lines
1.2 KiB
Java
46 lines
1.2 KiB
Java
package org.tests.query.sqlquery;
|
|
|
|
import io.ebean.BaseTestCase;
|
|
import io.ebean.Ebean;
|
|
import io.ebean.Query;
|
|
import io.ebean.Platform;
|
|
import io.ebean.plugin.SpiServer;
|
|
import org.tests.model.basic.Customer;
|
|
import org.tests.model.basic.ResetBasicData;
|
|
import org.junit.Test;
|
|
|
|
import java.util.List;
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat;
|
|
|
|
public class TestNativeILikeExpression extends BaseTestCase {
|
|
|
|
@Test
|
|
public void test() {
|
|
|
|
boolean expectNative = isExpectNative();
|
|
|
|
ResetBasicData.reset();
|
|
|
|
Query<Customer> query = Ebean.find(Customer.class)
|
|
.where().ilike("name", "rob")
|
|
.query();
|
|
|
|
List<Customer> list = query.findList();
|
|
|
|
if (expectNative) {
|
|
assertThat(query.getGeneratedSql()).contains(" from o_customer t0 where t0.name ilike ?");
|
|
assertThat(list).isNotEmpty();
|
|
}
|
|
}
|
|
|
|
private boolean isExpectNative() {
|
|
|
|
SpiServer pluginApi = server().getPluginApi();
|
|
boolean expressionNativeIlike = pluginApi.getServerConfig().isExpressionNativeIlike();
|
|
Platform platform = pluginApi.getDatabasePlatform().getPlatform();
|
|
|
|
return expressionNativeIlike && platform == Platform.POSTGRES;
|
|
}
|
|
}
|