Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
class JpaMetamodelMappingContextUnitTests {

@Test // DATAJPA-775
void jpaPersistentEntityRejectsSprignDataAtVersionAnnotation() {
void jpaPersistentEntityRejectsSpringDataAtVersionAnnotation() {

Metamodel metamodel = mock(Metamodel.class);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ void shouldRespectConfiguredJpaEntityGraphInFindOne() {

assertThat(user).isNotNull();
assertThat(util.isLoaded(user, "colleagues")) //
.describedAs("colleages should be fetched with 'user.detail' fetchgraph") //
.describedAs("colleagues should be fetched with 'user.detail' fetchgraph") //
.isTrue();
}

Expand All @@ -137,7 +137,7 @@ void shouldRespectInferFetchGraphFromMethodName() {

assertThat(user).isNotNull();
assertThat(util.isLoaded(user, "colleagues")) //
.describedAs("colleages should be fetched with 'user.detail' fetchgraph") //
.describedAs("colleagues should be fetched with 'user.detail' fetchgraph") //
.isTrue();
}

Expand All @@ -154,7 +154,7 @@ void shouldRespectDynamicFetchGraphForGetOneWithAttributeNamesById() {
assertThat(user).isNotNull();

assertThat(util.isLoaded(user, "colleagues")) //
.describedAs("colleages should be fetched with 'user.detail' fetchgraph") //
.describedAs("colleagues should be fetched with 'user.detail' fetchgraph") //
.isTrue();
assertThat(util.isLoaded(user, "colleagues")).isTrue();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
package org.springframework.data.jpa.repository;

/**
* A trivial component registered via {@literal appication-context.xml} to be called from SpEL.
* A trivial component registered via {@literal application-context.xml} to be called from SpEL.
*/
public class GreetingsFrom {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -451,7 +451,7 @@ void testInvocationOfCustomImplementation() {
@Test
void testOverwritingFinder() {

repository.findByOverrridingMethod();
repository.findByOverridingMethod();
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@ void prefixesSingleNonAliasedFunctionCallRelatedSortProperty() {
}

@Test // DATAJPA-965, DATAJPA-970
void prefixesNonAliasedFunctionCallRelatedSortPropertyWhenSelectClauseContainesAliasedFunctionForDifferentProperty() {
void prefixesNonAliasedFunctionCallRelatedSortPropertyWhenSelectClauseContainsAliasedFunctionForDifferentProperty() {

String query = "SELECT m.name, AVG(m.price) AS avgPrice FROM Magazine m";
Sort sort = Sort.by("name", "avgPrice");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ void truncateStatementShouldWork() {
}

@Test // GH-3869
void shouldWorkWithParenthesedSelect() {
void shouldWorkWithParenthesesSelect() {

DefaultEntityQuery query = new TestEntityQuery("(SELECT is_contained_in(:innerId, :outerId))", true);
QueryEnhancer queryEnhancer = QueryEnhancerFactory.forQuery(query).create(query);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ void shouldCreateGraphWithDeepSubGraphCorrectly() {
}

@Test // DATAJPA-1041, DATAJPA-1075
void shouldIgnoreIntermedeateSubGraphNodesThatAreNotNeeded() {
void shouldIgnoreIntermediateSubGraphNodesThatAreNotNeeded() {

assumeThat(currentEntityManagerIsAJpa21EntityManager(em)).isTrue();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ void count() {

queryCreator(ORDER) //
.forTree(Order.class, "countOrderByCountry") //
.returing(Long.class) //
.returning(Long.class) //
.withParameters("AU") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT COUNT(o) FROM %s o WHERE o.country = ?1", DefaultJpaEntityMetadata.unqualify(Order.class)) //
Expand All @@ -182,7 +182,7 @@ void countWithJoins() {

queryCreator(ORDER) //
.forTree(Order.class, "countOrderByLineItemsQuantityGreaterThan") //
.returing(Long.class) //
.returning(Long.class) //
.withParameterTypes(Integer.class) //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT COUNT(o) FROM %s o LEFT JOIN o.lineItems l WHERE l.quantity > ?1",
Expand All @@ -195,7 +195,7 @@ void countDistinct() {

queryCreator(ORDER) //
.forTree(Order.class, "countDistinctOrderByCountry") //
.returing(Long.class) //
.returning(Long.class) //
.withParameters("AU") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT COUNT(DISTINCT o) FROM %s o WHERE o.country = ?1",
Expand All @@ -205,47 +205,47 @@ void countDistinct() {

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void simplePropertyIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void simplePropertyIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Order.class, "findOrderByCountryIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("BB") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT o FROM %s o WHERE %s(o.country) = %s(?1)", DefaultJpaEntityMetadata.unqualify(Order.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator()) //
.validateQuery();
}

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void simplePropertyAllIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void simplePropertyAllIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameAndProductTypeAllIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("spring", "data") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE %s(p.name) = %s(?1) AND %s(p.productType) = %s(?2)",
DefaultJpaEntityMetadata.unqualify(Product.class), ingnoreCaseTemplate.getIgnoreCaseOperator(),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator(),
ingnoreCaseTemplate.getIgnoreCaseOperator()) //
DefaultJpaEntityMetadata.unqualify(Product.class), ignoreCaseTemplate.getIgnoreCaseOperator(),
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator(),
ignoreCaseTemplate.getIgnoreCaseOperator()) //
.validateQuery();
}

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void simplePropertyMixedCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void simplePropertyMixedCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameAndProductTypeIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("spring", "data") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE p.name = ?1 AND %s(p.productType) = %s(?2)",
DefaultJpaEntityMetadata.unqualify(Product.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator(),
ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator(),
ignoreCaseTemplate.getIgnoreCaseOperator()) //
.validateQuery();
}

Expand Down Expand Up @@ -426,16 +426,16 @@ void notContainingSingleEntryElementCollection() {

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void likeWithIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void likeWithIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameLikeIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("%spring%") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE %s(p.name) LIKE %s(?1) ESCAPE '\\'",
DefaultJpaEntityMetadata.unqualify(Product.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator()) //
.expectPlaceholderValue("?1", "%spring%") //
.validateQuery();
}
Expand All @@ -456,16 +456,16 @@ void notLike(String parameterValue) {

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void notLikeWithIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void notLikeWithIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameNotLikeIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("%spring%") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE %s(p.name) NOT LIKE %s(?1) ESCAPE '\\'",
DefaultJpaEntityMetadata.unqualify(Product.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator()) //
.expectPlaceholderValue("?1", "%spring%") //
.validateQuery();
}
Expand All @@ -485,16 +485,16 @@ void startingWith() {

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void startingWithIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void startingWithIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameStartingWithIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("spring") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE %s(p.name) LIKE %s(?1) ESCAPE '\\'",
DefaultJpaEntityMetadata.unqualify(Product.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator()) //
.expectPlaceholderValue("?1", "spring%") //
.validateQuery();
}
Expand All @@ -514,16 +514,16 @@ void endingWith() {

@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void endingWithIgnoreCase(JpqlQueryTemplates ingnoreCaseTemplate) {
void endingWithIgnoreCase(JpqlQueryTemplates ignoreCaseTemplate) {

queryCreator(ORDER) //
.forTree(Product.class, "findProductByNameEndingWithIgnoreCase") //
.ingnoreCaseAs(ingnoreCaseTemplate) //
.ignoreCaseAs(ignoreCaseTemplate) //
.withParameters("spring") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE %s(p.name) LIKE %s(?1) ESCAPE '\\'",
DefaultJpaEntityMetadata.unqualify(Product.class),
ingnoreCaseTemplate.getIgnoreCaseOperator(), ingnoreCaseTemplate.getIgnoreCaseOperator()) //
ignoreCaseTemplate.getIgnoreCaseOperator(), ignoreCaseTemplate.getIgnoreCaseOperator()) //
.expectPlaceholderValue("?1", "%spring") //
.validateQuery();
}
Expand Down Expand Up @@ -607,15 +607,15 @@ void sortByMulti() {
@Disabled("should we support this?")
@ParameterizedTest // GH-3588
@FieldSource("ignoreCaseTemplates")
void sortBySingleIngoreCase(JpqlQueryTemplates ingoreCase) {
void sortBySingleIgnoreCase(JpqlQueryTemplates ignoreCase) {

String jpql = queryCreator(ORDER) //
.forTree(Order.class, "findOrderByOrderByCountryAscAllIgnoreCase") //
.render();

assertThat(jpql).isEqualTo("SELECT o FROM %s o ORDER BY %s(o.date) asc",
DefaultJpaEntityMetadata.unqualify(Order.class),
ingoreCase.getIgnoreCaseOperator());
ignoreCase.getIgnoreCaseOperator());
}

@Test // GH-3588
Expand Down Expand Up @@ -686,7 +686,7 @@ void dtoProjection() {

queryCreator(ORDER) //
.forTree(Product.class, "findProjectionByNameIs") //
.returing(DtoProductProjection.class) //
.returning(DtoProductProjection.class) //
.withParameters("spring") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT new %s(p.name, p.productType) FROM %s p WHERE p.name = ?1",
Expand All @@ -699,7 +699,7 @@ void interfaceProjection() {

queryCreator(ORDER) //
.forTree(Product.class, "findProjectionByNameIs") //
.returing(InterfaceProductProjection.class) //
.returning(InterfaceProductProjection.class) //
.withParameters("spring") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p.name name, p.productType productType FROM %s p WHERE p.name = ?1",
Expand All @@ -713,7 +713,7 @@ void tupleProjection(Class<?> resultType) {

queryCreator(PERSON) //
.forTree(Person.class, "findProjectionByFirstnameIs") //
.returing(resultType) //
.returning(resultType) //
.withParameters("chris") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p.id id, p.firstname firstname, p.lastname lastname FROM %s p WHERE p.firstname = ?1",
Expand All @@ -727,7 +727,7 @@ void delete(Class<?> resultType) {

queryCreator(PERSON) //
.forTree(Person.class, "deletePersonByFirstname") //
.returing(resultType) //
.returning(resultType) //
.withParameters("chris") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p FROM %s p WHERE p.firstname = ?1", DefaultJpaEntityMetadata.unqualify(Person.class)) //
Expand All @@ -739,7 +739,7 @@ void exists() {

queryCreator(PERSON) //
.forTree(Person.class, "existsPersonByFirstname") //
.returing(Long.class).withParameters("chris") //
.returning(Long.class).withParameters("chris") //
.as(QueryCreatorTester::create) //
.expectJpql("SELECT p.id id FROM %s p WHERE p.firstname = ?1", DefaultJpaEntityMetadata.unqualify(Person.class)) //
.validateQuery();
Expand Down Expand Up @@ -905,7 +905,7 @@ QueryCreatorTester validateQuery() {
return validateQuery(tmm.entityManager());
}

throw new IllegalStateException("No EntityManager found, plase provide one via [verify(EntityManager)]");
throw new IllegalStateException("No EntityManager found, please provide one via [verify(EntityManager)]");
}

QueryCreatorTester validateQuery(EntityManager entityManager) {
Expand All @@ -922,15 +922,15 @@ QueryCreatorTester validateQuery(EntityManager entityManager) {

interface QueryCreatorBuilder {

QueryCreatorBuilder returing(ReturnedType returnedType);
QueryCreatorBuilder returning(ReturnedType returnedType);

QueryCreatorBuilder forTree(Class<?> root, String querySource);

QueryCreatorBuilder withParameters(Object... arguments);

QueryCreatorBuilder withParameterTypes(Class<?>... argumentTypes);

QueryCreatorBuilder ingnoreCaseAs(JpqlQueryTemplates queryTemplate);
QueryCreatorBuilder ignoreCaseAs(JpqlQueryTemplates queryTemplate);

default <T> T as(Function<QueryCreatorBuilder, T> transformer) {
return transformer.apply(this);
Expand All @@ -946,7 +946,7 @@ default String render() {

String render(@Nullable Sort sort);

QueryCreatorBuilder returing(Class<?> type);
QueryCreatorBuilder returning(Class<?> type);
}

private class DefaultCreatorBuilder implements QueryCreatorBuilder {
Expand All @@ -969,19 +969,19 @@ public DefaultCreatorBuilder(Metamodel metamodel) {
}

@Override
public QueryCreatorBuilder returing(ReturnedType returnedType) {
public QueryCreatorBuilder returning(ReturnedType returnedType) {
this.returnedType = returnedType;
return this;
}

@Override
public QueryCreatorBuilder returing(Class<?> type) {
public QueryCreatorBuilder returning(Class<?> type) {

if (this.returnedType != null) {
return returing(ReturnedType.of(type, returnedType.getDomainType(), PROJECTION_FACTORY));
return returning(ReturnedType.of(type, returnedType.getDomainType(), PROJECTION_FACTORY));
}

return returing(ReturnedType.of(type, type, PROJECTION_FACTORY));
return returning(ReturnedType.of(type, type, PROJECTION_FACTORY));
}

@Override
Expand All @@ -1007,7 +1007,7 @@ public QueryCreatorBuilder withParameterTypes(Class<?>... argumentTypes) {
}

@Override
public QueryCreatorBuilder ingnoreCaseAs(JpqlQueryTemplates queryTemplate) {
public QueryCreatorBuilder ignoreCaseAs(JpqlQueryTemplates queryTemplate) {
this.queryTemplates = queryTemplate;
return this;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ void cacheGetWithSort(Sort sort, JpaParametersParameterAccessor accessor) {

@ParameterizedTest
@FieldSource("cacheInput")
void cacheGetWithccessor(Sort sort, JpaParametersParameterAccessor accessor) {
void cacheGetWithAccessor(Sort sort, JpaParametersParameterAccessor accessor) {

JpaQueryCreator queryCreator = Mockito.mock(JpaQueryCreator.class);
assertThat(cache.put(sort, StubJpaParameterParameterAccessor.accessor("spring", "data"), queryCreator)).isNull();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@
public interface ReferencingEmployeeRepositoryWithIdClassRepository extends JpaRepository<ReferencingIdClassExampleEmployee, Long> {

List<ReferencingIdClassExampleEmployee> findByEmployee_EmpId(Long employeeId);
List<ReferencingIdClassExampleEmployee> findByEmployee_Department_DepartmentId(Long departementId);
List<ReferencingIdClassExampleEmployee> findByEmployee_Department_DepartmentId(Long departmentId);
}
Loading