Polishing.

See #3041
This commit is contained in:
Greg L. Turnquist
2023-07-21 13:53:08 -05:00
parent a55480f245
commit 572a77fb4b
6 changed files with 16 additions and 8 deletions

3
.gitignore vendored
View File

@@ -8,3 +8,6 @@ target/
.sonar4clipse
*.sonar4clipseExternals
.DS_Store
node
node_modules
package*.json

View File

@@ -196,8 +196,7 @@ public enum PersistenceProvider implements QueryExtractor, ProxyIdAccessor, Quer
Class<?> type;
try {
type = ClassUtils.forName("org.hibernate.query.TypedParameterValue",
PersistenceProvider.class.getClassLoader());
type = ClassUtils.forName("org.hibernate.query.TypedParameterValue", PersistenceProvider.class.getClassLoader());
} catch (ClassNotFoundException e) {
type = null;
}

View File

@@ -72,6 +72,7 @@ public class ParameterBinder {
public <T extends Query> T bind(T jpaQuery, QueryParameterSetter.QueryMetadata metadata,
JpaParametersParameterAccessor accessor) {
bind(metadata.withQuery(jpaQuery), accessor, ErrorHandling.STRICT);
return jpaQuery;
}

View File

@@ -105,7 +105,6 @@ class ExpressionBasedStringQueryUnitTests {
+ "AND (n.updatedAt >= ?#{#networkRequest.updatedTime.startDateTime}) AND (n.updatedAt <=?#{#networkRequest.updatedTime.endDateTime})",
metadata, SPEL_PARSER, true);
System.out.println(query.getQueryString());
assertThat(query.isNativeQuery()).isFalse();
}

View File

@@ -62,7 +62,8 @@ class QueryParameterSetterFactoryUnitTests {
when(binding.getOrigin()).thenReturn(ParameterOrigin.ofParameter("NamedParameter", 1));
assertThatExceptionOfType(IllegalStateException.class) //
.isThrownBy(() -> setterFactory.create(binding, DeclaredQuery.of("from Employee e where e.name = :NamedParameter", false))) //
.isThrownBy(() -> setterFactory.create(binding,
DeclaredQuery.of("from Employee e where e.name = :NamedParameter", false))) //
.withMessageContaining("Java 8") //
.withMessageContaining("@Param") //
.withMessageContaining("-parameters");
@@ -80,7 +81,8 @@ class QueryParameterSetterFactoryUnitTests {
when(binding.getOrigin()).thenReturn(ParameterOrigin.ofParameter(null, 1));
assertThatExceptionOfType(IllegalArgumentException.class) //
.isThrownBy(() -> setterFactory.create(binding, DeclaredQuery.of("from Employee e where e.name = :NamedParameter", false))) //
.isThrownBy(() -> setterFactory.create(binding,
DeclaredQuery.of("from Employee e where e.name = :NamedParameter", false))) //
.withMessage("At least 1 parameter(s) provided but only 0 parameter(s) present in query");
}

View File

@@ -136,7 +136,7 @@ class StringQueryUnitTests {
true);
assertThat(query.hasParameterBindings()).isTrue();
assertThat(query.getQueryString())
assertThat(query.getQueryString()) //
.isEqualTo(
"select u from User u where u.firstname like :firstname or u.firstname like :firstname_1 or u.firstname = :firstname_2");
@@ -152,6 +152,11 @@ class StringQueryUnitTests {
assertThat(binding).isNotNull();
assertThat(binding.getName()).isEqualTo("firstname_1");
assertThat(binding.getType()).isEqualTo(Type.STARTING_WITH);
ParameterBinding parameterBinding = bindings.get(2);
assertThat(parameterBinding).isNotNull();
assertThat(parameterBinding.getName()).isEqualTo("firstname_2");
assertThat(((MethodInvocationArgument) parameterBinding.getOrigin()).identifier().getName()).isEqualTo("firstname");
}
@Test // GH-3041
@@ -179,7 +184,6 @@ class StringQueryUnitTests {
assertThat(query.getQueryString()).isEqualTo(
"select u from User u where u.firstname like :firstname or u.firstname like :firstname_1 or u.firstname like :firstname_1 or u.firstname like :firstname");
query = new StringQuery("select u from User u where u.firstname like %:firstname or u.firstname =:firstname", true);
assertThat(query.hasParameterBindings()).isTrue();
@@ -582,7 +586,7 @@ class StringQueryUnitTests {
assertThat(new StringQuery(testQuery, false) //
.usesJdbcStyleParameters()) //
.describedAs(testQuery)
.describedAs(testQuery) //
.describedAs(testQuery) //
.isFalse();
}