From 6fb28d7ded18c1cc0614907de2c4c5c3f7c8ee20 Mon Sep 17 00:00:00 2001 From: rbygrave Date: Tue, 13 Jul 2021 12:54:21 +1200 Subject: [PATCH] #2255 Specific test for setParameter cannot assigning the value when parameter in selecting section of query --- .../org/tests/query/sqlquery/SqlQueryTests.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/ebean-core/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java b/ebean-core/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java index 572ebf39e..996f08bbe 100644 --- a/ebean-core/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java +++ b/ebean-core/src/test/java/org/tests/query/sqlquery/SqlQueryTests.java @@ -5,6 +5,8 @@ import io.ebean.DB; import io.ebean.RowMapper; import io.ebean.SqlQuery; import io.ebean.SqlRow; +import io.ebean.annotation.ForPlatform; +import io.ebean.annotation.Platform; import io.ebean.meta.MetaTimedMetric; import org.ebeantest.LoggedSqlCollector; import org.junit.Test; @@ -24,6 +26,19 @@ import static org.junit.Assert.assertEquals; public class SqlQueryTests extends BaseTestCase { + @ForPlatform(Platform.H2) + @Test + public void selectFunction() { + + String sql = "select length(?)"; + final Long val = DB.sqlQuery(sql).setParameter("NotVeryLong").mapToScalar(Long.class).findOne(); + assertThat(val).isEqualTo(11); + + String sql2 = "select length(:val)"; + final Long val2 = DB.sqlQuery(sql2).setParameter("val", "NotVeryLong").mapToScalar(Long.class).findOne(); + assertThat(val2).isEqualTo(11); + } + @Test public void findSingleAttributeList_decimal() {