Migrate code to Java 17 style.

Use var instead of explicit local types where applicable. Use pattern variable instead instanceof and cast. Prefer loops and nullable types over Stream and Optional. Convert classes to records where applicable.

See #2465
This commit is contained in:
Mark Paluch
2021-10-05 15:21:12 +02:00
committed by Jens Schauder
parent d4036ec0a9
commit c735b58607
463 changed files with 3670 additions and 4014 deletions

View File

@@ -17,9 +17,8 @@ package org.springframework.data.annotation;
import static org.assertj.core.api.Assertions.*;
import java.util.Set;
import org.junit.jupiter.api.Test;
import org.springframework.data.util.AnnotatedTypeScanner;
/**
@@ -33,8 +32,8 @@ class TypeAliasUnitTests {
@SuppressWarnings("unchecked")
void scanningforAtPersistentFindsTypeAliasAnnotatedTypes() {
AnnotatedTypeScanner scanner = new AnnotatedTypeScanner(Persistent.class);
Set<Class<?>> types = scanner.findTypes(getClass().getPackage().getName());
var scanner = new AnnotatedTypeScanner(Persistent.class);
var types = scanner.findTypes(getClass().getPackage().getName());
assertThat(types).containsExactlyInAnyOrder(SampleType.class, TypeAlias.class);
}

View File

@@ -41,7 +41,7 @@ class AnnotationAuditingMetadataUnitTests {
@Test
void checkAnnotationDiscovery() {
AnnotationAuditingMetadata metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
var metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
assertThat(metadata).isNotNull();
assertThat(metadata.getCreatedByField()).hasValue(createdByField);
@@ -53,17 +53,17 @@ class AnnotationAuditingMetadataUnitTests {
@Test
void checkCaching() {
AnnotationAuditingMetadata firstCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
var firstCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
assertThat(firstCall).isNotNull();
AnnotationAuditingMetadata secondCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
var secondCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
assertThat(firstCall).isEqualTo(secondCall);
}
@Test
void checkIsAuditable() {
AnnotationAuditingMetadata metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
var metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class);
assertThat(metadata).isNotNull();
assertThat(metadata.isAuditable()).isTrue();

View File

@@ -120,7 +120,7 @@ class AuditingHandlerUnitTests {
@Test
void onlySetsModificationDataOnNotNewEntities() {
AuditedUser audited = new AuditedUser();
var audited = new AuditedUser();
audited.id = 1L;
handler.setAuditorAware(auditorAware);
@@ -152,7 +152,7 @@ class AuditingHandlerUnitTests {
@Test // DATAJPA-9
void usesDateTimeProviderIfConfigured() {
DateTimeProvider provider = mock(DateTimeProvider.class);
var provider = mock(DateTimeProvider.class);
doReturn(Optional.empty()).when(provider).getNow();
handler.setDateTimeProvider(provider);
@@ -164,10 +164,10 @@ class AuditingHandlerUnitTests {
@Test
void setsAuditingInfoOnEntityUsingInheritance() {
AuditingHandler handler = new AuditingHandler(PersistentEntities.of(new SampleMappingContext()));
var handler = new AuditingHandler(PersistentEntities.of(new SampleMappingContext()));
handler.setModifyOnCreation(false);
MyDocument result = handler.markCreated(new MyDocument());
var result = handler.markCreated(new MyDocument());
assertThat(result.created).isNotNull();
assertThat(result.modified).isNull();

View File

@@ -39,7 +39,7 @@ class AuditorUnitTests {
@Test // DATACMNS-1231
void auditorOfMustNotWrapOtherAuditor() {
Auditor<String> source = Auditor.of("batman");
var source = Auditor.of("batman");
assertThat(Auditor.of(source)).isSameAs(source);
}

View File

@@ -21,8 +21,6 @@ import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.temporal.ChronoField;
import java.time.temporal.TemporalAccessor;
import java.util.Optional;
import org.junit.jupiter.api.Test;
@@ -70,10 +68,10 @@ class DefaultAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-643
void setsJsr310Types() {
Jsr310AuditedUser user = new Jsr310AuditedUser();
Instant instant = Instant.now();
var user = new Jsr310AuditedUser();
var instant = Instant.now();
Optional<AuditableBeanWrapper<Jsr310AuditedUser>> wrapper = factory.getBeanWrapperFor(user);
var wrapper = factory.getBeanWrapperFor(user);
assertThat(wrapper).hasValueSatisfying(it -> {
@@ -88,10 +86,10 @@ class DefaultAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1259
void lastModifiedDateAsLongIsAvailableViaWrapper() {
LongBasedAuditable source = new LongBasedAuditable();
var source = new LongBasedAuditable();
source.dateModified = 42000L;
Optional<Long> result = factory.getBeanWrapperFor(source) //
var result = factory.getBeanWrapperFor(source) //
.flatMap(AuditableBeanWrapper::getLastModifiedDate) //
.map(ta -> ta.getLong(ChronoField.INSTANT_SECONDS));
@@ -101,9 +99,9 @@ class DefaultAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1259
void canSetLastModifiedDateAsInstantViaWrapperOnLongField() {
LongBasedAuditable source = new LongBasedAuditable();
var source = new LongBasedAuditable();
Optional<AuditableBeanWrapper<LongBasedAuditable>> beanWrapper = factory.getBeanWrapperFor(source);
var beanWrapper = factory.getBeanWrapperFor(source);
assertThat(beanWrapper).isPresent();
beanWrapper.get().setLastModifiedDate(Instant.ofEpochMilli(42L));
@@ -114,9 +112,9 @@ class DefaultAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1259
void canSetLastModifiedDateAsLocalDateTimeViaWrapperOnLongField() {
LongBasedAuditable source = new LongBasedAuditable();
var source = new LongBasedAuditable();
Optional<Long> result = factory.getBeanWrapperFor(source).map(it -> {
var result = factory.getBeanWrapperFor(source).map(it -> {
it.setLastModifiedDate(LocalDateTime.ofInstant(Instant.ofEpochMilli(42L), ZoneOffset.systemDefault()));
return it.getBean().dateModified;
});
@@ -127,12 +125,12 @@ class DefaultAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1259
void lastModifiedAsLocalDateTimeDateIsAvailableViaWrapperAsLocalDateTime() {
LocalDateTime now = LocalDateTime.now();
var now = LocalDateTime.now();
AuditedUser source = new AuditedUser();
var source = new AuditedUser();
source.setLastModifiedDate(now);
Optional<TemporalAccessor> result = factory.getBeanWrapperFor(source) //
var result = factory.getBeanWrapperFor(source) //
.flatMap(AuditableBeanWrapper::getLastModifiedDate);
assertThat(result).hasValue(now);

View File

@@ -59,7 +59,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests {
@Test
void delegatesToMarkCreatedForNewEntity() {
AuditedUser user = new AuditedUser();
var user = new AuditedUser();
getHandler().markAudited(user);
@@ -70,7 +70,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests {
@Test
void delegatesToMarkModifiedForNonNewEntity() {
AuditedUser user = new AuditedUser();
var user = new AuditedUser();
user.id = 1L;
getHandler().markAudited(user);
@@ -92,7 +92,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests {
@Test // DATACMNS-638
void handlingOptionalIsANoOp() {
IsNewAwareAuditingHandler handler = getHandler();
var handler = getHandler();
handler.markAudited(Optional.empty());
handler.markCreated(Optional.empty());
@@ -107,10 +107,10 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests {
@Test // DATACMNS-1780
void singleContextAllowsInFlightMetadataCreationForUnknownPersistentEntities() {
SampleMappingContext mappingContext = spy(new SampleMappingContext());
var mappingContext = spy(new SampleMappingContext());
mappingContext.afterPropertiesSet();
AuditedUser user = new AuditedUser();
var user = new AuditedUser();
user.id = 1L;
new IsNewAwareAuditingHandler(PersistentEntities.of(mappingContext)).markAudited(user);

View File

@@ -59,21 +59,21 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@BeforeEach
void setUp() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(Sample.class);
context.getPersistentEntity(SampleWithInstant.class);
context.getPersistentEntity(WithEmbedded.class);
PersistentEntities entities = PersistentEntities.of(context);
var entities = PersistentEntities.of(context);
factory = new MappingAuditableBeanWrapperFactory(entities);
}
@Test // DATACMNS-365
void discoversAuditingPropertyOnField() {
Sample sample = new Sample();
var sample = new Sample();
Optional<AuditableBeanWrapper<Sample>> wrapper = factory.getBeanWrapperFor(sample);
var wrapper = factory.getBeanWrapperFor(sample);
assertThat(wrapper).hasValueSatisfying(it -> {
@@ -85,9 +85,9 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-365
void discoversAuditingPropertyOnAccessor() {
Sample sample = new Sample();
var sample = new Sample();
Optional<AuditableBeanWrapper<Sample>> wrapper = factory.getBeanWrapperFor(sample);
var wrapper = factory.getBeanWrapperFor(sample);
assertThat(wrapper).hasValueSatisfying(it -> {
@@ -99,9 +99,9 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-365
void settingInavailablePropertyIsNoop() {
Sample sample = new Sample();
var sample = new Sample();
Optional<AuditableBeanWrapper<Sample>> wrapper = factory.getBeanWrapperFor(sample);
var wrapper = factory.getBeanWrapperFor(sample);
assertThat(wrapper).hasValueSatisfying(it -> it.setLastModifiedDate(Instant.now()));
}
@@ -121,7 +121,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-638
void returnsLastModificationCalendarAsCalendar() {
Date reference = new Date();
var reference = new Date();
Calendar calendar = new GregorianCalendar();
calendar.setTime(reference);
@@ -133,7 +133,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-638
void returnsLastModificationDateAsCalendar() {
Date reference = new Date();
var reference = new Date();
assertLastModificationDate(reference, //
Jsr310Converters.DateToLocalDateTimeConverter.INSTANCE.convert(reference));
@@ -142,7 +142,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-638, DATACMNS-43
void returnsLastModificationJsr310DateTimeAsCalendar() {
LocalDateTime reference = LocalDateTime.now();
var reference = LocalDateTime.now();
assertLastModificationDate(reference, reference);
}
@@ -150,10 +150,10 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1109
void exposesInstantAsModificationDate() {
SampleWithInstant sample = new SampleWithInstant();
var sample = new SampleWithInstant();
sample.modified = Instant.now();
Optional<TemporalAccessor> result = factory.getBeanWrapperFor(sample) //
var result = factory.getBeanWrapperFor(sample) //
.flatMap(it -> it.getLastModifiedDate());
assertThat(result).hasValue(sample.modified);
@@ -170,22 +170,22 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1274
void writesNestedAuditingData() {
WithEmbedded target = new WithEmbedded();
var target = new WithEmbedded();
target.embedded = new Embedded();
Optional<AuditableBeanWrapper<WithEmbedded>> wrapper = factory.getBeanWrapperFor(target);
var wrapper = factory.getBeanWrapperFor(target);
assertThat(wrapper).hasValueSatisfying(it -> {
Instant now = Instant.now();
String user = "user";
var now = Instant.now();
var user = "user";
it.setCreatedBy(user);
it.setLastModifiedBy(user);
it.setLastModifiedDate(now);
it.setCreatedDate(now);
Embedded embedded = it.getBean().embedded;
var embedded = it.getBean().embedded;
assertThat(embedded.created).isEqualTo(now);
assertThat(embedded.creator).isEqualTo(user);
@@ -199,7 +199,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1461, DATACMNS-1671
void skipsNullIntermediatesWhenSettingProperties() {
WithEmbedded withEmbedded = new WithEmbedded();
var withEmbedded = new WithEmbedded();
assertThat(factory.getBeanWrapperFor(withEmbedded)).hasValueSatisfying(it -> {
assertThatCode(() -> it.setCreatedBy("user")).doesNotThrowAnyException();
@@ -210,7 +210,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
@Test // DATACMNS-1438
void skipsCollectionPropertiesWhenSettingProperties() {
WithEmbedded withEmbedded = new WithEmbedded();
var withEmbedded = new WithEmbedded();
withEmbedded.embedded = new Embedded();
withEmbedded.embeddeds = Arrays.asList(new Embedded());
withEmbedded.embeddedMap = new HashMap<>();
@@ -218,15 +218,15 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
assertThat(factory.getBeanWrapperFor(withEmbedded)).hasValueSatisfying(it -> {
String user = "user";
Instant now = Instant.now();
var user = "user";
var now = Instant.now();
it.setCreatedBy(user);
it.setLastModifiedBy(user);
it.setLastModifiedDate(now);
it.setCreatedDate(now);
Embedded embedded = withEmbedded.embeddeds.iterator().next();
var embedded = withEmbedded.embeddeds.iterator().next();
assertThat(embedded.created).isNull();
assertThat(embedded.creator).isNull();
@@ -244,10 +244,10 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
private void assertLastModificationDate(Object source, TemporalAccessor expected) {
Sample sample = new Sample();
var sample = new Sample();
sample.lastModifiedDate = source;
Optional<TemporalAccessor> result = factory.getBeanWrapperFor(sample) //
var result = factory.getBeanWrapperFor(sample) //
.flatMap(it -> it.getLastModifiedDate());
assertThat(result).hasValueSatisfying(ta -> compareTemporalAccessors(expected, ta));
@@ -255,8 +255,8 @@ class MappingAuditableBeanWrapperFactoryUnitTests {
private static AbstractLongAssert<?> compareTemporalAccessors(TemporalAccessor expected, TemporalAccessor actual) {
long actualSeconds = getInstantSeconds(actual);
long expectedSeconds = getInstantSeconds(expected);
var actualSeconds = getInstantSeconds(actual);
var expectedSeconds = getInstantSeconds(expected);
return assertThat(actualSeconds) //
.describedAs("Difference is %s", actualSeconds - expectedSeconds) //

View File

@@ -50,7 +50,7 @@ class ReactiveAuditingHandlerUnitTests {
@BeforeEach
void setUp() {
SampleMappingContext sampleMappingContext = new SampleMappingContext();
var sampleMappingContext = new SampleMappingContext();
sampleMappingContext.getRequiredPersistentEntity(Immutable.class); // initialize to ensure we're using mapping
// metadata instead of plain reflection
@@ -64,7 +64,7 @@ class ReactiveAuditingHandlerUnitTests {
@Test // DATACMNS-1231
void markCreatedShouldSetDatesIfAuditorNotSet() {
Immutable immutable = new Immutable(null, null, null, null);
var immutable = new Immutable(null, null, null, null);
handler.markCreated(immutable).as(StepVerifier::create).consumeNextWith(actual -> {
@@ -81,7 +81,7 @@ class ReactiveAuditingHandlerUnitTests {
@Test // DATACMNS-1231
void markModifiedSetsModifiedFields() {
AuditedUser audited = new AuditedUser();
var audited = new AuditedUser();
audited.id = 1L;
handler.setAuditorAware(auditorAware);

View File

@@ -74,7 +74,7 @@ class ReflectionAuditingBeanWrapperUnitTests {
@LastModifiedDate long modifiedDate;
}
Sample sample = new Sample();
var sample = new Sample();
AuditableBeanWrapper<Sample> wrapper = new ReflectionAuditingBeanWrapper<>(conversionService, sample);
wrapper.setCreatedDate(time);
@@ -87,7 +87,7 @@ class ReflectionAuditingBeanWrapperUnitTests {
@Test
void setsAuditorFieldsCorrectly() {
Object object = new Object();
var object = new Object();
wrapper.setCreatedBy(object);
assertThat(user.createdBy).isEqualTo(object);

View File

@@ -63,7 +63,7 @@ class TypeFilterParserUnitTests {
Resource sampleXmlFile = new ClassPathResource("type-filter-test.xml", TypeFilterParserUnitTests.class);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
var factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
documentElement = factory.newDocumentBuilder().parse(sampleXmlFile.getInputStream()).getDocumentElement();
@@ -72,7 +72,7 @@ class TypeFilterParserUnitTests {
@Test
void parsesIncludesCorrectly() throws Exception {
Element element = DomUtils.getChildElementByTagName(documentElement, "firstSample");
var element = DomUtils.getChildElementByTagName(documentElement, "firstSample");
Iterable<TypeFilter> filters = parser.parseTypeFilters(element, Type.INCLUDE);
assertThat(filters).hasAtLeastOneElementOfType(AssignableTypeFilter.class);
@@ -81,7 +81,7 @@ class TypeFilterParserUnitTests {
@Test
void parsesExcludesCorrectly() throws Exception {
Element element = DomUtils.getChildElementByTagName(documentElement, "secondSample");
var element = DomUtils.getChildElementByTagName(documentElement, "secondSample");
Iterable<TypeFilter> filters = parser.parseTypeFilters(element, Type.EXCLUDE);
assertThat(filters).hasAtLeastOneElementOfType(AssignableTypeFilter.class);

View File

@@ -19,12 +19,10 @@ import static org.assertj.core.api.Assertions.*;
import org.junit.jupiter.api.Test;
import org.mockito.internal.util.Supplier;
import org.springframework.core.convert.TypeDescriptor;
import org.springframework.core.convert.converter.GenericConverter;
import org.springframework.core.convert.converter.GenericConverter.ConvertiblePair;
import org.springframework.data.convert.ConverterBuilder.ConverterAware;
import org.springframework.data.convert.ConverterBuilder.ReadingConverterBuilder;
import org.springframework.data.convert.ConverterBuilder.WritingConverterBuilder;
/**
* Unit tests for {@link DefaultConverterBuilder}.
@@ -38,7 +36,7 @@ class ConverterBuilderUnitTests {
@Test // DATACMNS-1034
void setsUpBidirectionalConvertersFromReading() {
ConverterAware builder = ConverterBuilder.reading(String.class, Long.class, it -> Long.valueOf(it))
var builder = ConverterBuilder.reading(String.class, Long.class, it -> Long.valueOf(it))
.andWriting(Object::toString);
assertConverter(builder.getReadingConverter(), "1", 1L);
@@ -48,7 +46,7 @@ class ConverterBuilderUnitTests {
@Test // DATACMNS-1034
void setsUpBidirectionalConvertersFromWriting() {
ConverterAware builder = ConverterBuilder.writing(Long.class, String.class, Object::toString)
var builder = ConverterBuilder.writing(Long.class, String.class, Object::toString)
.andReading(it -> Long.valueOf(it));
assertConverter(builder.getReadingConverter(), "1", 1L);
@@ -58,7 +56,7 @@ class ConverterBuilderUnitTests {
@Test // DATACMNS-1034
void setsUpReadingConverter() {
ReadingConverterBuilder<String, Long> builder = ConverterBuilder.reading(String.class, Long.class,
var builder = ConverterBuilder.reading(String.class, Long.class,
string -> Long.valueOf(string));
assertConverter(builder.getReadingConverter(), "1", 1L);
@@ -68,7 +66,7 @@ class ConverterBuilderUnitTests {
@Test // DATACMNS-1034
void setsUpWritingConverter() {
WritingConverterBuilder<Long, String> builder = ConverterBuilder.writing(Long.class, String.class,
var builder = ConverterBuilder.writing(Long.class, String.class,
Object::toString);
assertConverter(builder.getWritingConverter(), 1L, "1");

View File

@@ -38,7 +38,6 @@ import org.springframework.core.convert.converter.GenericConverter.ConvertiblePa
import org.springframework.core.convert.support.ConfigurableConversionService;
import org.springframework.core.convert.support.DefaultConversionService;
import org.springframework.core.convert.support.GenericConversionService;
import org.springframework.data.convert.ConverterBuilder.ConverterAware;
import org.springframework.data.convert.CustomConversions.ConverterConfiguration;
import org.springframework.data.convert.CustomConversions.StoreConversions;
import org.springframework.data.convert.Jsr310Converters.LocalDateTimeToDateConverter;
@@ -67,7 +66,7 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1035
void findsBasicReadAndWriteConversions() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(FormatToStringConverter.INSTANCE, StringToFormatConverter.INSTANCE));
assertThat(conversions.getCustomWriteTarget(Format.class)).hasValue(String.class);
@@ -80,7 +79,7 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1035
void considersSubtypesCorrectly() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(NumberToStringConverter.INSTANCE, StringToNumberConverter.INSTANCE));
assertThat(conversions.getCustomWriteTarget(Long.class)).hasValue(String.class);
@@ -90,7 +89,7 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1101
void considersSubtypeCachingCorrectly() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(NumberToStringConverter.INSTANCE, StringToNumberConverter.INSTANCE));
assertThat(conversions.getCustomWriteTarget(Long.class, Object.class)).isEmpty();
@@ -103,7 +102,7 @@ class CustomConversionsUnitTests {
GenericConversionService conversionService = new DefaultConversionService();
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(StringToFormatConverter.INSTANCE));
conversions.registerConvertersIn(conversionService);
@@ -113,7 +112,7 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-259, DATACMNS-1035
void doesNotConsiderTypeSimpleIfOnlyReadConverterIsRegistered() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(StringToFormatConverter.INSTANCE));
assertThat(conversions.isSimpleType(Format.class)).isFalse();
}
@@ -121,7 +120,7 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-298, DATACMNS-1035
void discoversConvertersForSubtypesOfMongoTypes() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(StringToIntegerConverter.INSTANCE));
assertThat(conversions.hasCustomReadTarget(String.class, Integer.class)).isTrue();
assertThat(conversions.hasCustomWriteTarget(String.class, Integer.class)).isTrue();
@@ -130,7 +129,7 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-1001, DATACMNS-1035
void shouldSelectPropertCustomWriteTargetForCglibProxiedType() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(FormatToStringConverter.INSTANCE));
assertThat(conversions.getCustomWriteTarget(createProxyTypeFor(Format.class))).hasValue(String.class);
}
@@ -138,7 +137,7 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-1001, DATACMNS-1035
void shouldSelectPropertCustomReadTargetForCglibProxiedType() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE,
var conversions = new CustomConversions(StoreConversions.NONE,
Arrays.asList(CustomTypeToStringConverter.INSTANCE));
assertThat(conversions.hasCustomReadTarget(createProxyTypeFor(CustomType.class), String.class)).isTrue();
}
@@ -146,7 +145,7 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-1131, DATACMNS-1035
void registersConvertersForJsr310() {
CustomConversions customConversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
var customConversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
assertThat(customConversions.hasCustomWriteTarget(java.time.LocalDateTime.class)).isTrue();
}
@@ -154,9 +153,9 @@ class CustomConversionsUnitTests {
@Test // DATAMONGO-1302, DATACMNS-1035
void registersConverterFactoryCorrectly() {
StoreConversions conversions = StoreConversions.of(new SimpleTypeHolder(Collections.singleton(Format.class), true));
var conversions = StoreConversions.of(new SimpleTypeHolder(Collections.singleton(Format.class), true));
CustomConversions customConversions = new CustomConversions(conversions,
var customConversions = new CustomConversions(conversions,
Collections.singletonList(new FormatConverterFactory()));
assertThat(customConversions.getCustomWriteTarget(String.class, SimpleDateFormat.class)).isPresent();
@@ -165,11 +164,11 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1034
void registersConverterFromConverterAware() {
ConverterAware converters = ConverterBuilder //
var converters = ConverterBuilder //
.reading(Locale.class, CustomType.class, left -> new CustomType()) //
.andWriting(right -> Locale.GERMAN);
CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.singletonList(converters));
var conversions = new CustomConversions(StoreConversions.NONE, Collections.singletonList(converters));
assertThat(conversions.hasCustomWriteTarget(CustomType.class)).isTrue();
assertThat(conversions.hasCustomReadTarget(Locale.class, CustomType.class)).isTrue();
@@ -184,7 +183,7 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1615
void skipsUnsupportedDefaultWritingConverter() {
ConverterRegistry registry = mock(ConverterRegistry.class);
var registry = mock(ConverterRegistry.class);
new CustomConversions(StoreConversions.of(DATE_EXCLUDING_SIMPLE_TYPE_HOLDER), Collections.emptyList())
.registerConvertersIn(registry);
@@ -195,11 +194,11 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1665
void registersStoreConverter() {
ConverterRegistry registry = mock(ConverterRegistry.class);
var registry = mock(ConverterRegistry.class);
SimpleTypeHolder holder = new SimpleTypeHolder(Collections.emptySet(), true);
var holder = new SimpleTypeHolder(Collections.emptySet(), true);
CustomConversions conversions = new CustomConversions(StoreConversions.of(holder, PointToMapConverter.INSTANCE),
var conversions = new CustomConversions(StoreConversions.of(holder, PointToMapConverter.INSTANCE),
Collections.emptyList());
conversions.registerConvertersIn(registry);
@@ -210,7 +209,7 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1615
void doesNotSkipUnsupportedUserConverter() {
ConverterRegistry registry = mock(ConverterRegistry.class);
var registry = mock(ConverterRegistry.class);
new CustomConversions(StoreConversions.of(DATE_EXCLUDING_SIMPLE_TYPE_HOLDER),
Collections.singletonList(Jsr310Converters.LocalDateTimeToInstantConverter.INSTANCE))
@@ -222,9 +221,9 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1615
void skipsConverterBasedOnConfiguration() {
ConverterRegistry registry = mock(ConverterRegistry.class);
var registry = mock(ConverterRegistry.class);
ConverterConfiguration config = new ConverterConfiguration(StoreConversions.NONE, Collections.emptyList(),
var config = new ConverterConfiguration(StoreConversions.NONE, Collections.emptyList(),
Predicate.<ConvertiblePair> isEqual(new ConvertiblePair(java.time.LocalDateTime.class, Date.class)).negate());
new CustomConversions(config).registerConvertersIn(registry);
@@ -234,9 +233,9 @@ class CustomConversionsUnitTests {
@Test // DATACMNS-1615
void doesNotSkipUserConverterConverterEvenWhenConfigurationWouldNotAllowIt() {
ConverterRegistry registry = mock(ConverterRegistry.class);
var registry = mock(ConverterRegistry.class);
ConverterConfiguration config = new ConverterConfiguration(StoreConversions.NONE,
var config = new ConverterConfiguration(StoreConversions.NONE,
Collections.singletonList(LocalDateTimeToDateConverter.INSTANCE),
Predicate.<ConvertiblePair> isEqual(new ConvertiblePair(java.time.LocalDateTime.class, Date.class)).negate());
new CustomConversions(config).registerConvertersIn(registry);
@@ -247,7 +246,7 @@ class CustomConversionsUnitTests {
@Test // GH-2315
void addsAssociationConvertersByDefault() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
var conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
assertThat(conversions.hasCustomWriteTarget(Association.class)).isTrue();
assertThat(conversions.hasCustomReadTarget(Object.class, Association.class)).isTrue();
@@ -256,7 +255,7 @@ class CustomConversionsUnitTests {
@Test // GH-2315
void addsIdentifierConvertersByDefault() {
CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
var conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList());
assertThat(conversions.hasCustomWriteTarget(Identifier.class)).isTrue();
assertThat(conversions.hasCustomReadTarget(String.class, Identifier.class)).isTrue();
@@ -264,7 +263,7 @@ class CustomConversionsUnitTests {
private static Class<?> createProxyTypeFor(Class<?> type) {
ProxyFactory factory = new ProxyFactory();
var factory = new ProxyFactory();
factory.setProxyTargetClass(true);
factory.setTargetClass(type);

View File

@@ -68,7 +68,7 @@ class DefaultTypeMapperUnitTests {
@Test
void cachesResolvedTypeInformation() {
TypeInformation<?> information = typeMapper.readType(source);
var information = typeMapper.readType(source);
assertThat(information).isEqualTo(STRING_TYPE_INFO);
verify(mapper, times(1)).resolveTypeFrom(ALIAS);
@@ -79,7 +79,7 @@ class DefaultTypeMapperUnitTests {
@Test // DATACMNS-349
void returnsTypeAliasForInformation() {
Alias alias = Alias.of("alias");
var alias = Alias.of("alias");
doReturn(alias).when(mapper).createAliasFor(STRING_TYPE_INFO);
assertThat(this.typeMapper.getAliasFor(STRING_TYPE_INFO)).isEqualTo(alias);
@@ -88,14 +88,14 @@ class DefaultTypeMapperUnitTests {
@Test // DATACMNS-783
void specializesRawSourceTypeUsingGenericContext() {
ClassTypeInformation<Foo> root = ClassTypeInformation.from(Foo.class);
TypeInformation<?> propertyType = root.getProperty("abstractBar");
var root = ClassTypeInformation.from(Foo.class);
var propertyType = root.getProperty("abstractBar");
TypeInformation<?> barType = ClassTypeInformation.from(Bar.class);
doReturn(Alias.of(barType)).when(accessor).readAliasFrom(source);
doReturn(barType).when(mapper).resolveTypeFrom(Alias.of(barType));
TypeInformation<?> result = typeMapper.readType(source, propertyType);
var result = typeMapper.readType(source, propertyType);
assertThat(result).isInstanceOf(TypeInformation.class);

View File

@@ -30,9 +30,7 @@ import java.time.temporal.Temporal;
import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.function.Predicate;
import java.util.stream.Stream;
@@ -41,7 +39,6 @@ import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.MethodSource;
import org.springframework.core.convert.ConversionService;
import org.springframework.core.convert.converter.Converter;
import org.springframework.core.convert.support.GenericConversionService;
/**
@@ -59,9 +56,9 @@ class Jsr310ConvertersUnitTests {
static {
GenericConversionService conversionService = new GenericConversionService();
var conversionService = new GenericConversionService();
for (Converter<?, ?> converter : Jsr310Converters.getConvertersToRegister()) {
for (var converter : Jsr310Converters.getConvertersToRegister()) {
conversionService.addConverter(converter);
}
@@ -82,7 +79,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-606, DATACMNS-1091
void convertsLocalDateTimeToDate() {
LocalDateTime now = LocalDateTime.now();
var now = LocalDateTime.now();
assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_FULL));
}
@@ -96,7 +93,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-606, DATACMNS-1091
void convertsLocalDateToDate() {
LocalDate now = LocalDate.now();
var now = LocalDate.now();
assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_DATE));
}
@@ -110,7 +107,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-606, DATACMNS-1091
void convertsLocalTimeToDate() {
LocalTime now = LocalTime.now();
var now = LocalTime.now();
assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_TIME));
}
@@ -118,7 +115,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-623
void convertsDateToInstant() {
Date now = new Date();
var now = new Date();
assertThat(CONVERSION_SERVICE.convert(now, Instant.class)).isEqualTo(now.toInstant());
}
@@ -126,7 +123,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-623
void convertsInstantToDate() {
Date now = new Date();
var now = new Date();
assertThat(CONVERSION_SERVICE.convert(now.toInstant(), Date.class)).isEqualTo(now);
}
@@ -137,7 +134,7 @@ class Jsr310ConvertersUnitTests {
ids.put("Europe/Berlin", ZoneId.of("Europe/Berlin"));
ids.put("+06:00", ZoneId.of("+06:00"));
for (Entry<String, ZoneId> entry : ids.entrySet()) {
for (var entry : ids.entrySet()) {
assertThat(CONVERSION_SERVICE.convert(entry.getValue(), String.class)).isEqualTo(entry.getKey());
assertThat(CONVERSION_SERVICE.convert(entry.getKey(), ZoneId.class)).isEqualTo(entry.getValue());
}
@@ -147,10 +144,10 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-1243
void convertsLocalDateTimeToInstantAndBack() {
LocalDateTime dateTime = LocalDateTime.now();
var dateTime = LocalDateTime.now();
Instant instant = CONVERSION_SERVICE.convert(dateTime, Instant.class);
LocalDateTime convertedDateTime = CONVERSION_SERVICE.convert(dateTime, LocalDateTime.class);
var instant = CONVERSION_SERVICE.convert(dateTime, Instant.class);
var convertedDateTime = CONVERSION_SERVICE.convert(dateTime, LocalDateTime.class);
assertThat(convertedDateTime).isEqualTo(dateTime);
}
@@ -159,7 +156,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-1440
void convertsIsoFormattedStringToLocalDate() {
LocalDate date = LocalDate.now();
var date = LocalDate.now();
assertThat(CONVERSION_SERVICE.convert(date.toString(), LocalDate.class)).isEqualTo(date);
}
@@ -168,7 +165,7 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-1440
void convertsIsoFormattedStringToLocalDateTime() {
LocalDateTime date = LocalDateTime.now();
var date = LocalDateTime.now();
assertThat(CONVERSION_SERVICE.convert(date.toString(), LocalDateTime.class)).isEqualTo(date);
}
@@ -177,20 +174,20 @@ class Jsr310ConvertersUnitTests {
// DATACMNS-1440
void convertsIsoFormattedStringToInstant() {
Instant date = Instant.now();
var date = Instant.now();
assertThat(CONVERSION_SERVICE.convert(date.toString(), Instant.class)).isEqualTo(date);
}
private static Predicate<Date> formatted(Temporal expected, String format) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format);
var formatter = DateTimeFormatter.ofPattern(format);
return d -> format(d, format).equals(formatter.format(expected));
}
private static Predicate<Temporal> formatted(Date expected, String format) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format);
var formatter = DateTimeFormatter.ofPattern(format);
return d -> formatter.format(d).equals(format(expected, format));
}
@@ -200,7 +197,7 @@ class Jsr310ConvertersUnitTests {
static Stream<Object[]> parameters() {
List<Object[]> duration = Arrays.asList(new Object[][] { //
var duration = Arrays.asList(new Object[][] { //
{ "PT240H", Duration.ofDays(10) }, //
{ "PT2H", Duration.ofHours(2) }, //
{ "PT3M", Duration.ofMinutes(3) }, //
@@ -209,7 +206,7 @@ class Jsr310ConvertersUnitTests {
{ "PT0.000000006S", Duration.ofNanos(6) } //
});
List<Object[]> period = Arrays.asList(new Object[][] { //
var period = Arrays.asList(new Object[][] { //
{ "P2D", Period.ofDays(2) }, //
{ "P21D", Period.ofWeeks(3) }, //
{ "P4M", Period.ofMonths(4) }, //

View File

@@ -64,7 +64,7 @@ class MappingContextTypeInformationMapperUnitTests {
@Test
void extractsAliasForUnknownType() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
mappingContext.initialize();
mapper = new MappingContextTypeInformationMapper(mappingContext);
@@ -75,7 +75,7 @@ class MappingContextTypeInformationMapperUnitTests {
@Test
void doesNotReturnTypeAliasForSimpleType() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
mappingContext.initialize();
mapper = new MappingContextTypeInformationMapper(mappingContext);
@@ -85,7 +85,7 @@ class MappingContextTypeInformationMapperUnitTests {
@Test
void detectsTypeForUnknownEntity() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
mappingContext.initialize();
mapper = new MappingContextTypeInformationMapper(mappingContext);
@@ -101,9 +101,9 @@ class MappingContextTypeInformationMapperUnitTests {
@SuppressWarnings("unchecked")
void createsTypeMapperForGenericTypesWithDifferentBindings() {
AnnotatedTypeScanner scanner = new AnnotatedTypeScanner(TypeAlias.class);
var scanner = new AnnotatedTypeScanner(TypeAlias.class);
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.setInitialEntitySet(scanner.findTypes(getClass().getPackage().getName()));
context.initialize();

View File

@@ -37,7 +37,7 @@ class SimpleTypeInformationMapperUnitTests {
@Test
void resolvesTypeByLoadingClass() {
TypeInformation<?> type = mapper.resolveTypeFrom(Alias.of("java.lang.String"));
var type = mapper.resolveTypeFrom(Alias.of("java.lang.String"));
TypeInformation<?> expected = ClassTypeInformation.from(String.class);

View File

@@ -29,9 +29,9 @@ class AbstractAggregateRootUnitTests {
@Test // DATACMNS-928
void registersEvent() {
Object event = new Object();
var event = new Object();
SampleAggregate aggregate = new SampleAggregate();
var aggregate = new SampleAggregate();
aggregate.registerEvent(event);
assertThat(aggregate.domainEvents()).containsExactly(event);
@@ -40,9 +40,9 @@ class AbstractAggregateRootUnitTests {
@Test // DATACMNS-928
void clearsEvents() {
Object event = new Object();
var event = new Object();
SampleAggregate aggregate = new SampleAggregate();
var aggregate = new SampleAggregate();
aggregate.registerEvent(event);
assertThat(aggregate.domainEvents()).isNotEmpty();
@@ -55,10 +55,10 @@ class AbstractAggregateRootUnitTests {
@Test // DATACMNS-928, DATACMNS-1162
void copiesEventsFromExistingAggregate() {
SampleAggregate aggregate = new SampleAggregate();
var aggregate = new SampleAggregate();
aggregate.registerEvent(new Object());
SampleAggregate result = new SampleAggregate().andEventsFrom(aggregate);
var result = new SampleAggregate().andEventsFrom(aggregate);
assertThat(result.domainEvents()).isEqualTo(aggregate.domainEvents());
}
@@ -66,13 +66,13 @@ class AbstractAggregateRootUnitTests {
@Test // DATACMNS-928, DATACMNS-1162
void addsEventAndReturnsAggregate() {
Object first = new Object();
Object second = new Object();
var first = new Object();
var second = new Object();
SampleAggregate aggregate = new SampleAggregate();
var aggregate = new SampleAggregate();
aggregate.registerEvent(first);
SampleAggregate result = aggregate.andEvent(second);
var result = aggregate.andEvent(second);
assertThat(result).isSameAs(aggregate);
assertThat(result.domainEvents()).containsExactly(first, second);

View File

@@ -46,7 +46,7 @@ public abstract class AbstractPageRequestUnitTests {
assertThat(request.hasPrevious()).isTrue();
assertThat(request.next()).isEqualTo((Pageable) newPageRequest(2, 10));
Pageable first = request.previousOrFirst();
var first = request.previousOrFirst();
assertThat(first.hasPrevious()).isFalse();
assertThat(first).isEqualTo(newPageRequest(0, 10));
@@ -57,7 +57,7 @@ public abstract class AbstractPageRequestUnitTests {
@Test // DATACMNS-402
void equalsHonoursPageAndSize() {
AbstractPageRequest request = newPageRequest(0, 10);
var request = newPageRequest(0, 10);
// Equals itself
assertEqualsAndHashcode(request, request);
@@ -80,7 +80,7 @@ public abstract class AbstractPageRequestUnitTests {
@Test // DATACMNS-1327
void getOffsetShouldNotCauseOverflow() {
AbstractPageRequest request = newPageRequest(Integer.MAX_VALUE, Integer.MAX_VALUE);
var request = newPageRequest(Integer.MAX_VALUE, Integer.MAX_VALUE);
assertThat(request.getOffset()).isGreaterThan(Integer.MAX_VALUE);
}

View File

@@ -125,7 +125,7 @@ class ExampleMatcherUnitTests {
void withCreatesNewInstance() {
matcher = matching().withIgnorePaths("foo", "bar", "foo");
ExampleMatcher configuredExampleSpec = matcher.withIgnoreCase();
var configuredExampleSpec = matcher.withIgnoreCase();
assertThat(matcher).isNotSameAs(configuredExampleSpec);
assertThat(matcher.getIgnoredPaths()).hasSize(2);
@@ -166,14 +166,14 @@ class ExampleMatcherUnitTests {
.withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) //
.withMatcher("world", GenericPropertyMatcher::endsWith);
ExampleMatcher sameAsMatcher = matching() //
var sameAsMatcher = matching() //
.withIgnorePaths("foo", "bar", "baz") //
.withNullHandler(NullHandler.IGNORE) //
.withIgnoreCase("ignored-case") //
.withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) //
.withMatcher("world", GenericPropertyMatcher::endsWith);
ExampleMatcher different = matching() //
var different = matching() //
.withIgnorePaths("foo", "bar", "baz") //
.withNullHandler(NullHandler.IGNORE) //
.withMatcher("hello", GenericPropertyMatchers.contains().ignoreCase());

View File

@@ -55,10 +55,10 @@ class ExampleUnitTests {
@Test // DATACMNS-900
void shouldCompareUsingHashCodeAndEquals() throws Exception {
Example<Person> example = Example.of(person, matching().withIgnoreCase("firstname"));
Example<Person> sameAsExample = Example.of(person, matching().withIgnoreCase("firstname"));
var example = Example.of(person, matching().withIgnoreCase("firstname"));
var sameAsExample = Example.of(person, matching().withIgnoreCase("firstname"));
Example<Person> different = Example.of(person,
var different = Example.of(person,
matching().withMatcher("firstname", GenericPropertyMatchers.contains()));
assertThat(example.hashCode()).isEqualTo(sameAsExample.hashCode());

View File

@@ -35,7 +35,7 @@ class PageImplUnitTests {
@Test
void assertEqualsForSimpleSetup() {
PageImpl<String> page = new PageImpl<>(Collections.singletonList("Foo"));
var page = new PageImpl<String>(Collections.singletonList("Foo"));
assertEqualsAndHashcode(page, page);
assertEqualsAndHashcode(page, new PageImpl<>(Collections.singletonList("Foo")));
@@ -45,9 +45,9 @@ class PageImplUnitTests {
void assertEqualsForComplexSetup() {
Pageable pageable = PageRequest.of(0, 10);
List<String> content = Collections.singletonList("Foo");
var content = Collections.singletonList("Foo");
PageImpl<String> page = new PageImpl<>(content, pageable, 100);
var page = new PageImpl<String>(content, pageable, 100);
assertEqualsAndHashcode(page, page);
assertEqualsAndHashcode(page, new PageImpl<>(content, pageable, 100));
@@ -127,7 +127,7 @@ class PageImplUnitTests {
@Test // DATACMNS-635
void transformsPageCorrectly() {
Page<Integer> transformed = new PageImpl<>(Arrays.asList("foo", "bar"), PageRequest.of(0, 2), 10)
var transformed = new PageImpl<>(Arrays.asList("foo", "bar"), PageRequest.of(0, 2), 10)
.map(String::length);
assertThat(transformed.getContent()).hasSize(2).contains(3, 3);

View File

@@ -43,7 +43,7 @@ class PageRequestUnitTests extends AbstractPageRequestUnitTests {
@Test
void equalsRegardsSortCorrectly() {
Sort sort = Sort.by(Direction.DESC, "foo");
var sort = Sort.by(Direction.DESC, "foo");
AbstractPageRequest request = PageRequest.ofSize(10).withPage(1).withSort(sort);
// Equals itself

View File

@@ -39,7 +39,7 @@ class RangeUnitTests {
@Test // DATACMNS-651
void excludesLowerBoundIfConfigured() {
Range<Long> range = Range.from(Bound.exclusive(10L)).to(Bound.inclusive(20L));
var range = Range.from(Bound.exclusive(10L)).to(Bound.inclusive(20L));
assertThat(range.contains(10L)).isFalse();
assertThat(range.contains(20L)).isTrue();
@@ -51,7 +51,7 @@ class RangeUnitTests {
@Test // DATACMNS-651
void excludesUpperBoundIfConfigured() {
Range<Long> range = Range.of(Bound.inclusive(10L), Bound.exclusive(20L));
var range = Range.of(Bound.inclusive(10L), Bound.exclusive(20L));
assertThat(range.contains(10L)).isTrue();
assertThat(range.contains(20L)).isFalse();
@@ -63,7 +63,7 @@ class RangeUnitTests {
@Test // DATACMNS-651, DATACMNS-1050
void handlesOpenUpperBoundCorrectly() {
Range<Long> range = Range.of(Bound.inclusive(10L), Bound.unbounded());
var range = Range.of(Bound.inclusive(10L), Bound.unbounded());
assertThat(range.contains(10L)).isTrue();
assertThat(range.contains(20L)).isTrue();
@@ -78,7 +78,7 @@ class RangeUnitTests {
@Test // DATACMNS-651, DATACMNS-1050
void handlesOpenLowerBoundCorrectly() {
Range<Long> range = Range.of(Bound.unbounded(), Bound.inclusive(20L));
var range = Range.of(Bound.unbounded(), Bound.inclusive(20L));
assertThat(range.contains(10L)).isTrue();
assertThat(range.contains(20L)).isTrue();
@@ -92,7 +92,7 @@ class RangeUnitTests {
@Test // DATACMNS-1050
void createsInclusiveBoundaryCorrectly() {
Bound<Integer> bound = Bound.inclusive(10);
var bound = Bound.inclusive(10);
assertThat(bound.isInclusive()).isTrue();
assertThat(bound.getValue()).contains(10);
@@ -101,7 +101,7 @@ class RangeUnitTests {
@Test // DATACMNS-1050
void createsExclusiveBoundaryCorrectly() {
Bound<Double> bound = Bound.exclusive(10d);
var bound = Bound.exclusive(10d);
assertThat(bound.isInclusive()).isFalse();
assertThat(bound.getValue()).contains(10d);
@@ -110,10 +110,10 @@ class RangeUnitTests {
@Test // DATACMNS-1050
void createsRangeFromBoundariesCorrectly() {
Bound<Long> lower = Bound.inclusive(10L);
Bound<Long> upper = Bound.inclusive(20L);
var lower = Bound.inclusive(10L);
var upper = Bound.inclusive(20L);
Range<Long> range = Range.of(lower, upper);
var range = Range.of(lower, upper);
assertThat(range.contains(9L)).isFalse();
assertThat(range.contains(10L)).isTrue();
@@ -124,7 +124,7 @@ class RangeUnitTests {
@Test // DATACMNS-1050
void shouldExclusiveBuildRangeLowerFirst() {
Range<Long> range = Range.from(Bound.exclusive(10L)).to(Bound.exclusive(20L));
var range = Range.from(Bound.exclusive(10L)).to(Bound.exclusive(20L));
assertThat(range.contains(9L)).isFalse();
assertThat(range.contains(10L)).isFalse();
@@ -138,7 +138,7 @@ class RangeUnitTests {
@Test // DATACMNS-1050
void shouldBuildRange() {
Range<Long> range = Range.from(Bound.inclusive(10L)).to(Bound.inclusive(20L));
var range = Range.from(Bound.inclusive(10L)).to(Bound.inclusive(20L));
assertThat(range.contains(9L)).isFalse();
assertThat(range.contains(10L)).isTrue();
@@ -162,7 +162,7 @@ class RangeUnitTests {
@Test // DATACMNS-1499
void createsOpenRange() {
Range<Long> range = Range.open(5L, 10L);
var range = Range.open(5L, 10L);
assertThat(range.contains(5L)).isFalse();
assertThat(range.contains(10L)).isFalse();
@@ -171,7 +171,7 @@ class RangeUnitTests {
@Test // DATACMNS-1499
void createsClosedRange() {
Range<Long> range = Range.closed(5L, 10L);
var range = Range.closed(5L, 10L);
assertThat(range.contains(5L)).isTrue();
assertThat(range.contains(10L)).isTrue();
@@ -180,7 +180,7 @@ class RangeUnitTests {
@Test // DATACMNS-1499
void createsLeftOpenRange() {
Range<Long> range = Range.leftOpen(5L, 10L);
var range = Range.leftOpen(5L, 10L);
assertThat(range.contains(5L)).isFalse();
assertThat(range.contains(10L)).isTrue();
@@ -189,7 +189,7 @@ class RangeUnitTests {
@Test // DATACMNS-1499
void createsRightOpenRange() {
Range<Long> range = Range.rightOpen(5L, 10L);
var range = Range.rightOpen(5L, 10L);
assertThat(range.contains(5L)).isTrue();
assertThat(range.contains(10L)).isFalse();

View File

@@ -92,14 +92,14 @@ class SortUnitTests {
@Test
void allowsCombiningSorts() {
Sort sort = Sort.by("foo").and(Sort.by("bar"));
var sort = Sort.by("foo").and(Sort.by("bar"));
assertThat(sort).containsExactly(Order.by("foo"), Order.by("bar"));
}
@Test
void handlesAdditionalNullSort() {
Sort sort = Sort.by("foo").and(Sort.unsorted());
var sort = Sort.by("foo").and(Sort.unsorted());
assertThat(sort).containsExactly(Order.by("foo"));
}
@@ -127,8 +127,8 @@ class SortUnitTests {
@Test // DATACMNS-436
void ordersWithDifferentIgnoreCaseDoNotEqual() {
Order foo = Order.by("foo");
Order fooIgnoreCase = Order.by("foo").ignoreCase();
var foo = Order.by("foo");
var fooIgnoreCase = Order.by("foo").ignoreCase();
assertThat(foo).isNotEqualTo(fooIgnoreCase);
assertThat(foo.hashCode()).isNotEqualTo(fooIgnoreCase.hashCode());
@@ -157,8 +157,8 @@ class SortUnitTests {
@Test // DATACMNS-908
void createsNewOrderForDifferentProperty() {
Order source = Order.desc("foo").nullsFirst().ignoreCase();
Order result = source.withProperty("bar");
var source = Order.desc("foo").nullsFirst().ignoreCase();
var result = source.withProperty("bar");
assertThat(result.getProperty()).isEqualTo("bar");
assertThat(result.getDirection()).isEqualTo(source.getDirection());

View File

@@ -69,7 +69,7 @@ class SpringDataJaxbUnitTests {
@BeforeEach
void setUp() throws Exception {
JAXBContext context = JAXBContext.newInstance("org.springframework.data.domain.jaxb");
var context = JAXBContext.newInstance("org.springframework.data.domain.jaxb");
marshaller = context.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
@@ -80,8 +80,8 @@ class SpringDataJaxbUnitTests {
@Test
void usesCustomTypeAdapterForPageRequests() throws Exception {
StringWriter writer = new StringWriter();
Wrapper wrapper = new Wrapper();
var writer = new StringWriter();
var wrapper = new Wrapper();
wrapper.pageable = pageable;
wrapper.sort = sort;
wrapper.pageableWithoutSort = PageRequest.of(10, 20);
@@ -93,7 +93,7 @@ class SpringDataJaxbUnitTests {
@Test
void readsPageRequest() throws Exception {
Object result = unmarshaller.unmarshal(resource.getFile());
var result = unmarshaller.unmarshal(resource.getFile());
assertThat(result).isInstanceOf(Wrapper.class);
assertThat(((Wrapper) result).pageable).isEqualTo(pageable);
@@ -103,8 +103,8 @@ class SpringDataJaxbUnitTests {
@Test
void writesPlainPage() throws Exception {
PageWrapper wrapper = new PageWrapper();
Content content = new Content();
var wrapper = new PageWrapper();
var content = new Content();
content.name = "Foo";
wrapper.page = new PageImpl<>(Collections.singletonList(content));
wrapper.pageWithLinks = new PageImpl<>(Collections.singletonList(content));
@@ -116,8 +116,8 @@ class SpringDataJaxbUnitTests {
try {
Scanner scanner = new Scanner(resource.getInputStream());
StringBuilder builder = new StringBuilder();
var scanner = new Scanner(resource.getInputStream());
var builder = new StringBuilder();
while (scanner.hasNextLine()) {
builder.append(scanner.nextLine()).append("\n");

View File

@@ -56,7 +56,7 @@ class BoxUnitTests {
@Test // DATACMNS-482
void testSerialization() {
Box serialized = (Box) SerializationUtils.deserialize(SerializationUtils.serialize(first));
var serialized = (Box) SerializationUtils.deserialize(SerializationUtils.serialize(first));
assertThat(serialized).isEqualTo(first);
}
}

View File

@@ -41,8 +41,8 @@ class CircleUnitTests {
@Test // DATACMNS-437
void considersTwoCirclesEqualCorrectly() {
Circle left = new Circle(1, 1, 1);
Circle right = new Circle(1, 1, 1);
var left = new Circle(1, 1, 1);
var right = new Circle(1, 1, 1);
assertThat(left).isEqualTo(right);
assertThat(right).isEqualTo(left);
@@ -62,9 +62,9 @@ class CircleUnitTests {
@Test // DATACMNS-482
void testSerialization() {
Circle circle = new Circle(1, 1, 1);
var circle = new Circle(1, 1, 1);
Circle serialized = (Circle) SerializationUtils.deserialize(SerializationUtils.serialize(circle));
var serialized = (Circle) SerializationUtils.deserialize(SerializationUtils.serialize(circle));
assertThat(serialized).isEqualTo(circle);
}
}

View File

@@ -20,7 +20,7 @@ import static org.springframework.data.geo.Metrics.*;
import org.assertj.core.data.Offset;
import org.junit.jupiter.api.Test;
import org.springframework.data.domain.Range;
import org.springframework.data.domain.Range.Bound;
import org.springframework.util.SerializationUtils;
@@ -45,8 +45,8 @@ class DistanceUnitTests {
@Test // DATACMNS-437
void addsDistancesWithoutExplicitMetric() {
Distance left = new Distance(2.5, KILOMETERS);
Distance right = new Distance(2.5, KILOMETERS);
var left = new Distance(2.5, KILOMETERS);
var right = new Distance(2.5, KILOMETERS);
assertThat(left.add(right)).isEqualTo(new Distance(5.0, KILOMETERS));
}
@@ -54,8 +54,8 @@ class DistanceUnitTests {
@Test // DATACMNS-437
void addsDistancesWithExplicitMetric() {
Distance left = new Distance(2.5, KILOMETERS);
Distance right = new Distance(2.5, KILOMETERS);
var left = new Distance(2.5, KILOMETERS);
var right = new Distance(2.5, KILOMETERS);
assertThat(left.add(right, MILES)).isEqualTo(new Distance(3.106856281073925, MILES));
}
@@ -109,9 +109,9 @@ class DistanceUnitTests {
@Test // DATACMNS-482
void testSerialization() {
Distance dist = new Distance(10, KILOMETERS);
var dist = new Distance(10, KILOMETERS);
Distance serialized = (Distance) SerializationUtils.deserialize(SerializationUtils.serialize(dist));
var serialized = (Distance) SerializationUtils.deserialize(SerializationUtils.serialize(dist));
assertThat(serialized).isEqualTo(dist);
}
@@ -123,10 +123,10 @@ class DistanceUnitTests {
@Test // DATACMNS-651
void createsARangeCorrectly() {
Distance twoKilometers = new Distance(2, KILOMETERS);
Distance tenKilometers = new Distance(10, KILOMETERS);
var twoKilometers = new Distance(2, KILOMETERS);
var tenKilometers = new Distance(10, KILOMETERS);
Range<Distance> range = Distance.between(twoKilometers, tenKilometers);
var range = Distance.between(twoKilometers, tenKilometers);
assertThat(range).isNotNull();
assertThat(range.getLowerBound()).isEqualTo(Bound.inclusive(twoKilometers));
@@ -136,10 +136,10 @@ class DistanceUnitTests {
@Test // DATACMNS-651
void createsARangeFromPiecesCorrectly() {
Distance twoKilometers = new Distance(2, KILOMETERS);
Distance tenKilometers = new Distance(10, KILOMETERS);
var twoKilometers = new Distance(2, KILOMETERS);
var tenKilometers = new Distance(10, KILOMETERS);
Range<Distance> range = Distance.between(2, KILOMETERS, 10, KILOMETERS);
var range = Distance.between(2, KILOMETERS, 10, KILOMETERS);
assertThat(range).isNotNull();
assertThat(range.getLowerBound()).isEqualTo(Bound.inclusive(twoKilometers));
@@ -149,9 +149,9 @@ class DistanceUnitTests {
@Test // DATACMNS-651
void implementsComparableCorrectly() {
Distance twoKilometers = new Distance(2, KILOMETERS);
Distance tenKilometers = new Distance(10, KILOMETERS);
Distance tenKilometersInMiles = new Distance(6.21371256214785, MILES);
var twoKilometers = new Distance(2, KILOMETERS);
var tenKilometers = new Distance(10, KILOMETERS);
var tenKilometersInMiles = new Distance(6.21371256214785, MILES);
assertThat(tenKilometers.compareTo(tenKilometers)).isEqualTo(0);
assertThat(tenKilometers.compareTo(tenKilometersInMiles)).isEqualTo(0);

View File

@@ -41,8 +41,8 @@ class GeoModuleIntegrationTests {
@Test // DATACMNS-475
void deserializesDistance() throws Exception {
String json = "{\"value\":10.0,\"metric\":\"KILOMETERS\"}";
Distance reference = new Distance(10.0, Metrics.KILOMETERS);
var json = "{\"value\":10.0,\"metric\":\"KILOMETERS\"}";
var reference = new Distance(10.0, Metrics.KILOMETERS);
assertThat(mapper.readValue(json, Distance.class)).isEqualTo(reference);
assertThat(mapper.writeValueAsString(reference)).isEqualTo(json);
@@ -51,8 +51,8 @@ class GeoModuleIntegrationTests {
@Test // DATACMNS-475
void deserializesPoint() throws Exception {
String json = "{\"x\":10.0,\"y\":20.0}";
Point reference = new Point(10.0, 20.0);
var json = "{\"x\":10.0,\"y\":20.0}";
var reference = new Point(10.0, 20.0);
assertThat(mapper.readValue(json, Point.class)).isEqualTo(reference);
assertThat(mapper.writeValueAsString(reference)).isEqualTo(json);
@@ -61,8 +61,8 @@ class GeoModuleIntegrationTests {
@Test // DATACMNS-475
void deserializesCircle() throws Exception {
String json = "{\"center\":{\"x\":10.0,\"y\":20.0},\"radius\":{\"value\":10.0,\"metric\":\"KILOMETERS\"}}";
Circle reference = new Circle(new Point(10.0, 20.0), new Distance(10, Metrics.KILOMETERS));
var json = "{\"center\":{\"x\":10.0,\"y\":20.0},\"radius\":{\"value\":10.0,\"metric\":\"KILOMETERS\"}}";
var reference = new Circle(new Point(10.0, 20.0), new Distance(10, Metrics.KILOMETERS));
assertThat(mapper.readValue(json, Circle.class)).isEqualTo(reference);
assertThat(mapper.writeValueAsString(reference)).isEqualTo(json);
@@ -71,8 +71,8 @@ class GeoModuleIntegrationTests {
@Test // DATACMNS-475
void deserializesBox() throws Exception {
String json = "{\"first\":{\"x\":1.0,\"y\":2.0},\"second\":{\"x\":2.0,\"y\":3.0}}";
Box reference = new Box(new Point(1, 2), new Point(2, 3));
var json = "{\"first\":{\"x\":1.0,\"y\":2.0},\"second\":{\"x\":2.0,\"y\":3.0}}";
var reference = new Box(new Point(1, 2), new Point(2, 3));
assertThat(mapper.readValue(json, Box.class)).isEqualTo(reference);
assertThat(mapper.writeValueAsString(reference)).isEqualTo(json);
@@ -81,8 +81,8 @@ class GeoModuleIntegrationTests {
@Test // DATACMNS-475
void deserializesPolygon() throws Exception {
String json = "{\"points\":[{\"x\":1.0,\"y\":2.0},{\"x\":2.0,\"y\":3.0},{\"x\":3.0,\"y\":4.0}]}";
Polygon reference = new Polygon(new Point(1, 2), new Point(2, 3), new Point(3, 4));
var json = "{\"points\":[{\"x\":1.0,\"y\":2.0},{\"x\":2.0,\"y\":3.0},{\"x\":3.0,\"y\":4.0}]}";
var reference = new Polygon(new Point(1, 2), new Point(2, 3), new Point(3, 4));
assertThat(mapper.readValue(json, Polygon.class)).isEqualTo(reference);
assertThat(mapper.writeValueAsString(reference)).isEqualTo(json);

View File

@@ -60,10 +60,10 @@ class GeoResultUnitTests {
@Test // DATACMNS-482
void testSerialization() {
GeoResult<String> result = new GeoResult<>("test", new Distance(2));
var result = new GeoResult<String>("test", new Distance(2));
@SuppressWarnings("unchecked")
GeoResult<String> serialized = (GeoResult<String>) SerializationUtils.deserialize(SerializationUtils.serialize(result));
var serialized = (GeoResult<String>) SerializationUtils.deserialize(SerializationUtils.serialize(result));
assertThat(serialized).isEqualTo(result);
}
}

View File

@@ -35,9 +35,9 @@ class GeoResultsUnitTests {
@SuppressWarnings("unchecked")
void calculatesAverageForGivenGeoResults() {
GeoResult<Object> first = new GeoResult<>(new Object(), new Distance(2));
GeoResult<Object> second = new GeoResult<>(new Object(), new Distance(5));
GeoResults<Object> geoResults = new GeoResults<>(Arrays.asList(first, second));
var first = new GeoResult<Object>(new Object(), new Distance(2));
var second = new GeoResult<Object>(new Object(), new Distance(5));
var geoResults = new GeoResults<Object>(Arrays.asList(first, second));
assertThat(geoResults.getAverageDistance()).isEqualTo(new Distance(3.5));
}
@@ -45,11 +45,11 @@ class GeoResultsUnitTests {
@Test // DATACMNS-482
void testSerialization() {
GeoResult<String> result = new GeoResult<>("test", new Distance(2));
GeoResults<String> geoResults = new GeoResults<>(Collections.singletonList(result));
var result = new GeoResult<String>("test", new Distance(2));
var geoResults = new GeoResults<String>(Collections.singletonList(result));
@SuppressWarnings("unchecked")
GeoResults<String> serialized = (GeoResults<String>) SerializationUtils
var serialized = (GeoResults<String>) SerializationUtils
.deserialize(SerializationUtils.serialize(geoResults));
assertThat(serialized).isEqualTo(geoResults);
}

View File

@@ -49,9 +49,9 @@ class PointUnitTests {
@Test // DATACMNS-482
void testSerialization() {
Point point = new Point(1.5, 1.5);
var point = new Point(1.5, 1.5);
Point serialized = (Point) SerializationUtils.deserialize(SerializationUtils.serialize(point));
var serialized = (Point) SerializationUtils.deserialize(SerializationUtils.serialize(point));
assertThat(serialized).isEqualTo(point);
}
}

View File

@@ -40,7 +40,7 @@ class PolygonUnitTests {
@Test // DATACMNS-437
void createsSimplePolygon() {
Polygon polygon = new Polygon(third, second, first);
var polygon = new Polygon(third, second, first);
assertThat(polygon).isNotNull();
}
@@ -48,8 +48,8 @@ class PolygonUnitTests {
@Test // DATACMNS-437
void isEqualForSamePoints() {
Polygon left = new Polygon(third, second, first);
Polygon right = new Polygon(third, second, first);
var left = new Polygon(third, second, first);
var right = new Polygon(third, second, first);
assertThat(left).isEqualTo(right);
assertThat(right).isEqualTo(left);
@@ -65,9 +65,9 @@ class PolygonUnitTests {
@Test // DATACMNS-482
void testSerialization() {
Polygon polygon = new Polygon(third, second, first);
var polygon = new Polygon(third, second, first);
Polygon serialized = (Polygon) SerializationUtils.deserialize(SerializationUtils.serialize(polygon));
var serialized = (Polygon) SerializationUtils.deserialize(SerializationUtils.serialize(polygon));
assertThat(serialized).isEqualTo(polygon);
}
}

View File

@@ -41,8 +41,8 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1173
void exposesNoInformationOnEmptyProbe() {
Sample sample = new Sample();
RevisionMetadata<Long> metadata = getMetadata(sample);
var sample = new Sample();
var metadata = getMetadata(sample);
assertThat(metadata.getRevisionNumber()).isEmpty();
@@ -57,10 +57,10 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1173
void exposesRevisionNumber() {
Sample sample = new Sample();
var sample = new Sample();
sample.revisionNumber = 1L;
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
softly.assertThat(metadata.getRevisionNumber()).hasValue(1L);
softly.assertThat(metadata.getRequiredRevisionNumber()).isEqualTo(1L);
@@ -71,11 +71,11 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1173
void exposesRevisionDateAndInstantForLocalDateTime() {
Sample sample = new Sample();
var sample = new Sample();
sample.revisionDate = LocalDateTime.now();
Instant expectedInstant = sample.revisionDate.atZone(ZoneOffset.systemDefault()).toInstant();
var expectedInstant = sample.revisionDate.atZone(ZoneOffset.systemDefault()).toInstant();
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
softly.assertThat(metadata.getRevisionInstant()).hasValue(expectedInstant);
softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(expectedInstant);
@@ -86,11 +86,11 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1251
void exposesRevisionDateAndInstantForInstant() {
SampleWithInstant sample = new SampleWithInstant();
var sample = new SampleWithInstant();
sample.revisionInstant = Instant.now();
LocalDateTime expectedLocalDateTime = LocalDateTime.ofInstant(sample.revisionInstant, ZoneOffset.systemDefault());
var expectedLocalDateTime = LocalDateTime.ofInstant(sample.revisionInstant, ZoneOffset.systemDefault());
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
softly.assertThat(metadata.getRevisionInstant()).hasValue(sample.revisionInstant);
softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(sample.revisionInstant);
@@ -101,13 +101,13 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1290
void exposesRevisionDateAndInstantForLong() {
SampleWithLong sample = new SampleWithLong();
var sample = new SampleWithLong();
sample.revisionLong = 4711L;
Instant expectedInstant = Instant.ofEpochMilli(sample.revisionLong);
LocalDateTime expectedLocalDateTime = LocalDateTime.ofInstant(expectedInstant, ZoneOffset.systemDefault());
var expectedInstant = Instant.ofEpochMilli(sample.revisionLong);
var expectedLocalDateTime = LocalDateTime.ofInstant(expectedInstant, ZoneOffset.systemDefault());
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
softly.assertThat(metadata.getRevisionInstant()).hasValue(expectedInstant);
softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(expectedInstant);
@@ -118,11 +118,11 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1384
void supportsTimestampRevisionInstant() {
SampleWithTimestamp sample = new SampleWithTimestamp();
Instant now = Instant.now();
var sample = new SampleWithTimestamp();
var now = Instant.now();
sample.revision = Timestamp.from(now);
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(now);
}
@@ -130,11 +130,11 @@ class AnnotationRevisionMetadataUnitTests {
@Test // DATACMNS-1384
void supportsDateRevisionInstant() {
SampleWithDate sample = new SampleWithDate();
Date date = new Date();
var sample = new SampleWithDate();
var date = new Date();
sample.revision = date;
RevisionMetadata<Long> metadata = getMetadata(sample);
var metadata = getMetadata(sample);
assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(date.toInstant());
}

View File

@@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import java.time.Instant;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -46,10 +45,10 @@ class RevisionUnitTests {
when(firstMetadata.getRevisionNumber()).thenReturn(Optional.of(1));
when(secondMetadata.getRevisionNumber()).thenReturn(Optional.of(2));
Revision<Integer, Object> first = Revision.of(firstMetadata, new Object());
Revision<Integer, Object> second = Revision.of(secondMetadata, new Object());
var first = Revision.of(firstMetadata, new Object());
var second = Revision.of(secondMetadata, new Object());
List<Revision<Integer, Object>> revisions = Stream.of(second, first).sorted().collect(Collectors.toList());
var revisions = Stream.of(second, first).sorted().collect(Collectors.toList());
assertThat(revisions.get(0)).isEqualTo(first);
assertThat(revisions.get(1)).isEqualTo(second);
@@ -58,7 +57,7 @@ class RevisionUnitTests {
@Test // DATACMNS-187
void returnsRevisionNumber() {
Optional<Integer> reference = Optional.of(4711);
var reference = Optional.of(4711);
when(firstMetadata.getRevisionNumber()).thenReturn(reference);
assertThat(Revision.of(firstMetadata, new Object()).getRevisionNumber()).isEqualTo(reference);
@@ -67,7 +66,7 @@ class RevisionUnitTests {
@Test // DATACMNS-1251
void returnsRevisionInstant() {
Optional<Instant> reference = Optional.of(Instant.now());
var reference = Optional.of(Instant.now());
when(firstMetadata.getRevisionInstant()).thenReturn(reference);
assertThat(Revision.of(firstMetadata, new Object()).getRevisionInstant()).isEqualTo(reference);

View File

@@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import java.util.Arrays;
import java.util.Iterator;
import java.util.Optional;
import org.junit.jupiter.api.BeforeEach;
@@ -58,8 +57,8 @@ class RevisionsUnitTests {
@Test
void iteratesInCorrectOrder() {
Revisions<Integer, Object> revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision));
Iterator<Revision<Integer, Object>> iterator = revisions.iterator();
var revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision));
var iterator = revisions.iterator();
assertThat(iterator.hasNext()).isTrue();
assertThat(iterator.next()).isEqualTo(firstRevision);
@@ -77,8 +76,8 @@ class RevisionsUnitTests {
@Test
void iteratesReversedRevisionsInCorrectOrder() {
Revisions<Integer, Object> revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision));
Iterator<Revision<Integer, Object>> iterator = revisions.reverse().iterator();
var revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision));
var iterator = revisions.reverse().iterator();
assertThat(iterator.hasNext()).isTrue();
assertThat(iterator.next()).isEqualTo(secondRevision);
@@ -90,8 +89,8 @@ class RevisionsUnitTests {
@Test
void forcesInvalidlyOrderedRevisionsToBeOrdered() {
Revisions<Integer, Object> revisions = Revisions.of(Arrays.asList(secondRevision, firstRevision));
Iterator<Revision<Integer, Object>> iterator = revisions.iterator();
var revisions = Revisions.of(Arrays.asList(secondRevision, firstRevision));
var iterator = revisions.iterator();
assertThat(iterator.hasNext()).isTrue();
assertThat(iterator.next()).isEqualTo(firstRevision);

View File

@@ -36,12 +36,12 @@ class InstantiationAwarePersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1639
void shouldCreateNewInstance() {
EntityInstantiators instantiators = new EntityInstantiators();
SampleMappingContext context = new SampleMappingContext();
var instantiators = new EntityInstantiators();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Sample.class);
Sample sample = new Sample("Dave", "Matthews", 42);
var sample = new Sample("Dave", "Matthews", 42);
PersistentPropertyAccessor<Sample> wrapper = new InstantiationAwarePropertyAccessor<>(sample,
entity::getPropertyAccessor,
@@ -55,12 +55,12 @@ class InstantiationAwarePersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1768
void shouldSetMultipleProperties() {
EntityInstantiators instantiators = new EntityInstantiators();
SampleMappingContext context = new SampleMappingContext();
var instantiators = new EntityInstantiators();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Sample.class);
Sample bean = new Sample("Dave", "Matthews", 42);
var bean = new Sample("Dave", "Matthews", 42);
PersistentPropertyAccessor<Sample> wrapper = new InstantiationAwarePropertyAccessor<>(bean,
entity::getPropertyAccessor, instantiators);

View File

@@ -45,8 +45,8 @@ class ParameterUnitTests<P extends PersistentProperty<P>> {
@Test
void twoParametersWithIdenticalSetupEqual() {
Parameter<Object, P> left = new Parameter<>("name", type, annotations, entity);
Parameter<Object, P> right = new Parameter<>("name", type, annotations, entity);
var left = new Parameter<Object, P>("name", type, annotations, entity);
var right = new Parameter<Object, P>("name", type, annotations, entity);
assertThat(left).isEqualTo(right);
assertThat(left.hashCode()).isEqualTo(right.hashCode());
@@ -55,8 +55,8 @@ class ParameterUnitTests<P extends PersistentProperty<P>> {
@Test
void twoParametersWithIdenticalSetupAndNullNameEqual() {
Parameter<Object, P> left = new Parameter<>(null, type, annotations, entity);
Parameter<Object, P> right = new Parameter<>(null, type, annotations, entity);
var left = new Parameter<Object, P>(null, type, annotations, entity);
var right = new Parameter<Object, P>(null, type, annotations, entity);
assertThat(left).isEqualTo(right);
assertThat(left.hashCode()).isEqualTo(right.hashCode());
@@ -65,8 +65,8 @@ class ParameterUnitTests<P extends PersistentProperty<P>> {
@Test
void twoParametersWithIdenticalAndNullEntitySetupEqual() {
Parameter<Object, P> left = new Parameter<>("name", type, annotations, null);
Parameter<Object, P> right = new Parameter<>("name", type, annotations, null);
var left = new Parameter<Object, P>("name", type, annotations, null);
var right = new Parameter<Object, P>("name", type, annotations, null);
assertThat(left).isEqualTo(right);
assertThat(left.hashCode()).isEqualTo(right.hashCode());
@@ -75,8 +75,8 @@ class ParameterUnitTests<P extends PersistentProperty<P>> {
@Test
void twoParametersWithDifferentNameAreNotEqual() {
Parameter<Object, P> left = new Parameter<>("first", type, annotations, entity);
Parameter<Object, P> right = new Parameter<>("second", type, annotations, entity);
var left = new Parameter<Object, P>("first", type, annotations, entity);
var right = new Parameter<Object, P>("second", type, annotations, entity);
assertThat(left).isNotEqualTo(right);
}
@@ -84,8 +84,8 @@ class ParameterUnitTests<P extends PersistentProperty<P>> {
@Test
void twoParametersWithDifferenTypeAreNotEqual() {
Parameter<Object, P> left = new Parameter<>("name", type, annotations, entity);
Parameter<String, P> right = new Parameter<>("name", ClassTypeInformation.from(String.class), annotations,
var left = new Parameter<Object, P>("name", type, annotations, entity);
var right = new Parameter<String, P>("name", ClassTypeInformation.from(String.class), annotations,
stringEntity);
assertThat(left).isNotEqualTo(right);

View File

@@ -61,7 +61,7 @@ public class PersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1275
public void looksUpValueForPropertyPath() {
Order order = new Order(new Customer("Dave"));
var order = new Order(new Customer("Dave"));
setUp(order, "customer.firstname");
@@ -71,8 +71,8 @@ public class PersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1275
public void setsPropertyOnNestedPath() {
Customer customer = new Customer("Dave");
Order order = new Order(customer);
var customer = new Customer("Dave");
var order = new Order(customer);
setUp(order, "customer.firstname");
@@ -112,16 +112,16 @@ public class PersistentPropertyAccessorUnitTests {
public void correctlyReplacesObjectInstancesWhenSettingPropertyPathOnImmutableObjects() {
PersistentEntity<Object, SamplePersistentProperty> entity = context.getPersistentEntity(Outer.class);
PersistentPropertyPath<SamplePersistentProperty> path = context.getPersistentPropertyPath("immutable.value",
var path = context.getPersistentPropertyPath("immutable.value",
entity.getType());
NestedImmutable immutable = new NestedImmutable("foo");
Outer outer = new Outer(immutable);
var immutable = new NestedImmutable("foo");
var outer = new Outer(immutable);
PersistentPropertyAccessor accessor = entity.getPropertyAccessor(outer);
accessor.setProperty(path, "bar");
Object result = accessor.getBean();
var result = accessor.getBean();
assertThat(result).isInstanceOfSatisfying(Outer.class, it -> {
assertThat(it.immutable).isNotSameAs(immutable);
@@ -132,13 +132,13 @@ public class PersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1377
public void shouldConvertToPropertyPathLeafType() {
Order order = new Order(new Customer("1"));
var order = new Order(new Customer("1"));
PersistentPropertyAccessor<Order> accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order);
ConvertingPropertyAccessor<Order> convertingAccessor = new ConvertingPropertyAccessor<>(accessor,
var accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order);
var convertingAccessor = new ConvertingPropertyAccessor<Order>(accessor,
new DefaultConversionService());
PersistentPropertyPath<SamplePersistentProperty> path = context.getPersistentPropertyPath("customer.firstname",
var path = context.getPersistentPropertyPath("customer.firstname",
Order.class);
convertingAccessor.setProperty(path, 2);
@@ -149,7 +149,7 @@ public class PersistentPropertyAccessorUnitTests {
@Test // DATACMNS-1555
public void usesTraversalContextToTraverseCollections() {
WithContext withContext = WithContext.builder() //
var withContext = WithContext.builder() //
.collection(Collections.singleton("value")) //
.list(Collections.singletonList("value")) //
.set(Collections.singleton("value")) //
@@ -157,24 +157,24 @@ public class PersistentPropertyAccessorUnitTests {
.string(" value ") //
.build();
Spec collectionHelper = Spec.of("collection",
var collectionHelper = Spec.of("collection",
(context, property) -> context.registerCollectionHandler(property, it -> it.iterator().next()));
Spec listHelper = Spec.of("list", (context, property) -> context.registerListHandler(property, it -> it.get(0)));
Spec setHelper = Spec.of("set",
var listHelper = Spec.of("list", (context, property) -> context.registerListHandler(property, it -> it.get(0)));
var setHelper = Spec.of("set",
(context, property) -> context.registerSetHandler(property, it -> it.iterator().next()));
Spec mapHelper = Spec.of("map", (context, property) -> context.registerMapHandler(property, it -> it.get("key")));
Spec stringHelper = Spec.of("string",
var mapHelper = Spec.of("map", (context, property) -> context.registerMapHandler(property, it -> it.get("key")));
var stringHelper = Spec.of("string",
(context, property) -> context.registerHandler(property, String.class, it -> it.trim()));
Stream.of(collectionHelper, listHelper, setHelper, mapHelper, stringHelper).forEach(it -> {
PersistentEntity<Object, SamplePersistentProperty> entity = context.getPersistentEntity(WithContext.class);
PersistentProperty<?> property = entity.getRequiredPersistentProperty(it.name);
PersistentPropertyAccessor<WithContext> accessor = entity.getPropertyAccessor(withContext);
var accessor = entity.getPropertyAccessor(withContext);
TraversalContext traversalContext = it.registrar.apply(new TraversalContext(), property);
var traversalContext = it.registrar.apply(new TraversalContext(), property);
PersistentPropertyPath<SamplePersistentProperty> propertyPath = context.getPersistentPropertyPath(it.name,
var propertyPath = context.getPersistentPropertyPath(it.name,
WithContext.class);
assertThat(accessor.getProperty(propertyPath, traversalContext)).isEqualTo("value");
@@ -187,7 +187,7 @@ public class PersistentPropertyAccessorUnitTests {
PersistentEntity<Object, SamplePersistentProperty> entity = context.getPersistentEntity(WithContext.class);
PersistentProperty<?> property = entity.getRequiredPersistentProperty("collection");
TraversalContext traversal = new TraversalContext();
var traversal = new TraversalContext();
assertThatIllegalArgumentException() //
.isThrownBy(() -> traversal.registerHandler(property, Map.class, Function.identity()));

View File

@@ -112,7 +112,7 @@ class PreferredConstructorDiscovererUnitTests<P extends PersistentProperty<P>> {
assertThat(PreferredConstructorDiscoverer.discover(entity)).satisfies(constructor -> {
PersistenceConstructor annotation = constructor.getConstructor().getAnnotation(PersistenceConstructor.class);
var annotation = constructor.getConstructor().getAnnotation(PersistenceConstructor.class);
assertThat(annotation).isNotNull();
assertThat(constructor.getConstructor().isSynthetic()).isFalse();
});

View File

@@ -18,7 +18,6 @@ package org.springframework.data.mapping;
import static org.assertj.core.api.Assertions.*;
import static org.springframework.data.mapping.PropertyPath.from;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;
@@ -41,7 +40,7 @@ class PropertyPathUnitTests {
@Test
void parsesSimplePropertyCorrectly() {
PropertyPath reference = PropertyPath.from("userName", Foo.class);
var reference = PropertyPath.from("userName", Foo.class);
assertThat(reference.hasNext()).isFalse();
assertThat(reference.toDotPath()).isEqualTo("userName");
@@ -51,7 +50,7 @@ class PropertyPathUnitTests {
@Test
void parsesPathPropertyCorrectly() {
PropertyPath reference = PropertyPath.from("userName", Bar.class);
var reference = PropertyPath.from("userName", Bar.class);
assertThat(reference.hasNext()).isTrue();
assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class));
assertThat(reference.toDotPath()).isEqualTo("user.name");
@@ -60,7 +59,7 @@ class PropertyPathUnitTests {
@Test
void prefersLongerMatches() {
PropertyPath reference = PropertyPath.from("userName", Sample.class);
var reference = PropertyPath.from("userName", Sample.class);
assertThat(reference.hasNext()).isFalse();
assertThat(reference.toDotPath()).isEqualTo("userName");
}
@@ -68,7 +67,7 @@ class PropertyPathUnitTests {
@Test
void testname() {
PropertyPath reference = PropertyPath.from("userName", Sample2.class);
var reference = PropertyPath.from("userName", Sample2.class);
assertThat(reference.getSegment()).isEqualTo("user");
assertThat(reference.hasNext()).isTrue();
assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class));
@@ -77,7 +76,7 @@ class PropertyPathUnitTests {
@Test
void prefersExplicitPaths() {
PropertyPath reference = PropertyPath.from("user_name", Sample.class);
var reference = PropertyPath.from("user_name", Sample.class);
assertThat(reference.getSegment()).isEqualTo("user");
assertThat(reference.hasNext()).isTrue();
assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class));
@@ -86,7 +85,7 @@ class PropertyPathUnitTests {
@Test
void handlesGenericsCorrectly() {
PropertyPath reference = PropertyPath.from("usersName", Bar.class);
var reference = PropertyPath.from("usersName", Bar.class);
assertThat(reference.getSegment()).isEqualTo("users");
assertThat(reference.isCollection()).isTrue();
assertThat(reference.hasNext()).isTrue();
@@ -96,7 +95,7 @@ class PropertyPathUnitTests {
@Test
void handlesMapCorrectly() {
PropertyPath reference = PropertyPath.from("userMapName", Bar.class);
var reference = PropertyPath.from("userMapName", Bar.class);
assertThat(reference.getSegment()).isEqualTo("userMap");
assertThat(reference.isCollection()).isFalse();
assertThat(reference.hasNext()).isTrue();
@@ -106,7 +105,7 @@ class PropertyPathUnitTests {
@Test
void handlesArrayCorrectly() {
PropertyPath reference = PropertyPath.from("userArrayName", Bar.class);
var reference = PropertyPath.from("userArrayName", Bar.class);
assertThat(reference.getSegment()).isEqualTo("userArray");
assertThat(reference.isCollection()).isTrue();
assertThat(reference.hasNext()).isTrue();
@@ -137,7 +136,7 @@ class PropertyPathUnitTests {
@Test
void findsNested() {
PropertyPath from = PropertyPath.from("barUserName", Sample.class);
var from = PropertyPath.from("barUserName", Sample.class);
assertThat(from).isNotNull();
assertThat(from.getLeafProperty()).isEqualTo(PropertyPath.from("name", FooBar.class));
@@ -146,7 +145,7 @@ class PropertyPathUnitTests {
@Test // DATACMNS-45
void handlesEmptyUnderscoresCorrectly() {
PropertyPath propertyPath = PropertyPath.from("_foo", Sample2.class);
var propertyPath = PropertyPath.from("_foo", Sample2.class);
assertThat(propertyPath.getSegment()).isEqualTo("_foo");
assertThat(propertyPath.getType()).isEqualTo(Foo.class);
@@ -157,7 +156,7 @@ class PropertyPathUnitTests {
@Test
void supportsDotNotationAsWell() {
PropertyPath propertyPath = PropertyPath.from("bar.userMap.name", Sample.class);
var propertyPath = PropertyPath.from("bar.userMap.name", Sample.class);
assertThat(propertyPath).isNotNull();
assertThat(propertyPath.getSegment()).isEqualTo("bar");
@@ -167,9 +166,9 @@ class PropertyPathUnitTests {
@Test
void returnsCorrectIteratorForSingleElement() {
PropertyPath propertyPath = PropertyPath.from("userName", Foo.class);
var propertyPath = PropertyPath.from("userName", Foo.class);
Iterator<PropertyPath> iterator = propertyPath.iterator();
var iterator = propertyPath.iterator();
assertThat(iterator.hasNext()).isTrue();
assertThat(iterator.next()).isEqualTo(propertyPath);
assertThat(iterator.hasNext()).isFalse();
@@ -178,9 +177,9 @@ class PropertyPathUnitTests {
@Test
void returnsCorrectIteratorForMultipleElement() {
PropertyPath propertyPath = PropertyPath.from("user.name", Bar.class);
var propertyPath = PropertyPath.from("user.name", Bar.class);
Iterator<PropertyPath> iterator = propertyPath.iterator();
var iterator = propertyPath.iterator();
assertThat(iterator.hasNext()).isTrue();
assertThat(iterator.next()).isEqualTo(propertyPath);
assertThat(iterator.hasNext()).isTrue();
@@ -243,10 +242,10 @@ class PropertyPathUnitTests {
@Test
void samePathsEqual() {
PropertyPath left = PropertyPath.from("user.name", Bar.class);
PropertyPath right = PropertyPath.from("user.name", Bar.class);
var left = PropertyPath.from("user.name", Bar.class);
var right = PropertyPath.from("user.name", Bar.class);
PropertyPath shortPath = PropertyPath.from("user", Bar.class);
var shortPath = PropertyPath.from("user", Bar.class);
assertThat(left).isEqualTo(right);
assertThat(right).isEqualTo(left);
@@ -259,10 +258,10 @@ class PropertyPathUnitTests {
@Test
void hashCodeTests() {
PropertyPath left = PropertyPath.from("user.name", Bar.class);
PropertyPath right = PropertyPath.from("user.name", Bar.class);
var left = PropertyPath.from("user.name", Bar.class);
var right = PropertyPath.from("user.name", Bar.class);
PropertyPath shortPath = PropertyPath.from("user", Bar.class);
var shortPath = PropertyPath.from("user", Bar.class);
assertThat(left.hashCode()).isEqualTo(right.hashCode());
assertThat(left.hashCode()).isNotEqualTo(shortPath.hashCode());
@@ -271,7 +270,7 @@ class PropertyPathUnitTests {
@Test // DATACMNS-257
void findsAllUppercaseProperty() {
PropertyPath path = PropertyPath.from("UUID", Foo.class);
var path = PropertyPath.from("UUID", Foo.class);
assertThat(path).isNotNull();
assertThat(path.getSegment()).isEqualTo("UUID");
@@ -280,7 +279,7 @@ class PropertyPathUnitTests {
@Test // DATACMNS-257
void findsNestedAllUppercaseProperty() {
PropertyPath path = PropertyPath.from("_fooUUID", Sample2.class);
var path = PropertyPath.from("_fooUUID", Sample2.class);
assertThat(path).isNotNull();
assertThat(path.getSegment()).isEqualTo("_foo");
@@ -344,7 +343,7 @@ class PropertyPathUnitTests {
@Test // DATACMNS-867
void preservesUnderscoresForQuotedNames() {
PropertyPath path = from(Pattern.quote("var_name_with_underscore"), Foo.class);
var path = from(Pattern.quote("var_name_with_underscore"), Foo.class);
assertThat(path).isNotNull();
assertThat(path.getSegment()).isEqualTo("var_name_with_underscore");
@@ -378,15 +377,15 @@ class PropertyPathUnitTests {
@Test // DATACMNS-1285
void rejectsTooLongPath() {
String source = "foo.bar";
var source = "foo.bar";
for (int i = 0; i < 9; i++) {
for (var i = 0; i < 9; i++) {
source = source + "." + source;
}
assertThat(source.split("\\.").length).isGreaterThan(1000);
final String path = source;
final var path = source;
assertThatIllegalArgumentException() //
.isThrownBy(() -> PropertyPath.from(path, Left.class));

View File

@@ -17,7 +17,6 @@ package org.springframework.data.mapping;
import static org.assertj.core.api.Assertions.*;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -61,9 +60,9 @@ public class PropertyReferenceExceptionUnitTests {
@Test // DATACMNS-801
public void exposesPotentialMatch() {
PropertyReferenceException exception = new PropertyReferenceException("nme", TYPE_INFO, NO_PATHS);
var exception = new PropertyReferenceException("nme", TYPE_INFO, NO_PATHS);
Collection<String> matches = exception.getPropertyMatches();
var matches = exception.getPropertyMatches();
assertThat(matches).containsExactly("name");
}

View File

@@ -48,7 +48,7 @@ public class SimpleTypeHolderUnitTests {
@Test // DATACMNS-31
public void rejectsNullTypeForIsSimpleTypeCall() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThatIllegalArgumentException().isThrownBy(() -> holder.isSimpleType(null));
}
@@ -56,7 +56,7 @@ public class SimpleTypeHolderUnitTests {
@Test
public void addsDefaultTypes() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(String.class)).isTrue();
}
@@ -64,7 +64,7 @@ public class SimpleTypeHolderUnitTests {
@Test
public void doesNotAddDefaultConvertersIfConfigured() {
SimpleTypeHolder holder = new SimpleTypeHolder(new HashSet<>(), false);
var holder = new SimpleTypeHolder(new HashSet<>(), false);
assertThat(holder.isSimpleType(UUID.class)).isFalse();
}
@@ -72,7 +72,7 @@ public class SimpleTypeHolderUnitTests {
@Test
public void addsCustomTypesToSimpleOnes() {
SimpleTypeHolder holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true);
var holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true);
assertThat(holder.isSimpleType(SimpleTypeHolder.class)).isTrue();
assertThat(holder.isSimpleType(SimpleTypeHolderUnitTests.class)).isFalse();
@@ -81,8 +81,8 @@ public class SimpleTypeHolderUnitTests {
@Test
public void createsHolderFromAnotherOneCorrectly() {
SimpleTypeHolder holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true);
SimpleTypeHolder second = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolderUnitTests.class), holder);
var holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true);
var second = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolderUnitTests.class), holder);
assertThat(holder.isSimpleType(SimpleTypeHolder.class)).isTrue();
assertThat(holder.isSimpleType(SimpleTypeHolderUnitTests.class)).isFalse();
@@ -92,28 +92,28 @@ public class SimpleTypeHolderUnitTests {
@Test
public void considersObjectToBeSimpleType() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(Object.class)).isTrue();
}
@Test
public void considersSimpleEnumAsSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(SimpleEnum.FOO.getClass())).isTrue();
}
@Test
public void considersComplexEnumAsSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(ComplexEnum.FOO.getClass())).isTrue();
}
@Test // DATACMNS-1006
public void considersJavaLangTypesSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(Type.class)).isTrue();
}
@@ -121,7 +121,7 @@ public class SimpleTypeHolderUnitTests {
@Test // DATACMNS-1294
public void considersJavaTimeTypesSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(Instant.class)).isTrue();
}
@@ -129,7 +129,7 @@ public class SimpleTypeHolderUnitTests {
@Test // DATACMNS-1101
public void considersExtendedTypeAsSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(ExtendedPerson.class)).isFalse();
}
@@ -137,7 +137,7 @@ public class SimpleTypeHolderUnitTests {
@Test // DATACMNS-1101
public void considersExtendedTypeAsSimpleSeenBaseClassBefore() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(Person.class)).isFalse();
assertThat(holder.isSimpleType(ExtendedPerson.class)).isFalse();
@@ -146,7 +146,7 @@ public class SimpleTypeHolderUnitTests {
@Test // DATACMNS-1278
public void alwaysConsidersEnumsSimple() {
SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT;
var holder = SimpleTypeHolder.DEFAULT;
assertThat(holder.isSimpleType(SomeInterface.class)).isFalse();
assertThat(holder.isSimpleType(InterfacedEnum.class)).isTrue();

View File

@@ -31,7 +31,7 @@ public class TargetAwareIdentifierAccessorUnitTests {
@Test // DATACMNS-1015
public void throwsExceptionContainingInformationAboutTargetIfIdentifierAbsent() {
Object sample = new Object();
var sample = new Object();
IdentifierAccessor accessor = new TargetAwareIdentifierAccessor(sample) {

View File

@@ -43,12 +43,12 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void shouldDispatchCallback() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
var ctx = new AnnotationConfigApplicationContext(MyConfig.class);
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx);
var callbacks = new DefaultEntityCallbacks(ctx);
PersonDocument personDocument = new PersonDocument(null, "Walter", null);
PersonDocument afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument);
var personDocument = new PersonDocument(null, "Walter", null);
var afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument);
assertThat(afterCallback.getSsn()).isEqualTo(6);
}
@@ -56,12 +56,12 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void shouldDispatchCallsToLambdaReceivers() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(LambdaConfig.class);
var ctx = new AnnotationConfigApplicationContext(LambdaConfig.class);
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx);
var callbacks = new DefaultEntityCallbacks(ctx);
PersonDocument personDocument = new PersonDocument(null, "Walter", null);
PersonDocument afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument);
var personDocument = new PersonDocument(null, "Walter", null);
var afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument);
assertThat(afterCallback).isSameAs(personDocument);
}
@@ -69,7 +69,7 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void invokeGenericEvent() {
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(new GenericPersonCallback());
Person afterCallback = callbacks.callback(GenericPersonCallback.class, new PersonDocument(null, "Walter", null));
@@ -80,7 +80,7 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void invokeGenericEventWithArgs() {
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(new GenericPersonCallbackWithArgs());
Person afterCallback = callbacks.callback(GenericPersonCallbackWithArgs.class,
@@ -92,7 +92,7 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void invokeInvalidEvent() {
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(new InvalidEntityCallback() {});
assertThatIllegalStateException()
@@ -106,11 +106,11 @@ class DefaultEntityCallbacksUnitTests {
CapturingEntityCallback first = new FirstCallback();
CapturingEntityCallback second = new SecondCallback();
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(first);
callbacks.addEntityCallback(second);
PersonDocument initial = new PersonDocument(null, "Walter", null);
var initial = new PersonDocument(null, "Walter", null);
callbacks.callback(CapturingEntityCallback.class, initial);
@@ -123,7 +123,7 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void errorsOnNullEntity() {
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(new CapturingEntityCallback());
assertThatIllegalArgumentException()
@@ -137,12 +137,12 @@ class DefaultEntityCallbacksUnitTests {
CapturingEntityCallback second = new SecondCallback(null);
CapturingEntityCallback third = new ThirdCallback();
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks();
var callbacks = new DefaultEntityCallbacks();
callbacks.addEntityCallback(first);
callbacks.addEntityCallback(second);
callbacks.addEntityCallback(third);
PersonDocument initial = new PersonDocument(null, "Walter", null);
var initial = new PersonDocument(null, "Walter", null);
assertThatIllegalArgumentException()
.isThrownBy(() -> callbacks.callback(CapturingEntityCallback.class, initial));
@@ -155,11 +155,11 @@ class DefaultEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void detectsMultipleCallbacksWithinOneClass() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MultipleCallbacksInOneClassConfig.class);
var ctx = new AnnotationConfigApplicationContext(MultipleCallbacksInOneClassConfig.class);
DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx);
var callbacks = new DefaultEntityCallbacks(ctx);
PersonDocument personDocument = new PersonDocument(null, "Walter", null);
var personDocument = new PersonDocument(null, "Walter", null);
callbacks.callback(BeforeSaveCallback.class, personDocument);
assertThat(ctx.getBean("callbacks", MultipleCallbacks.class).invocations).containsExactly("save");

View File

@@ -41,12 +41,12 @@ class DefaultReactiveEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void dispatchResolvesOnSubscribe() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
var ctx = new AnnotationConfigApplicationContext(MyConfig.class);
DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(ctx);
var callbacks = new DefaultReactiveEntityCallbacks(ctx);
PersonDocument personDocument = new PersonDocument(null, "Walter", null);
Mono<PersonDocument> afterCallback = callbacks.callback(ReactiveBeforeSaveCallback.class, personDocument);
var personDocument = new PersonDocument(null, "Walter", null);
var afterCallback = callbacks.callback(ReactiveBeforeSaveCallback.class, personDocument);
assertThat(personDocument.getSsn()).isNull();
@@ -58,7 +58,7 @@ class DefaultReactiveEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void invokeGenericEvent() {
DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks();
var callbacks = new DefaultReactiveEntityCallbacks();
callbacks.addEntityCallback(new GenericPersonCallback());
callbacks.callback(GenericPersonCallback.class, new PersonDocument(null, "Walter", null)) //
@@ -73,11 +73,11 @@ class DefaultReactiveEntityCallbacksUnitTests {
CapturingEntityCallback first = new FirstCallback();
CapturingEntityCallback second = new SecondCallback();
DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks();
var callbacks = new DefaultReactiveEntityCallbacks();
callbacks.addEntityCallback(first);
callbacks.addEntityCallback(second);
PersonDocument initial = new PersonDocument(null, "Walter", null);
var initial = new PersonDocument(null, "Walter", null);
callbacks.callback(CapturingEntityCallback.class, initial) //
.as(StepVerifier::create) //
@@ -93,7 +93,7 @@ class DefaultReactiveEntityCallbacksUnitTests {
@Test // DATACMNS-1467
void errorsOnNullEntity() {
DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks();
var callbacks = new DefaultReactiveEntityCallbacks();
callbacks.addEntityCallback(new CapturingEntityCallback());
assertThatIllegalArgumentException()
@@ -107,12 +107,12 @@ class DefaultReactiveEntityCallbacksUnitTests {
CapturingEntityCallback second = new SecondCallback(null);
CapturingEntityCallback third = new ThirdCallback();
DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks();
var callbacks = new DefaultReactiveEntityCallbacks();
callbacks.addEntityCallback(first);
callbacks.addEntityCallback(second);
callbacks.addEntityCallback(third);
PersonDocument initial = new PersonDocument(null, "Walter", null);
var initial = new PersonDocument(null, "Walter", null);
callbacks.callback(CapturingEntityCallback.class, initial) //
.as(StepVerifier::create) //
@@ -143,7 +143,7 @@ class DefaultReactiveEntityCallbacksUnitTests {
@Override
public Mono<Person> onBeforeSave(Person object) {
PersonDocument result = new PersonDocument(object.getFirstName().length(), object.getFirstName(),
var result = new PersonDocument(object.getFirstName().length(), object.getFirstName(),
object.getLastName());
return Mono.just(result);

View File

@@ -49,9 +49,9 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1467
void shouldDiscoverCallbackType() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
var ctx = new AnnotationConfigApplicationContext(MyConfig.class);
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx);
var discoverer = new EntityCallbackDiscoverer(ctx);
Collection<EntityCallback<Person>> entityCallbacks = discoverer.getEntityCallbacks(PersonDocument.class,
ResolvableType.forType(BeforeSaveCallback.class));
@@ -62,17 +62,17 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1735
void shouldDiscoverCallbackTypeConcurrencyCache() throws InterruptedException {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
var ctx = new AnnotationConfigApplicationContext(MyConfig.class);
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx);
int poolSize = Runtime.getRuntime().availableProcessors();
ThreadPoolExecutor executor = new ThreadPoolExecutor(poolSize, poolSize, 20, TimeUnit.SECONDS,
var discoverer = new EntityCallbackDiscoverer(ctx);
var poolSize = Runtime.getRuntime().availableProcessors();
var executor = new ThreadPoolExecutor(poolSize, poolSize, 20, TimeUnit.SECONDS,
new LinkedBlockingDeque<>());
CountDownLatch startLatch = new CountDownLatch(poolSize);
CountDownLatch doneLatch = new CountDownLatch(poolSize);
var startLatch = new CountDownLatch(poolSize);
var doneLatch = new CountDownLatch(poolSize);
List<Exception> exceptions = new CopyOnWriteArrayList<>();
for (int i = 0; i < poolSize; i++) {
for (var i = 0; i < poolSize; i++) {
executor.submit(() -> {
try {
startLatch.countDown();
@@ -97,9 +97,9 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1467
void shouldDiscoverCallbackTypeByName() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
var ctx = new AnnotationConfigApplicationContext(MyConfig.class);
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx);
var discoverer = new EntityCallbackDiscoverer(ctx);
discoverer.clear();
discoverer.addEntityCallbackBean("namedCallback");
@@ -112,7 +112,7 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1467
void shouldSupportCallbackTypes() {
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer();
var discoverer = new EntityCallbackDiscoverer();
assertThat(discoverer.supportsEvent(MyBeforeSaveCallback.class, ResolvableType.forClass(Person.class))).isTrue();
assertThat(discoverer.supportsEvent(MyBeforeSaveCallback.class, ResolvableType.forClass(Child.class))).isTrue();
@@ -126,9 +126,9 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1467
void shouldSupportInstanceCallbackTypes() {
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer();
var discoverer = new EntityCallbackDiscoverer();
MyBeforeSaveCallback callback = new MyBeforeSaveCallback();
var callback = new MyBeforeSaveCallback();
assertThat(discoverer.supportsEvent(callback, ResolvableType.forClass(Person.class),
ResolvableType.forClass(BeforeSaveCallback.class))).isTrue();
@@ -146,9 +146,9 @@ class EntityCallbackDiscovererUnitTests {
@Test // DATACMNS-1467
void shouldDispatchInOrder() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(OrderedConfig.class);
var ctx = new AnnotationConfigApplicationContext(OrderedConfig.class);
EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx);
var discoverer = new EntityCallbackDiscoverer(ctx);
Collection<EntityCallback<Person>> entityCallbacks = discoverer.getEntityCallbacks(PersonDocument.class,
ResolvableType.forType(EntityCallback.class));

View File

@@ -41,7 +41,7 @@ class AbstractMappingContextIntegrationTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-457
void returnsManagedType() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.setInitialEntitySet(Collections.singleton(Person.class));
context.initialize();
@@ -51,7 +51,7 @@ class AbstractMappingContextIntegrationTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-457
void indicatesManagedType() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.setInitialEntitySet(Collections.singleton(Person.class));
context.initialize();
@@ -61,7 +61,7 @@ class AbstractMappingContextIntegrationTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-243
void createsPersistentEntityForInterfaceCorrectly() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context
.getRequiredPersistentEntity(InterfaceOnly.class);
@@ -71,11 +71,11 @@ class AbstractMappingContextIntegrationTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-65
void foo() throws InterruptedException {
final DummyMappingContext context = new DummyMappingContext();
final var context = new DummyMappingContext();
Thread a = new Thread(() -> context.getPersistentEntity(Person.class));
var a = new Thread(() -> context.getPersistentEntity(Person.class));
Thread b = new Thread(() -> {
var b = new Thread(() -> {
PersistentEntity<Object, T> entity = context.getRequiredPersistentEntity(Person.class);
@@ -109,7 +109,7 @@ class AbstractMappingContextIntegrationTests<T extends PersistentProperty<T>> {
protected T createPersistentProperty(Property property, BasicPersistentEntity<Object, T> owner,
SimpleTypeHolder simpleTypeHolder) {
PersistentProperty prop = mock(PersistentProperty.class);
var prop = mock(PersistentProperty.class);
when(prop.getTypeInformation()).thenReturn(owner.getTypeInformation());
when(prop.getName()).thenReturn(property.getName());

View File

@@ -30,7 +30,6 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -41,6 +40,7 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.aop.SpringProxy;
import org.springframework.aop.framework.Advised;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationEvent;
import org.springframework.data.annotation.Id;
@@ -88,7 +88,7 @@ class AbstractMappingContextUnitTests {
@Test
void registersEntitiesOnInitialization() {
ApplicationContext applicationContext = mock(ApplicationContext.class);
var applicationContext = mock(ApplicationContext.class);
context.setInitialEntitySet(Collections.singleton(Person.class));
context.setApplicationEventPublisher(applicationContext);
@@ -102,7 +102,7 @@ class AbstractMappingContextUnitTests {
@Test // DATACMNS-214
void returnsNullPersistentEntityForSimpleTypes() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
assertThat(context.getPersistentEntity(String.class)).isNull();
}
@@ -119,7 +119,7 @@ class AbstractMappingContextUnitTests {
@Test // DATACMNS-228
void doesNotCreatePersistentPropertyForGroovyMetaClass() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
mappingContext.initialize();
PersistentEntity<Object, SamplePersistentProperty> entity = mappingContext
@@ -130,7 +130,7 @@ class AbstractMappingContextUnitTests {
@Test // DATACMNS-332
void usesMostConcreteProperty() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = mappingContext
.getRequiredPersistentEntity(Extension.class);
@@ -141,7 +141,7 @@ class AbstractMappingContextUnitTests {
@SuppressWarnings("rawtypes")
void returnsEntityForComponentType() {
SampleMappingContext mappingContext = new SampleMappingContext();
var mappingContext = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = mappingContext
.getRequiredPersistentEntity(Sample.class);
@@ -153,10 +153,10 @@ class AbstractMappingContextUnitTests {
@Test // DATACMNS-390
void exposesCopyOfPersistentEntitiesToAvoidConcurrentModificationException() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(ClassTypeInformation.MAP);
Iterator<BasicPersistentEntity<Object, SamplePersistentProperty>> iterator = context.getPersistentEntities()
var iterator = context.getPersistentEntities()
.iterator();
while (iterator.hasNext()) {
@@ -208,7 +208,7 @@ class AbstractMappingContextUnitTests {
void doesNotReturnPersistentEntityForCustomSimpleTypeProperty() {
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Person.class);
SamplePersistentProperty property = entity.getRequiredPersistentProperty("date");
var property = entity.getRequiredPersistentProperty("date");
assertThat(context.getPersistentEntity(property)).isNull();
}
@@ -216,7 +216,7 @@ class AbstractMappingContextUnitTests {
@Test // DATACMNS-1574
void cleansUpCacheForRuntimeException() {
TypeRejectingMappingContext context = TypeRejectingMappingContext.rejecting(() -> new RuntimeException(),
var context = TypeRejectingMappingContext.rejecting(() -> new RuntimeException(),
Unsupported.class);
assertThatExceptionOfType(RuntimeException.class) //
@@ -231,7 +231,7 @@ class AbstractMappingContextUnitTests {
@Test // GH-3113
void shouldIgnoreKotlinOverrideCtorPropertyInSuperClass() {
BasicPersistentEntity<Object, SamplePersistentProperty> entity = context
var entity = context
.getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyTypeWithCtor.class));
entity.doWithProperties((PropertyHandler<SamplePersistentProperty>) property -> {
assertThat(property.getField().getDeclaringClass()).isIn(ShadowingPropertyTypeWithCtor.class,
@@ -242,7 +242,7 @@ class AbstractMappingContextUnitTests {
@Test // GH-3113
void shouldIncludeAssignableKotlinOverridePropertyInSuperClass() {
BasicPersistentEntity<Object, SamplePersistentProperty> entity = context
var entity = context
.getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyType.class));
entity.doWithProperties((PropertyHandler<SamplePersistentProperty>) property -> {
assertThat(property.getField().getDeclaringClass()).isIn(ShadowedPropertyType.class, ShadowingPropertyType.class);
@@ -252,7 +252,7 @@ class AbstractMappingContextUnitTests {
@Test // GH-3113
void shouldIncludeAssignableShadowedPropertyInSuperClass() {
BasicPersistentEntity<Object, SamplePersistentProperty> entity = context
var entity = context
.getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyAssignable.class));
assertThat(StreamUtils.createStreamFromIterator(entity.iterator())
@@ -270,7 +270,7 @@ class AbstractMappingContextUnitTests {
@Test // GH-3113
void shouldIgnoreNonAssignableOverridePropertyInSuperClass() {
BasicPersistentEntity<Object, SamplePersistentProperty> entity = context
var entity = context
.getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyNotAssignable.class));
entity.doWithProperties((PropertyHandler<SamplePersistentProperty>) property -> {
assertThat(property.getField().getDeclaringClass()).isEqualTo(ShadowingPropertyNotAssignable.class);
@@ -367,9 +367,9 @@ class AbstractMappingContextUnitTests {
private static void assertHasEntityFor(Class<?> type, SampleMappingContext context, boolean expected) {
boolean found = false;
var found = false;
for (BasicPersistentEntity<Object, SamplePersistentProperty> entity : context.getPersistentEntities()) {
for (var entity : context.getPersistentEntities()) {
if (entity.getType().equals(type)) {
found = true;
break;

View File

@@ -99,7 +99,7 @@ class DefaultPersistentPropertyPathUnitTests<P extends PersistentProperty<P>> {
@Test
void calculatesExtensionCorrectly() {
PersistentPropertyPath<P> extension = twoLegs.getExtensionForBaseOf(oneLeg);
var extension = twoLegs.getExtensionForBaseOf(oneLeg);
assertThat(extension).isEqualTo(new DefaultPersistentPropertyPath<>(Collections.singletonList(second)));
}
@@ -117,8 +117,8 @@ class DefaultPersistentPropertyPathUnitTests<P extends PersistentProperty<P>> {
@Test
void returnItselfForEmptyPath() {
PersistentPropertyPath<P> parent = oneLeg.getParentPath();
PersistentPropertyPath<P> parentsParent = parent.getParentPath();
var parent = oneLeg.getParentPath();
var parentsParent = parent.getParentPath();
assertThat(parentsParent).isEmpty();
assertThat(parentsParent).isSameAs(parent);

View File

@@ -42,21 +42,21 @@ class MappingContextEventUnitTests<E extends PersistentEntity<?, P>, P extends P
@Test
void returnsPersistentEntityHandedToTheEvent() {
MappingContextEvent<E, P> event = new MappingContextEvent<>(mappingContext, entity);
var event = new MappingContextEvent<E, P>(mappingContext, entity);
assertThat(event.getPersistentEntity()).isEqualTo(entity);
}
@Test
void usesMappingContextAsEventSource() {
MappingContextEvent<E, P> event = new MappingContextEvent<>(mappingContext, entity);
var event = new MappingContextEvent<E, P>(mappingContext, entity);
assertThat(event.getSource()).isEqualTo(mappingContext);
}
@Test
void detectsEmittingMappingContextCorrectly() {
MappingContextEvent<E, P> event = new MappingContextEvent<>(mappingContext, entity);
var event = new MappingContextEvent<E, P>(mappingContext, entity);
assertThat(event.wasEmittedBy(mappingContext)).isTrue();
assertThat(event.wasEmittedBy(otherMappingContext)).isFalse();
}

View File

@@ -28,7 +28,6 @@ import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.data.annotation.Id;
import org.springframework.data.annotation.Reference;
import org.springframework.data.mapping.MappingException;
import org.springframework.data.mapping.PersistentEntity;
import org.springframework.data.mapping.model.BasicPersistentEntity;
import org.springframework.data.util.ClassTypeInformation;
@@ -69,11 +68,11 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-458
void indicatesManagedType() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.setInitialEntitySet(Collections.singleton(Sample.class));
context.initialize();
PersistentEntities entities = PersistentEntities.of(context);
var entities = PersistentEntities.of(context);
assertThat(entities.getPersistentEntity(Sample.class)).isPresent();
assertThat(entities.getPersistentEntity(Object.class)).isNotPresent();
@@ -85,13 +84,13 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-1318
void detectsReferredToEntity() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(Sample.class);
SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class)//
var property = context.getRequiredPersistentEntity(WithReference.class)//
.getPersistentProperty("sampleId");
PersistentEntity<?, ?> referredToEntity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
var referredToEntity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
assertThat(referredToEntity).isNotNull();
assertThat(referredToEntity.getType()).isEqualTo(Sample.class);
@@ -100,14 +99,14 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-1318
void rejectsAmbiguousIdentifierType() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(FirstWithLongId.class);
context.getPersistentEntity(SecondWithLongId.class);
SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) //
var property = context.getRequiredPersistentEntity(WithReference.class) //
.getPersistentProperty("longId");
PersistentEntities entities = PersistentEntities.of(context);
var entities = PersistentEntities.of(context);
assertThatIllegalStateException()//
.isThrownBy(() -> entities.getEntityUltimatelyReferredToBy(property)) //
@@ -119,14 +118,14 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-1318
void allowsExplicitlyQualifiedReference() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(FirstWithLongId.class);
context.getPersistentEntity(SecondWithLongId.class);
SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) //
var property = context.getRequiredPersistentEntity(WithReference.class) //
.getPersistentProperty("qualifiedLongId");
PersistentEntity<?, ?> entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
var entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
assertThat(entity).isNotNull();
assertThat(entity.getType()).isEqualTo(FirstWithLongId.class);
@@ -135,14 +134,14 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-1318
void allowsGenericReference() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
context.getPersistentEntity(FirstWithGenericId.class);
context.getPersistentEntity(SecondWithGenericId.class);
SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) //
var property = context.getRequiredPersistentEntity(WithReference.class) //
.getPersistentProperty("generic");
PersistentEntity<?, ?> entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
var entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property);
assertThat(entity).isNotNull();
assertThat(entity.getType()).isEqualTo(SecondWithGenericId.class);
@@ -151,7 +150,7 @@ class PersistentEntitiesUnitTests {
@Test // DATACMNS-1780
void getRequiredPersistentEntityAllowsInFlightEntityCreationForUnknownTypesWhenHavingJustASingleMappingContext() {
SampleMappingContext mappingContext = spy(new SampleMappingContext());
var mappingContext = spy(new SampleMappingContext());
mappingContext.afterPropertiesSet();
assertThat(PersistentEntities.of(mappingContext).getRequiredPersistentEntity(Sample.class)).isNotNull();

View File

@@ -29,7 +29,6 @@ import org.springframework.data.mapping.PersistentPropertyPath;
import org.springframework.data.mapping.PersistentPropertyPaths;
import org.springframework.data.mapping.PropertyPath;
import org.springframework.data.mapping.model.BasicPersistentEntity;
import org.springframework.data.util.Streamable;
import org.springframework.util.StringUtils;
/**
@@ -51,7 +50,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-380
void returnsPersistentPropertyPathForDotPath() {
PersistentPropertyPath<SamplePersistentProperty> path = factory.from(PersonSample.class, "persons.name");
var path = factory.from(PersonSample.class, "persons.name");
assertThat(path.getLength()).isEqualTo(2);
assertThat(path.getBaseProperty().getName()).isEqualTo("persons");
@@ -114,7 +113,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-1275
void returnsShortestsPathsFirst() {
Streamable<String> paths = factory.from(First.class, it -> true, it -> true) //
var paths = factory.from(First.class, it -> true, it -> true) //
.map(PersistentPropertyPath::toDotPath);
assertThat(paths).containsExactly("third", "second", "third.lastname", "second.firstname");
@@ -123,7 +122,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-1275
void doesNotTraverseAssociationsByDefault() {
Streamable<String> paths = factory.from(First.class, it -> true) //
var paths = factory.from(First.class, it -> true) //
.map(PersistentPropertyPath::toDotPath);
assertThat(paths) //
@@ -134,7 +133,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-1275
void traversesAssociationsIfTraversalGuardAllowsIt() {
PersistentPropertyPaths<First, SamplePersistentProperty> paths = //
var paths = //
factory.from(First.class, it -> true, it -> true);
assertThat(paths.contains("third.lastname")).isTrue();
@@ -144,7 +143,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-1275
void returnsEmptyPropertyPathsIfNoneSelected() {
PersistentPropertyPaths<Third, SamplePersistentProperty> paths = factory.from(Third.class, it -> false);
var paths = factory.from(Third.class, it -> false);
assertThat(paths).isEmpty();
assertThat(paths.getFirst()).isEmpty();
@@ -153,7 +152,7 @@ class PersistentPropertyPathFactoryUnitTests {
@Test // DATACMNS-1275
void returnsShortestPathFirst() {
PersistentPropertyPaths<First, SamplePersistentProperty> paths = factory.from(First.class, it -> !it.isEntity(),
var paths = factory.from(First.class, it -> !it.isEntity(),
it -> true);
assertThat(paths.contains("second.firstname")).isTrue();

View File

@@ -36,7 +36,7 @@ class PropertyMatchUnitTests {
@Test
void matchesFieldByConcreteNameAndType() throws Exception {
PropertyMatch match = new PropertyMatch("name", "java.lang.String");
var match = new PropertyMatch("name", "java.lang.String");
assertThat(match.matches("this$0", Object.class)).isFalse();
assertThat(match.matches("this$1", Object.class)).isFalse();
assertThat(match.matches("name", String.class)).isTrue();
@@ -45,7 +45,7 @@ class PropertyMatchUnitTests {
@Test
void matchesFieldByNamePattern() throws Exception {
PropertyMatch match = new PropertyMatch("this\\$.*", "java.lang.Object");
var match = new PropertyMatch("this\\$.*", "java.lang.Object");
assertThat(match.matches("this$0", Object.class)).isTrue();
assertThat(match.matches("this$1", Object.class)).isTrue();
assertThat(match.matches("name", String.class)).isFalse();
@@ -54,7 +54,7 @@ class PropertyMatchUnitTests {
@Test
void matchesFieldByNameOnly() throws Exception {
PropertyMatch match = new PropertyMatch("this\\$.*", null);
var match = new PropertyMatch("this\\$.*", null);
assertThat(match.matches("this$0", Object.class)).isTrue();
assertThat(match.matches("this$1", Object.class)).isTrue();
assertThat(match.matches("name", String.class)).isFalse();
@@ -63,7 +63,7 @@ class PropertyMatchUnitTests {
@Test
void matchesFieldByTypeNameOnly() throws Exception {
PropertyMatch match = new PropertyMatch(null, "java.lang.Object");
var match = new PropertyMatch(null, "java.lang.Object");
assertThat(match.matches("this$0", Object.class)).isTrue();
assertThat(match.matches("this$1", Object.class)).isTrue();
assertThat(match.matches("name", String.class)).isFalse();

View File

@@ -24,7 +24,6 @@ import java.beans.IntrospectionException;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.Collection;
import java.util.Map;
@@ -36,6 +35,7 @@ import org.jmolecules.ddd.types.AggregateRoot;
import org.jmolecules.ddd.types.Identifier;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.data.mapping.Association;
import org.springframework.data.mapping.PersistentEntity;
import org.springframework.data.mapping.PersistentProperty;
@@ -89,8 +89,8 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-121
void considersPropertiesEqualIfFieldEquals() {
SamplePersistentProperty firstProperty = getProperty(FirstConcrete.class, "genericField");
SamplePersistentProperty secondProperty = getProperty(SecondConcrete.class, "genericField");
var firstProperty = getProperty(FirstConcrete.class, "genericField");
var secondProperty = getProperty(SecondConcrete.class, "genericField");
assertThat(firstProperty).isEqualTo(secondProperty);
assertThat(firstProperty.hashCode()).isEqualTo(secondProperty.hashCode());
@@ -104,7 +104,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-206
void findsSimpleGettersAndASetters() {
SamplePersistentProperty property = getProperty(AccessorTestClass.class, "id");
var property = getProperty(AccessorTestClass.class, "id");
assertThat(property.getGetter()).isNotNull();
assertThat(property.getSetter()).isNotNull();
@@ -113,7 +113,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-206
void doesNotUseInvalidGettersAndASetters() {
SamplePersistentProperty property = getProperty(AccessorTestClass.class, "anotherId");
var property = getProperty(AccessorTestClass.class, "anotherId");
assertThat(property.getGetter()).isNull();
assertThat(property.getSetter()).isNull();
@@ -122,7 +122,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-206
void usesCustomGetter() {
SamplePersistentProperty property = getProperty(AccessorTestClass.class, "yetAnotherId");
var property = getProperty(AccessorTestClass.class, "yetAnotherId");
assertThat(property.getGetter()).isNotNull();
assertThat(property.getSetter()).isNull();
@@ -131,7 +131,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-206
void usesCustomSetter() {
SamplePersistentProperty property = getProperty(AccessorTestClass.class, "yetYetAnotherId");
var property = getProperty(AccessorTestClass.class, "yetYetAnotherId");
assertThat(property.getGetter()).isNull();
assertThat(property.getSetter()).isNotNull();
@@ -140,8 +140,8 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-206
void doesNotDiscoverGetterAndSetterIfNoPropertyDescriptorGiven() {
Field field = ReflectionUtils.findField(AccessorTestClass.class, "id");
Property property = Property.of(ClassTypeInformation.from(AccessorTestClass.class), field);
var field = ReflectionUtils.findField(AccessorTestClass.class, "id");
var property = Property.of(ClassTypeInformation.from(AccessorTestClass.class), field);
PersistentProperty<SamplePersistentProperty> persistentProperty = new SamplePersistentProperty(property,
getEntity(AccessorTestClass.class), typeHolder);
@@ -153,7 +153,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-337
void resolvesActualType() {
SamplePersistentProperty property = getProperty(Sample.class, "person");
var property = getProperty(Sample.class, "person");
assertThat(property.getActualType()).isEqualTo(Person.class);
property = getProperty(Sample.class, "persons");
@@ -169,35 +169,35 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-462
void considersCollectionPropertyEntitiesIfComponentTypeIsEntity() {
SamplePersistentProperty property = getProperty(Sample.class, "persons");
var property = getProperty(Sample.class, "persons");
assertThat(property.isEntity()).isTrue();
}
@Test // DATACMNS-462
void considersMapPropertyEntitiesIfValueTypeIsEntity() {
SamplePersistentProperty property = getProperty(Sample.class, "personMap");
var property = getProperty(Sample.class, "personMap");
assertThat(property.isEntity()).isTrue();
}
@Test // DATACMNS-462
void considersArrayPropertyEntitiesIfComponentTypeIsEntity() {
SamplePersistentProperty property = getProperty(Sample.class, "personArray");
var property = getProperty(Sample.class, "personArray");
assertThat(property.isEntity()).isTrue();
}
@Test // DATACMNS-462
void considersCollectionPropertySimpleIfComponentTypeIsSimple() {
SamplePersistentProperty property = getProperty(Sample.class, "strings");
var property = getProperty(Sample.class, "strings");
assertThat(property.isEntity()).isFalse();
}
@Test // DATACMNS-562
void doesNotConsiderPropertyWithTreeMapMapValueAnEntity() {
SamplePersistentProperty property = getProperty(TreeMapWrapper.class, "map");
var property = getProperty(TreeMapWrapper.class, "map");
assertThat(property.getPersistentEntityTypeInformation()).isEmpty();
assertThat(property.isEntity()).isFalse();
}
@@ -205,14 +205,14 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-867
void resolvesFieldNameWithUnderscoresCorrectly() {
SamplePersistentProperty property = getProperty(TestClassComplex.class, "var_name_with_underscores");
var property = getProperty(TestClassComplex.class, "var_name_with_underscores");
assertThat(property.getName()).isEqualTo("var_name_with_underscores");
}
@Test // DATACMNS-1139
void resolvesGenericsForRawType() {
SamplePersistentProperty property = getProperty(FirstConcrete.class, "genericField");
var property = getProperty(FirstConcrete.class, "genericField");
assertThat(property.getRawType()).isEqualTo(String.class);
}
@@ -220,7 +220,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // DATACMNS-1180
void returnsAccessorsForGenericReturnType() {
SamplePersistentProperty property = getProperty(ConcreteGetter.class, "genericField");
var property = getProperty(ConcreteGetter.class, "genericField");
assertThat(property.getSetter()).isNotNull();
assertThat(property.getGetter()).isNotNull();
@@ -229,7 +229,7 @@ public class AbstractPersistentPropertyUnitTests {
@Test // GH-2315
void detectsJMoleculesAssociation() {
SamplePersistentProperty property = getProperty(JMolecules.class, "association");
var property = getProperty(JMolecules.class, "association");
assertThat(property.isAssociation()).isTrue();
assertThat(property.getAssociationTargetType()).isEqualTo(JMoleculesAggregate.class);
@@ -245,10 +245,10 @@ public class AbstractPersistentPropertyUnitTests {
private <T> SamplePersistentProperty getProperty(Class<T> type, String name) {
TypeInformation<?> typeInformation = ClassTypeInformation.from(type);
Optional<Field> field = Optional.ofNullable(ReflectionUtils.findField(type, name));
Optional<PropertyDescriptor> descriptor = getPropertyDescriptor(type, name);
var field = Optional.ofNullable(ReflectionUtils.findField(type, name));
var descriptor = getPropertyDescriptor(type, name);
Property property = Optionals.firstNonEmpty( //
var property = Optionals.firstNonEmpty( //
() -> Optionals.mapIfAllPresent(field, descriptor, (left, right) -> Property.of(typeInformation, left, right)), //
() -> field.map(it -> Property.of(typeInformation, it)), //
() -> descriptor.map(it -> Property.of(typeInformation, it))) //

View File

@@ -99,7 +99,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
assertThat(entity.getPersistentProperty("meta")).satisfies(property -> {
// Assert direct annotations are cached on construction
Map<Class<? extends Annotation>, Annotation> cache = getAnnotationCache(property);
var cache = getAnnotationCache(property);
assertThat(cache.containsKey(MyAnnotationAsMeta.class)).isTrue();
assertThat(cache.containsKey(MyAnnotation.class)).isFalse();
@@ -187,13 +187,13 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@SuppressWarnings("unchecked")
public void cachesNonPresenceOfAnnotationOnField() {
SamplePersistentProperty property = getProperty(Sample.class, "getterWithoutField");
var property = getProperty(Sample.class, "getterWithoutField");
assertThat(property).satisfies(it -> {
assertThat(it.findAnnotation(MyAnnotation.class)).isNull();
Map<Class<?>, ?> field = (Map<Class<?>, ?>) ReflectionTestUtils.getField(it, "annotationCache");
var field = (Map<Class<?>, ?>) ReflectionTestUtils.getField(it, "annotationCache");
assertThat(field.containsKey(MyAnnotation.class)).isTrue();
assertThat(field.get(MyAnnotation.class)).isEqualTo(Optional.empty());
@@ -206,7 +206,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
assertThat(entity.getPersistentProperty("metaAliased")).satisfies(property -> {
// Assert direct annotations are cached on construction
Map<Class<? extends Annotation>, Annotation> cache = getAnnotationCache(property);
var cache = getAnnotationCache(property);
assertThat(cache.containsKey(MyComposedAnnotationUsingAliasFor.class)).isTrue();
assertThat(cache.containsKey(MyAnnotation.class)).isFalse();
@@ -253,14 +253,14 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@TestFactory // DATACMNS-1318
public Stream<DynamicTest> detectsUltimateAssociationTargetClass() {
Function<String, ClassAssert> verifier = it -> assertThat(
var verifier = (Function<String, ClassAssert>) it -> assertThat(
getProperty(WithReferences.class, it).getAssociationTargetType());
Stream<DynamicTest> positives = DynamicTest.stream(Stream.of("toSample", "toSample2", "sample"), //
var positives = DynamicTest.stream(Stream.of("toSample", "toSample2", "sample"), //
it -> String.format("Property %s resolves to %s.", it, Sample.class.getSimpleName()), //
it -> verifier.apply(it).isEqualTo(Sample.class));
Stream<DynamicTest> negatives = DynamicTest.stream(Stream.of("withoutAnnotation"), //
var negatives = DynamicTest.stream(Stream.of("withoutAnnotation"), //
it -> String.format("Property %s resolves to null.", it), //
it -> verifier.apply(it).isNull());
@@ -270,7 +270,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // DATACMNS-1359
public void missingRequiredGetterThrowsException() {
SamplePersistentProperty property = getProperty(Sample.class, "field");
var property = getProperty(Sample.class, "field");
assertThatIllegalArgumentException() //
.isThrownBy(() -> property.getRequiredGetter()) //
@@ -281,7 +281,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // DATACMNS-1359
public void missingRequiredSetterThrowsException() {
SamplePersistentProperty property = getProperty(Sample.class, "field");
var property = getProperty(Sample.class, "field");
assertThatIllegalArgumentException() //
.isThrownBy(() -> property.getRequiredSetter()) //
@@ -292,7 +292,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // DATACMNS-1359
public void missingRequiredWitherThrowsException() {
SamplePersistentProperty property = getProperty(Sample.class, "field");
var property = getProperty(Sample.class, "field");
assertThatIllegalArgumentException() //
.isThrownBy(() -> property.getRequiredWither()) //
@@ -303,7 +303,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test
public void missingRequiredFieldThrowsException() {
SamplePersistentProperty property = getProperty(NoField.class, "firstname");
var property = getProperty(NoField.class, "firstname");
assertThatIllegalArgumentException() //
.isThrownBy(() -> property.getRequiredField()) //
@@ -314,7 +314,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // GH-2315
void detectsJMoleculesAssociation() {
SamplePersistentProperty property = getProperty(JMolecules.class, "association");
var property = getProperty(JMolecules.class, "association");
assertThat(property.isAssociation()).isTrue();
assertThat(property.getAssociationTargetType()).isEqualTo(JMoleculesAggregate.class);
@@ -323,7 +323,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // GH-2409
void exposesAssociationTargetClassAsPersistentEntityType() {
SamplePersistentProperty property = getProperty(WithReferences.class, "toSample");
var property = getProperty(WithReferences.class, "toSample");
assertThat(property.getPersistentEntityTypeInformation()) //
.isNotEmpty() //
@@ -333,7 +333,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
@Test // #2438
void detectsJMoleculesIdentity() {
SamplePersistentProperty property = getProperty(JMolecules.class, "identifier");
var property = getProperty(JMolecules.class, "identifier");
assertThat(property.isIdProperty()).isTrue();
}
@@ -346,7 +346,7 @@ public class AnnotationBasedPersistentPropertyUnitTests<P extends AnnotationBase
private <A extends Annotation> A assertAnnotationPresent(Class<A> annotationType,
AnnotationBasedPersistentProperty<?> property) {
A annotation = property.findAnnotation(annotationType);
var annotation = property.findAnnotation(annotationType);
assertThat(annotation).isNotNull();

View File

@@ -25,7 +25,6 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -37,6 +36,7 @@ import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.core.annotation.AliasFor;
import org.springframework.data.annotation.AccessType;
import org.springframework.data.annotation.AccessType.Type;
@@ -108,16 +108,16 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@SuppressWarnings("unchecked")
void considersComparatorForPropertyOrder() {
BasicPersistentEntity<Person, T> entity = createEntity(Person.class,
var entity = createEntity(Person.class,
Comparator.comparing(PersistentProperty::getName));
T lastName = (T) Mockito.mock(PersistentProperty.class);
var lastName = (T) Mockito.mock(PersistentProperty.class);
when(lastName.getName()).thenReturn("lastName");
T firstName = (T) Mockito.mock(PersistentProperty.class);
var firstName = (T) Mockito.mock(PersistentProperty.class);
when(firstName.getName()).thenReturn("firstName");
T ssn = (T) Mockito.mock(PersistentProperty.class);
var ssn = (T) Mockito.mock(PersistentProperty.class);
when(ssn.getName()).thenReturn("ssn");
entity.addPersistentProperty(lastName);
@@ -125,10 +125,10 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
entity.addPersistentProperty(ssn);
entity.verify();
List<T> properties = (List<T>) ReflectionTestUtils.getField(entity, "properties");
var properties = (List<T>) ReflectionTestUtils.getField(entity, "properties");
assertThat(properties).hasSize(3);
Iterator<T> iterator = properties.iterator();
var iterator = properties.iterator();
assertThat(entity.getPersistentProperty("firstName")).isEqualTo(iterator.next());
assertThat(entity.getPersistentProperty("lastName")).isEqualTo(iterator.next());
@@ -164,10 +164,10 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-365
void detectsPropertyWithAnnotation() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
SamplePersistentProperty property = entity.getPersistentProperty(LastModifiedBy.class);
var property = entity.getPersistentProperty(LastModifiedBy.class);
assertThat(property.getName()).isEqualTo("field");
@@ -181,7 +181,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-1122
void reportsRequiredPropertyName() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
assertThatThrownBy(() -> entity.getRequiredPersistentProperty("foo"))
@@ -192,19 +192,19 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@SuppressWarnings("rawtypes")
void returnsGeneratedPropertyAccessorForPropertyAccessor() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
Entity value = new Entity();
var value = new Entity();
PersistentPropertyAccessor accessor = entity.getPropertyAccessor(value);
assertThat(accessor).isNotInstanceOf(BeanWrapper.class);
assertThat(accessor).isInstanceOfSatisfying(InstantiationAwarePropertyAccessor.class, it -> {
Function<Object, PersistentPropertyAccessor<Object>> delegateFunction = (Function<Object, PersistentPropertyAccessor<Object>>) ReflectionTestUtils
var delegateFunction = (Function<Object, PersistentPropertyAccessor<Object>>) ReflectionTestUtils
.getField(it, "delegateFunction");
PersistentPropertyAccessor<Object> delegate = delegateFunction.apply(value);
var delegate = delegateFunction.apply(value);
assertThat(delegate.getClass().getName()).contains("_Accessor_");
assertThat(delegate.getBean()).isEqualTo(value);
});
@@ -213,7 +213,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-596
void rejectsNullBeanForPropertyAccessor() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
assertThatIllegalArgumentException().isThrownBy(() -> entity.getPropertyAccessor(null));
@@ -222,7 +222,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-596
void rejectsNonMatchingBeanForPropertyAccessor() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
assertThatIllegalArgumentException().isThrownBy(() -> entity.getPropertyAccessor("foo"));
@@ -231,7 +231,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-597
void supportsSubtypeInstancesOnPropertyAccessorLookup() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Entity.class);
assertThat(entity.getPropertyAccessor(new Subtype())).isNotNull();
@@ -282,9 +282,9 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
@Test // DATACMNS-1210
void findAnnotationShouldBeThreadSafe() throws InterruptedException {
CountDownLatch latch = new CountDownLatch(2);
CountDownLatch syncLatch = new CountDownLatch(1);
AtomicBoolean failed = new AtomicBoolean(false);
var latch = new CountDownLatch(2);
var syncLatch = new CountDownLatch(1);
var failed = new AtomicBoolean(false);
PersistentEntity<EntityWithAnnotation, T> entity = new BasicPersistentEntity<EntityWithAnnotation, T>(
ClassTypeInformation.from(EntityWithAnnotation.class), null) {
@@ -303,7 +303,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
}
};
Runnable findAccessType = () -> {
var findAccessType = (Runnable) () -> {
try {
entity.findAnnotation(AccessType.class);
@@ -314,7 +314,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
}
};
Runnable findPersistent = () -> {
var findPersistent = (Runnable) () -> {
try {
entity.findAnnotation(Persistent.class);
@@ -383,7 +383,7 @@ class BasicPersistentEntityUnitTests<T extends PersistentProperty<T>> {
private static PersistentEntity<Object, ?> createPopulatedPersistentEntity(Class<?> type) {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
return context.getRequiredPersistentEntity(type);
}

View File

@@ -104,15 +104,15 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
@Test // DATACMNS-134, DATACMNS-578
void createsInnerClassInstanceCorrectly() {
BasicPersistentEntity<Inner, P> entity = new BasicPersistentEntity<>(from(Inner.class));
var entity = new BasicPersistentEntity<Inner, P>(from(Inner.class));
assertThat(entity.getPersistenceConstructor()).satisfies(constructor -> {
Parameter<Object, P> parameter = constructor.getParameters().iterator().next();
var parameter = constructor.getParameters().iterator().next();
Object outer = new Outer();
doReturn(outer).when(provider).getParameterValue(parameter);
Inner instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isNotNull();
@@ -164,7 +164,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
doReturn(2L, "FOO").when(provider).getParameterValue(any(Parameter.class));
ParameterValueProvider<P> recursive = new ParameterValueProvider<P>() {
var recursive = new ParameterValueProvider<P>() {
@Override
public <T> T getParameterValue(Parameter<T, P> parameter) {
@@ -181,7 +181,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
}
};
SampleWithReference reference = this.instance.createInstance(outer, recursive);
var reference = this.instance.createInstance(outer, recursive);
assertThat(reference.id).isEqualTo(1L);
assertThat(reference.sample).isNotNull();
@@ -209,13 +209,13 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
IntStream.range(0, 2).forEach(i -> {
Object instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isInstanceOf(ObjCtorNoArgs.class);
assertThat(((ObjCtorNoArgs) instance).ctorInvoked).isTrue();
});
ClassGeneratingEntityInstantiator classGeneratingEntityInstantiator = new ClassGeneratingEntityInstantiator();
var classGeneratingEntityInstantiator = new ClassGeneratingEntityInstantiator();
classGeneratingEntityInstantiator.createInstance(entity, provider);
}
@@ -229,7 +229,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
IntStream.range(0, 2).forEach(i -> {
Object instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isInstanceOf(ObjCtor1ParamString.class);
assertThat(((ObjCtor1ParamString) instance).ctorInvoked).isTrue();
@@ -248,7 +248,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
when(provider.getParameterValue(any())).thenReturn("FOO", "BAR");
Object instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isInstanceOf(ObjCtor2ParamStringString.class);
assertThat(((ObjCtor2ParamStringString) instance).ctorInvoked).isTrue();
@@ -268,7 +268,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
doReturn(42).when(provider).getParameterValue(any());
Object instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isInstanceOf(ObjectCtor1ParamInt.class);
assertThat(((ObjectCtor1ParamInt) instance).param1).isEqualTo(42);
@@ -298,11 +298,11 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
when(provider.getParameterValue(any(Parameter.class))).thenReturn("A", 1, 2, 3, 4, 5, "B");
Object instance = this.instance.createInstance(entity, provider);
var instance = this.instance.createInstance(entity, provider);
assertThat(instance).isInstanceOf(ObjectCtor7ParamsString5IntsString.class);
ObjectCtor7ParamsString5IntsString toTest = (ObjectCtor7ParamsString5IntsString) instance;
var toTest = (ObjectCtor7ParamsString5IntsString) instance;
assertThat(toTest.param1).isEqualTo("A");
assertThat(toTest.param2).isEqualTo(1);
@@ -352,7 +352,7 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
@Test // DATACMNS-1373
void shouldInstantiateClassInDefaultPackage() throws ClassNotFoundException {
Class<?> typeInDefaultPackage = Class.forName("TypeInDefaultPackage");
var typeInDefaultPackage = Class.forName("TypeInDefaultPackage");
prepareMocks(typeInDefaultPackage);
assertThat(this.instance.shouldUseReflectionEntityInstantiator(entity)).isFalse();
@@ -374,13 +374,13 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
this.instance.createInstance(entity, provider);
ClassGeneratingEntityInstantiator instantiator = new ClassGeneratingEntityInstantiator();
var instantiator = new ClassGeneratingEntityInstantiator();
instantiator.createInstance(entity, provider);
Map<TypeInformation<?>, EntityInstantiator> first = (Map<TypeInformation<?>, EntityInstantiator>) ReflectionTestUtils
var first = (Map<TypeInformation<?>, EntityInstantiator>) ReflectionTestUtils
.getField(this.instance, "entityInstantiators");
Map<TypeInformation<?>, EntityInstantiator> second = (Map<TypeInformation<?>, EntityInstantiator>) ReflectionTestUtils
var second = (Map<TypeInformation<?>, EntityInstantiator>) ReflectionTestUtils
.getField(instantiator, "entityInstantiators");
assertThat(first.get(null)).isNotNull().isNotInstanceOf(Enum.class);
@@ -390,11 +390,11 @@ class ClassGeneratingEntityInstantiatorUnitTests<P extends PersistentProperty<P>
@Test // DATACMNS-1422
void shouldUseReflectionIfFrameworkTypesNotVisible() throws Exception {
HidingClassLoader classLoader = HidingClassLoader.hide(ObjectInstantiator.class);
var classLoader = HidingClassLoader.hide(ObjectInstantiator.class);
classLoader.excludePackage("org.springframework.data.mapping");
// require type from different package to meet visibility quirks
Class<?> entityType = classLoader.loadClass("org.springframework.data.mapping.Person");
var entityType = classLoader.loadClass("org.springframework.data.mapping.Person");
prepareMocks(entityType);

View File

@@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*;
import lombok.Data;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -32,7 +31,6 @@ import org.springframework.data.annotation.AccessType.Type;
import org.springframework.data.mapping.PersistentProperty;
import org.springframework.data.mapping.PersistentPropertyAccessor;
import org.springframework.data.mapping.context.SampleMappingContext;
import org.springframework.data.mapping.context.SamplePersistentProperty;
import org.springframework.test.util.ReflectionTestUtils;
/**
@@ -49,7 +47,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests {
static List<Object[]> parameters() throws Exception {
List<Object[]> parameters = new ArrayList<>();
List<Class<?>> types = Arrays.asList(FieldAccess.class, PropertyAccess.class, PrivateFinalFieldAccess.class,
var types = Arrays.asList(FieldAccess.class, PropertyAccess.class, PrivateFinalFieldAccess.class,
PrivateFinalPropertyAccess.class);
parameters.addAll(parameters(types, "primitiveInteger", Integer.valueOf(1)));
@@ -94,9 +92,9 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests {
List<Object[]> parameters = new ArrayList<>();
for (Class<?> type : types) {
for (var type : types) {
Constructor<?>[] constructors = type.getDeclaredConstructors();
var constructors = type.getDeclaredConstructors();
constructors[0].setAccessible(true);
parameters.add(new Object[] { constructors[0].newInstance(), propertyName, value,
type.getSimpleName() + "/" + propertyName });
@@ -111,7 +109,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests {
assertThat(getProperty(bean, propertyName)).satisfies(property -> {
PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
var persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
persistentPropertyAccessor.setProperty(property, value);
assertThat(persistentPropertyAccessor.getProperty(property)).isEqualTo(value);
@@ -123,7 +121,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests {
void shouldUseClassPropertyAccessorFactory(Object bean, String propertyName, Object value, String displayName)
throws Exception {
BasicPersistentEntity<Object, SamplePersistentProperty> persistentEntity = mappingContext
var persistentEntity = mappingContext
.getRequiredPersistentEntity(bean.getClass());
assertThat(ReflectionTestUtils.getField(persistentEntity, "propertyAccessorFactory"))
@@ -139,7 +137,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests {
private PersistentProperty<?> getProperty(Object bean, String name) {
BasicPersistentEntity<Object, SamplePersistentProperty> persistentEntity = mappingContext
var persistentEntity = mappingContext
.getRequiredPersistentEntity(bean.getClass());
return persistentEntity.getPersistentProperty(name);
}

View File

@@ -21,9 +21,9 @@ import java.io.Serializable;
import java.time.LocalDateTime;
import org.junit.jupiter.api.Test;
import org.springframework.data.annotation.Id;
import org.springframework.data.mapping.PersistentEntity;
import org.springframework.data.mapping.PersistentPropertyAccessor;
import org.springframework.data.mapping.context.SampleMappingContext;
import org.springframework.data.mapping.context.SamplePersistentProperty;
import org.springframework.data.repository.core.EntityInformation;
@@ -51,7 +51,7 @@ public class ClassGeneratingPropertyAccessorFactoryEntityTypeTests {
@Test // DATACMNS-853
void getIdentifierOfClassBasedEntity() {
Person jonDoe = new Person("JonDoe");
var jonDoe = new Person("JonDoe");
assertThat(getEntityInformation(Person.class).getId(jonDoe)).isEqualTo(jonDoe.name);
}
@@ -59,8 +59,8 @@ public class ClassGeneratingPropertyAccessorFactoryEntityTypeTests {
@Test // #2324
void shouldGeneratePropertyAccessorForKotlinClassWithMultipleCopyMethods() {
ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory();
PersistentPropertyAccessor<WithCustomCopyMethod> propertyAccessor = factory.getPropertyAccessor(
var factory = new ClassGeneratingPropertyAccessorFactory();
var propertyAccessor = factory.getPropertyAccessor(
mappingContext.getRequiredPersistentEntity(WithCustomCopyMethod.class),
new WithCustomCopyMethod("", "", "", 1, LocalDateTime.MAX, LocalDateTime.MAX, ""));

View File

@@ -18,7 +18,6 @@ package org.springframework.data.mapping.model;
import static org.assertj.core.api.Assertions.*;
import static org.assertj.core.api.Assumptions.*;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -32,7 +31,6 @@ import org.springframework.data.annotation.AccessType.Type;
import org.springframework.data.mapping.PersistentProperty;
import org.springframework.data.mapping.PersistentPropertyAccessor;
import org.springframework.data.mapping.context.SampleMappingContext;
import org.springframework.data.mapping.context.SamplePersistentProperty;
import org.springframework.data.mapping.model.subpackage.TypeInOtherPackage;
import org.springframework.test.util.ReflectionTestUtils;
@@ -51,7 +49,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
public static List<Object[]> parameters() throws ReflectiveOperationException {
List<Object[]> parameters = new ArrayList<>();
List<String> propertyNames = Arrays.asList("privateField", "packageDefaultField", "protectedField", "publicField",
var propertyNames = Arrays.asList("privateField", "packageDefaultField", "protectedField", "publicField",
"privateProperty", "packageDefaultProperty", "protectedProperty", "publicProperty", "syntheticProperty",
"immutable", "wither");
@@ -79,7 +77,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
List<Object[]> parameters = new ArrayList<>();
for (String propertyName : propertyNames) {
for (var propertyName : propertyNames) {
parameters.add(new Object[] { bean, propertyName, expectedConstructorType,
bean.getClass().getSimpleName() + "/" + propertyName });
}
@@ -103,7 +101,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
assertThat(getProperty(bean, propertyName)).satisfies(property -> {
PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
var persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
if (property.isImmutable() && property.getWither() == null) {
assertThatThrownBy(() -> persistentPropertyAccessor.setProperty(property, "value"))
@@ -122,9 +120,9 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
void accessorShouldDeclareConstructor(Object bean, String propertyName, Class<?> expectedConstructorType,
String displayName) throws Exception {
PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
var persistentPropertyAccessor = getPersistentPropertyAccessor(bean);
Constructor<?>[] declaredConstructors = persistentPropertyAccessor.getClass().getDeclaredConstructors();
var declaredConstructors = persistentPropertyAccessor.getClass().getDeclaredConstructors();
assertThat(declaredConstructors.length).isEqualTo(1);
assertThat(declaredConstructors[0].getParameterCount()).isEqualTo(1);
assertThat(declaredConstructors[0].getParameterTypes()[0]).isEqualTo(expectedConstructorType);
@@ -162,7 +160,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
void shouldUseClassPropertyAccessorFactory(Object bean, String propertyName, Class<?> expectedConstructorType,
String displayName) throws Exception {
BasicPersistentEntity<Object, SamplePersistentProperty> persistentEntity = mappingContext
var persistentEntity = mappingContext
.getRequiredPersistentEntity(bean.getClass());
assertThat(ReflectionTestUtils.getField(persistentEntity, "propertyAccessorFactory"))
@@ -178,7 +176,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests {
private PersistentProperty<?> getProperty(Object bean, String name) {
BasicPersistentEntity<Object, SamplePersistentProperty> persistentEntity = mappingContext
var persistentEntity = mappingContext
.getRequiredPersistentEntity(bean.getClass());
return persistentEntity.getPersistentProperty(name);
}

View File

@@ -23,10 +23,10 @@ import lombok.Data;
import lombok.Value;
import org.junit.jupiter.api.Test;
import org.springframework.core.convert.ConversionService;
import org.springframework.core.convert.support.DefaultConversionService;
import org.springframework.data.mapping.PersistentPropertyAccessor;
import org.springframework.data.mapping.PersistentPropertyPath;
import org.springframework.data.mapping.context.SampleMappingContext;
import org.springframework.data.mapping.context.SamplePersistentProperty;
import org.springframework.format.support.DefaultFormattingConversionService;
@@ -62,7 +62,7 @@ public class ConvertingPropertyAccessorUnitTests {
@Test // DATACMNS-596
public void convertsPropertyValueToExpectedType() {
Entity entity = new Entity();
var entity = new Entity();
entity.id = 1L;
assertThat(getIdProperty()).satisfies(
@@ -72,7 +72,7 @@ public class ConvertingPropertyAccessorUnitTests {
@Test // DATACMNS-596
public void doesNotInvokeConversionForNullValues() {
ConversionService conversionService = mock(ConversionService.class);
var conversionService = mock(ConversionService.class);
assertThat(getIdProperty()).satisfies(it -> {
assertThat(getAccessor(new Entity(), conversionService).getProperty(it, Number.class)).isNull();
@@ -83,10 +83,10 @@ public class ConvertingPropertyAccessorUnitTests {
@Test // DATACMNS-596
public void doesNotInvokeConversionIfTypeAlreadyMatches() {
Entity entity = new Entity();
var entity = new Entity();
entity.id = 1L;
ConversionService conversionService = mock(ConversionService.class);
var conversionService = mock(ConversionService.class);
assertThat(getIdProperty()).satisfies(it -> {
assertThat(getAccessor(entity, conversionService).getProperty(it, Number.class)).isEqualTo(1L);
@@ -97,7 +97,7 @@ public class ConvertingPropertyAccessorUnitTests {
@Test // DATACMNS-596
public void convertsValueOnSetIfTypesDontMatch() {
Entity entity = new Entity();
var entity = new Entity();
assertThat(getIdProperty()).satisfies(property -> {
getAccessor(entity, CONVERSION_SERVICE).setProperty(property, "1");
@@ -117,15 +117,15 @@ public class ConvertingPropertyAccessorUnitTests {
@Test // DATACMNS-1377
public void shouldConvertToPropertyPathLeafType() {
Order order = new Order(new Customer("1"));
var order = new Order(new Customer("1"));
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentPropertyAccessor<Order> accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order);
ConvertingPropertyAccessor<Order> convertingAccessor = new ConvertingPropertyAccessor<>(accessor,
var accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order);
var convertingAccessor = new ConvertingPropertyAccessor<Order>(accessor,
new DefaultConversionService());
PersistentPropertyPath<SamplePersistentProperty> path = context.getPersistentPropertyPath("customer.firstname",
var path = context.getPersistentPropertyPath("customer.firstname",
Order.class);
convertingAccessor.setProperty(path, 2);
@@ -141,8 +141,8 @@ public class ConvertingPropertyAccessorUnitTests {
private static SamplePersistentProperty getIdProperty() {
SampleMappingContext mappingContext = new SampleMappingContext();
BasicPersistentEntity<Object, SamplePersistentProperty> entity = mappingContext
var mappingContext = new SampleMappingContext();
var entity = mappingContext
.getRequiredPersistentEntity(Entity.class);
return entity.getPersistentProperty("id");
}

View File

@@ -47,7 +47,7 @@ class EntityInstantiatorsUnitTests {
@Test
void usesReflectionEntityInstantiatorAsDefaultFallback() {
EntityInstantiators instantiators = new EntityInstantiators();
var instantiators = new EntityInstantiators();
assertThat(instantiators.getInstantiatorFor(entity)).isInstanceOf(ClassGeneratingEntityInstantiator.class);
}
@@ -58,7 +58,7 @@ class EntityInstantiatorsUnitTests {
Map<Class<?>, EntityInstantiator> customInstantiators = Collections.singletonMap(String.class, customInstantiator);
EntityInstantiators instantiators = new EntityInstantiators(customInstantiators);
var instantiators = new EntityInstantiators(customInstantiators);
assertThat(instantiators.getInstantiatorFor(entity)).isEqualTo(customInstantiator);
}
@@ -70,7 +70,7 @@ class EntityInstantiatorsUnitTests {
Map<Class<?>, EntityInstantiator> customInstantiators = Collections.singletonMap(String.class,
ReflectionEntityInstantiator.INSTANCE);
EntityInstantiators instantiators = new EntityInstantiators(customInstantiator, customInstantiators);
var instantiators = new EntityInstantiators(customInstantiator, customInstantiators);
instantiators.getInstantiatorFor(entity);
assertThat(instantiators.getInstantiatorFor(entity)).isEqualTo(customInstantiator);

View File

@@ -45,7 +45,7 @@ class IdPropertyIdentifierAccessorUnitTests {
@Test // DATACMNS-599
void returnsIdentifierValue() {
SampleWithId sample = new SampleWithId();
var sample = new SampleWithId();
sample.id = 1L;
IdentifierAccessor accessor = new IdPropertyIdentifierAccessor(

View File

@@ -17,8 +17,6 @@ package org.springframework.data.mapping.model;
import static org.assertj.core.api.Assertions.*;
import java.util.Optional;
import org.junit.jupiter.api.Test;
import org.springframework.data.mapping.context.SampleMappingContext;
@@ -35,7 +33,7 @@ class KotlinCopyMethodUnitTests {
@Test // #2324
void shouldLookupPrimaryConstructor() {
Optional<KotlinCopyMethod> optional = KotlinCopyMethod.findCopyMethod(DataClassKt.class);
var optional = KotlinCopyMethod.findCopyMethod(DataClassKt.class);
assertThat(optional).hasValueSatisfying(actual -> {
// $this, 1 component, 1 defaulting mask, 1 Object marker
@@ -49,7 +47,7 @@ class KotlinCopyMethodUnitTests {
@Test // #2324
void shouldLookupPrimaryConstructorWhenTwoCopyMethodsArePresent() {
Optional<KotlinCopyMethod> optional = KotlinCopyMethod.findCopyMethod(WithCustomCopyMethod.class);
var optional = KotlinCopyMethod.findCopyMethod(WithCustomCopyMethod.class);
assertThat(optional).hasValueSatisfying(actual -> {
// $this, 7 components, 1 defaulting mask, 1 Object marker
@@ -67,7 +65,7 @@ class KotlinCopyMethodUnitTests {
@Test // #2324
void shouldUsePublicKotlinMethodForSinglePropertyEntities() {
KotlinCopyMethod copyMethod = KotlinCopyMethod.findCopyMethod(DataClassKt.class).get();
var copyMethod = KotlinCopyMethod.findCopyMethod(DataClassKt.class).get();
assertThat(copyMethod.shouldUsePublicCopyMethod(mappingContext.getRequiredPersistentEntity(DataClassKt.class)))
.isTrue();

View File

@@ -62,10 +62,10 @@ public class ParameterizedKotlinInstantiatorUnitTests {
@Parameters(name = "{5}")
public static List<Object[]> parameters() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
KotlinClassGeneratingEntityInstantiator generatingInstantiator = new KotlinClassGeneratingEntityInstantiator();
ReflectionEntityInstantiator reflectionInstantiator = ReflectionEntityInstantiator.INSTANCE;
var generatingInstantiator = new KotlinClassGeneratingEntityInstantiator();
var reflectionInstantiator = ReflectionEntityInstantiator.INSTANCE;
List<Object[]> fixtures = new ArrayList<>();
fixtures.addAll(createFixture(context, With32Args.class, 32, generatingInstantiator));
@@ -79,7 +79,7 @@ public class ParameterizedKotlinInstantiatorUnitTests {
private static List<Object[]> createFixture(SampleMappingContext context, Class<?> entityType, int propertyCount,
EntityInstantiator entityInstantiator) {
BasicPersistentEntity<Object, SamplePersistentProperty> persistentEntity = context.getPersistentEntity(entityType);
var persistentEntity = context.getPersistentEntity(entityType);
return IntStream.range(0, propertyCount).mapToObj(i -> {
@@ -92,11 +92,11 @@ public class ParameterizedKotlinInstantiatorUnitTests {
@Test // DATACMNS-1402
public void shouldCreateInstanceWithSinglePropertySet() {
Object instance = entityInstantiator.createInstance(entity, new SingleParameterValueProvider());
var instance = entityInstantiator.createInstance(entity, new SingleParameterValueProvider());
for (int i = 0; i < propertyCount; i++) {
for (var i = 0; i < propertyCount; i++) {
Object value = ReflectionTestUtils.getField(instance, Integer.toString(i));
var value = ReflectionTestUtils.getField(instance, Integer.toString(i));
if (propertyUnderTestIndex == i) {
assertThat(value).describedAs("Property " + i + " of " + entity).isEqualTo(valueToSet);
@@ -109,11 +109,11 @@ public class ParameterizedKotlinInstantiatorUnitTests {
@Test // DATACMNS-1402
public void shouldCreateInstanceWithAllExceptSinglePropertySet() {
Object instance = entityInstantiator.createInstance(entity, new AllButParameterValueProvider());
var instance = entityInstantiator.createInstance(entity, new AllButParameterValueProvider());
for (int i = 0; i < propertyCount; i++) {
for (var i = 0; i < propertyCount; i++) {
Object value = ReflectionTestUtils.getField(instance, Integer.toString(i));
var value = ReflectionTestUtils.getField(instance, Integer.toString(i));
if (propertyUnderTestIndex == i) {
assertThat(value).describedAs("Property " + i + " of " + entity).isEqualTo("");

View File

@@ -42,7 +42,7 @@ class PersistentEntityIsNewStrategyUnitTests {
PersistentEntity<?, ?> entity = context.getRequiredPersistentEntity(PrimitiveIdEntity.class);
PrimitiveIdEntity bean = new PrimitiveIdEntity();
var bean = new PrimitiveIdEntity();
assertThat(entity.isNew(bean)).isTrue();
}
@@ -51,7 +51,7 @@ class PersistentEntityIsNewStrategyUnitTests {
PersistentEntity<?, ?> entity = context.getRequiredPersistentEntity(PrimitiveIdEntity.class);
PrimitiveIdEntity bean = new PrimitiveIdEntity();
var bean = new PrimitiveIdEntity();
bean.id = 1L;
assertThat(entity.isNew(bean)).isFalse();
@@ -62,7 +62,7 @@ class PersistentEntityIsNewStrategyUnitTests {
PersistentEntity<?, ?> entity = context.getRequiredPersistentEntity(PrimitiveWrapperIdEntity.class);
PrimitiveWrapperIdEntity bean = new PrimitiveWrapperIdEntity();
var bean = new PrimitiveWrapperIdEntity();
assertThat(entity.isNew(bean)).isTrue();
}
@@ -71,7 +71,7 @@ class PersistentEntityIsNewStrategyUnitTests {
PersistentEntity<?, ?> entity = context.getRequiredPersistentEntity(PrimitiveWrapperIdEntity.class);
PrimitiveWrapperIdEntity bean = new PrimitiveWrapperIdEntity();
var bean = new PrimitiveWrapperIdEntity();
bean.id = 0L;
assertThat(entity.isNew(bean)).isFalse();
@@ -108,7 +108,7 @@ class PersistentEntityIsNewStrategyUnitTests {
PersistentEntity<?, ?> entity = context.getRequiredPersistentEntity(VersionedEntity.class);
VersionedEntity bean = new VersionedEntity();
var bean = new VersionedEntity();
bean.id = 1L;
assertThat(entity.isNew(bean)).isTrue();

View File

@@ -17,7 +17,6 @@ package org.springframework.data.mapping.model;
import static org.assertj.core.api.Assertions.*;
import java.util.Iterator;
import java.util.Optional;
import org.junit.jupiter.api.Test;
@@ -28,7 +27,6 @@ import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.data.mapping.MappingException;
import org.springframework.data.mapping.PersistentEntity;
import org.springframework.data.mapping.PersistentProperty;
import org.springframework.data.mapping.PreferredConstructor.Parameter;
import org.springframework.data.mapping.model.PersistentEntityParameterValueProviderUnitTests.Outer.Inner;
import org.springframework.data.util.ClassTypeInformation;
@@ -59,7 +57,7 @@ class PersistentEntityParameterValueProviderUnitTests<P extends PersistentProper
assertThat(entity.getPersistenceConstructor()).satisfies(constructor -> {
Iterator<Parameter<Object, P>> iterator = constructor.getParameters().iterator();
var iterator = constructor.getParameters().iterator();
ParameterValueProvider<P> provider = new PersistentEntityParameterValueProvider<>(entity, propertyValueProvider,
outer);

View File

@@ -51,10 +51,10 @@ public class PersistentPropertyAccessorTests {
List<Object[]> parameters = new ArrayList<>();
ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory();
var factory = new ClassGeneratingPropertyAccessorFactory();
Function<Object, PersistentPropertyAccessor<?>> beanWrapper = BeanWrapper::new;
Function<Object, PersistentPropertyAccessor<?>> classGenerating = it -> factory
var beanWrapper = (Function<Object, PersistentPropertyAccessor<?>>) BeanWrapper::new;
var classGenerating = (Function<Object, PersistentPropertyAccessor<?>>) it -> factory
.getPropertyAccessor(MAPPING_CONTEXT.getRequiredPersistentEntity(it.getClass()), it);
parameters.add(new Object[] { beanWrapper, "BeanWrapper" });
@@ -67,9 +67,9 @@ public class PersistentPropertyAccessorTests {
@MethodSource("parameters")
void shouldSetProperty(Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
DataClass bean = new DataClass();
var bean = new DataClass();
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "id");
var property = getProperty(bean, "id");
accessor.setProperty(property, "value");
@@ -82,9 +82,9 @@ public class PersistentPropertyAccessorTests {
@MethodSource("parameters")
void shouldSetKotlinDataClassProperty(Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
DataClassKt bean = new DataClassKt("foo");
var bean = new DataClassKt("foo");
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "id");
var property = getProperty(bean, "id");
accessor.setProperty(property, "value");
@@ -98,9 +98,9 @@ public class PersistentPropertyAccessorTests {
void shouldSetExtendedKotlinDataClassProperty(
Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
ExtendedDataClassKt bean = new ExtendedDataClassKt(0, "bar");
var bean = new ExtendedDataClassKt(0, "bar");
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "id");
var property = getProperty(bean, "id");
accessor.setProperty(property, 1L);
@@ -113,9 +113,9 @@ public class PersistentPropertyAccessorTests {
@MethodSource("parameters")
void shouldUseKotlinGeneratedCopyMethod(Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
UnusedCustomCopy bean = new UnusedCustomCopy(new Timestamp(100));
var bean = new UnusedCustomCopy(new Timestamp(100));
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "date");
var property = getProperty(bean, "date");
accessor.setProperty(property, new Timestamp(200));
@@ -129,9 +129,9 @@ public class PersistentPropertyAccessorTests {
void kotlinCopyMethodShouldNotSetUnsettableProperty(
Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
SingleSettableProperty bean = new SingleSettableProperty(1.1);
var bean = new SingleSettableProperty(1.1);
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "version");
var property = getProperty(bean, "version");
assertThatThrownBy(() -> accessor.setProperty(property, 1)).isInstanceOf(UnsupportedOperationException.class);
}
@@ -141,13 +141,13 @@ public class PersistentPropertyAccessorTests {
void shouldSet17thImmutableNullableKotlinProperty(
Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
With33Args bean = new With33Args();
var bean = new With33Args();
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "17");
var property = getProperty(bean, "17");
accessor.setProperty(property, "foo");
With33Args updated = (With33Args) accessor.getBean();
var updated = (With33Args) accessor.getBean();
assertThat(updated.get17()).isEqualTo("foo");
}
@@ -155,9 +155,9 @@ public class PersistentPropertyAccessorTests {
@MethodSource("parameters")
void shouldWitherProperty(Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
ValueClass bean = new ValueClass("foo", "bar");
var bean = new ValueClass("foo", "bar");
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "id");
var property = getProperty(bean, "id");
accessor.setProperty(property, "value");
@@ -170,9 +170,9 @@ public class PersistentPropertyAccessorTests {
@MethodSource("parameters")
void shouldRejectImmutablePropertyUpdate(Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
ValueClass bean = new ValueClass("foo", "bar");
var bean = new ValueClass("foo", "bar");
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "immutable");
var property = getProperty(bean, "immutable");
assertThatThrownBy(() -> accessor.setProperty(property, "value")).isInstanceOf(UnsupportedOperationException.class);
}
@@ -182,9 +182,9 @@ public class PersistentPropertyAccessorTests {
void shouldRejectImmutableKotlinClassPropertyUpdate(
Function<Object, PersistentPropertyAccessor<?>> propertyAccessorFunction) {
ValueClassKt bean = new ValueClassKt("foo");
var bean = new ValueClassKt("foo");
PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean);
SamplePersistentProperty property = getProperty(bean, "immutable");
var property = getProperty(bean, "immutable");
assertThatThrownBy(() -> accessor.setProperty(property, "value")).isInstanceOf(UnsupportedOperationException.class);
}
@@ -192,14 +192,14 @@ public class PersistentPropertyAccessorTests {
@Test // DATACMNS-1422
void shouldUseReflectionIfFrameworkTypesNotVisible() throws Exception {
HidingClassLoader classLoader = HidingClassLoader.hide(Assert.class);
var classLoader = HidingClassLoader.hide(Assert.class);
classLoader.excludePackage("org.springframework.data.mapping.model");
Class<?> entityType = classLoader
var entityType = classLoader
.loadClass("org.springframework.data.mapping.model.PersistentPropertyAccessorTests$ClassLoaderTest");
ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory();
BasicPersistentEntity<Object, SamplePersistentProperty> entity = MAPPING_CONTEXT
var factory = new ClassGeneratingPropertyAccessorFactory();
var entity = MAPPING_CONTEXT
.getRequiredPersistentEntity(entityType);
assertThat(factory.isSupported(entity)).isFalse();

View File

@@ -33,7 +33,7 @@ class PropertyAccessorClassGeneratorUnitTests {
@Test // DATACMNS-1602
void reusesAlreadyDeclaredClass() {
SampleMappingContext context = new SampleMappingContext();
var context = new SampleMappingContext();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(Sample.class);
PropertyAccessorClassGenerator.generateCustomAccessorClass(entity);

View File

@@ -45,7 +45,7 @@ class PropertyUnitTests {
@Test // DATACMNS-1322
void shouldDiscoverWitherMethod() {
Property property = Property.of(ClassTypeInformation.from(WitherType.class),
var property = Property.of(ClassTypeInformation.from(WitherType.class),
ReflectionUtils.findField(WitherType.class, "id"));
assertThat(property.getWither()).isPresent().hasValueSatisfying(actual -> {
@@ -57,7 +57,7 @@ class PropertyUnitTests {
@Test // DATACMNS-1421
void shouldDiscoverDerivedWitherMethod() {
Property property = Property.of(ClassTypeInformation.from(DerivedWitherClass.class),
var property = Property.of(ClassTypeInformation.from(DerivedWitherClass.class),
ReflectionUtils.findField(DerivedWitherClass.class, "id"));
assertThat(property.getWither()).isPresent().hasValueSatisfying(actual -> {
@@ -70,7 +70,7 @@ class PropertyUnitTests {
@Test // DATACMNS-1421
void shouldNotDiscoverWitherMethodWithIncompatibleReturnType() {
Property property = Property.of(ClassTypeInformation.from(AnotherLevel.class),
var property = Property.of(ClassTypeInformation.from(AnotherLevel.class),
ReflectionUtils.findField(AnotherLevel.class, "id"));
assertThat(property.getWither()).isEmpty();

View File

@@ -71,7 +71,7 @@ class ReflectionEntityInstantiatorUnitTests<P extends PersistentProperty<P>> {
doReturn(constructor).when(entity).getPersistenceConstructor();
Object instance = INSTANCE.createInstance(entity, provider);
var instance = INSTANCE.createInstance(entity, provider);
assertThat(instance).isInstanceOf(Foo.class);
assertThat(constructor)
@@ -91,15 +91,15 @@ class ReflectionEntityInstantiatorUnitTests<P extends PersistentProperty<P>> {
@Test // DATACMNS-134
void createsInnerClassInstanceCorrectly() {
BasicPersistentEntity<Inner, P> entity = new BasicPersistentEntity<>(from(Inner.class));
var entity = new BasicPersistentEntity<Inner, P>(from(Inner.class));
assertThat(entity.getPersistenceConstructor()).satisfies(it -> {
Parameter<Object, P> parameter = it.getParameters().iterator().next();
var parameter = it.getParameters().iterator().next();
Object outer = new Outer();
when(provider.getParameterValue(parameter)).thenReturn(outer);
Inner instance = INSTANCE.createInstance(entity, provider);
var instance = INSTANCE.createInstance(entity, provider);
assertThat(instance).isNotNull();

View File

@@ -30,10 +30,10 @@ import java.util.Map;
import java.util.stream.Stream;
import org.junit.jupiter.api.Test;
import org.springframework.data.mapping.AccessOptions;
import org.springframework.data.mapping.AccessOptions.SetOptions.SetNulls;
import org.springframework.data.mapping.PersistentEntity;
import org.springframework.data.mapping.PersistentPropertyPath;
import org.springframework.data.mapping.PersistentPropertyPathAccessor;
import org.springframework.data.mapping.context.SampleMappingContext;
import org.springframework.data.mapping.context.SamplePersistentProperty;
@@ -55,7 +55,7 @@ class SimplePersistentPropertyPathAccessorUnitTests {
@Test // DATACMNS-1438
void setsPropertyContainingCollectionPathForAllElements() {
Customers customers = new Customers(Arrays.asList(first, second), Collections.emptyMap());
var customers = new Customers(Arrays.asList(first, second), Collections.emptyMap());
assertFirstnamesSetFor(customers, "customers.firstname");
}
@@ -67,7 +67,7 @@ class SimplePersistentPropertyPathAccessorUnitTests {
map.put("1", first);
map.put("2", second);
Customers customers = new Customers(Collections.emptyList(), map);
var customers = new Customers(Collections.emptyList(), map);
assertFirstnamesSetFor(customers, "customerMap.firstname");
}
@@ -75,10 +75,10 @@ class SimplePersistentPropertyPathAccessorUnitTests {
@Test // DATACMNS-1461
void skipsNullValueIfConfigured() {
CustomerWrapper wrapper = new CustomerWrapper(null);
var wrapper = new CustomerWrapper(null);
PersistentPropertyPathAccessor<CustomerWrapper> accessor = getAccessor(wrapper);
PersistentPropertyPath<SamplePersistentProperty> path = context.getPersistentPropertyPath("customer.firstname",
var accessor = getAccessor(wrapper);
var path = context.getPersistentPropertyPath("customer.firstname",
CustomerWrapper.class);
assertThatCode(() -> {
@@ -89,10 +89,10 @@ class SimplePersistentPropertyPathAccessorUnitTests {
@Test // DATACMNS-1296
void skipsIntermediateNullsWhenSettingNestedValues() {
CustomerWrapperWrapper wrapper = new CustomerWrapperWrapper(null);
var wrapper = new CustomerWrapperWrapper(null);
PersistentPropertyPathAccessor<CustomerWrapperWrapper> accessor = getAccessor(wrapper);
PersistentPropertyPath<SamplePersistentProperty> path = context
var accessor = getAccessor(wrapper);
var path = context
.getPersistentPropertyPath("wrapper.customer.firstname", CustomerWrapperWrapper.class);
assertThatCode(() -> {
@@ -102,7 +102,7 @@ class SimplePersistentPropertyPathAccessorUnitTests {
private void assertFirstnamesSetFor(Customers customers, String path) {
PersistentPropertyPath<SamplePersistentProperty> propertyPath = context.getPersistentPropertyPath(path,
var propertyPath = context.getPersistentPropertyPath(path,
Customers.class);
getAccessor(customers).setProperty(propertyPath, "firstname");
@@ -114,10 +114,10 @@ class SimplePersistentPropertyPathAccessorUnitTests {
private <T> PersistentPropertyPathAccessor<T> getAccessor(T source) {
Class<? extends Object> type = source.getClass();
var type = source.getClass();
PersistentEntity<Object, SamplePersistentProperty> entity = context.getRequiredPersistentEntity(type);
PersistentPropertyPathAccessor<T> accessor = entity.getPropertyPathAccessor(source);
var accessor = entity.getPropertyPathAccessor(source);
return accessor;
}

View File

@@ -51,8 +51,8 @@ class MapAccessingMethodInterceptorUnitTests {
when(invocation.proceed()).thenReturn(map.toString());
when(invocation.getMethod()).thenReturn(Object.class.getMethod("toString"));
MapAccessingMethodInterceptor interceptor = new MapAccessingMethodInterceptor(map);
Object result = interceptor.invoke(invocation);
var interceptor = new MapAccessingMethodInterceptor(map);
var result = interceptor.invoke(invocation);
assertThat(result).isEqualTo(map.toString());
}
@@ -65,7 +65,7 @@ class MapAccessingMethodInterceptorUnitTests {
when(invocation.getMethod()).thenReturn(Sample.class.getMethod("setName", String.class));
when(invocation.getArguments()).thenReturn(new Object[] { "Foo" });
Object result = new MapAccessingMethodInterceptor(map).invoke(invocation);
var result = new MapAccessingMethodInterceptor(map).invoke(invocation);
assertThat(result).isNull();
assertThat(map.get("name")).isEqualTo("Foo");
@@ -79,7 +79,7 @@ class MapAccessingMethodInterceptorUnitTests {
when(invocation.getMethod()).thenReturn(Sample.class.getMethod("getName"));
Object result = new MapAccessingMethodInterceptor(map).invoke(invocation);
var result = new MapAccessingMethodInterceptor(map).invoke(invocation);
assertThat(result).isEqualTo("Foo");
}

View File

@@ -117,12 +117,12 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Object result = methodInterceptor
var result = methodInterceptor
.invoke(mockInvocationOf("getHelperCollection", Collections.singleton(mock(Helper.class))));
assertThat(result).isInstanceOf(Set.class);
Set<Object> projections = (Set<Object>) result;
var projections = (Set<Object>) result;
assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class);
}
@@ -132,12 +132,12 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Object result = methodInterceptor
var result = methodInterceptor
.invoke(mockInvocationOf("getHelperList", Collections.singletonList(mock(Helper.class))));
assertThat(result).isInstanceOf(List.class);
List<Object> projections = (List<Object>) result;
var projections = (List<Object>) result;
assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class);
}
@@ -148,11 +148,11 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Object result = methodInterceptor.invoke(mockInvocationOf("getHelperArray", new Helper[] { mock(Helper.class) }));
var result = methodInterceptor.invoke(mockInvocationOf("getHelperArray", new Helper[] { mock(Helper.class) }));
assertThat(result).isInstanceOf(Collection.class);
Collection<Object> projections = (Collection<Object>) result;
var projections = (Collection<Object>) result;
assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class);
}
@@ -164,12 +164,12 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Object result = methodInterceptor
var result = methodInterceptor
.invoke(mockInvocationOf("getHelperMap", Collections.singletonMap("foo", mock(Helper.class))));
assertThat(result).isInstanceOf(Map.class);
Map<String, Object> projections = (Map<String, Object>) result;
var projections = (Map<String, Object>) result;
assertThat(projections).hasSize(1).matches(map -> map.get("foo") instanceof HelperProjection);
}
@@ -180,12 +180,12 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Helper reference = mock(Helper.class);
Object result = methodInterceptor.invoke(mockInvocationOf("getHelperCollection", reference));
var reference = mock(Helper.class);
var result = methodInterceptor.invoke(mockInvocationOf("getHelperCollection", reference));
assertThat(result).isInstanceOf(Collection.class);
Collection<?> collection = (Collection<?>) result;
var collection = (Collection<?>) result;
assertThat(collection).hasSize(1).hasOnlyElementsOfType(HelperProjection.class);
}
@@ -196,12 +196,12 @@ class ProjectingMethodInterceptorUnitTests {
MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor,
conversionService);
Object result = methodInterceptor
var result = methodInterceptor
.invoke(mockInvocationOf("getHelperEnumSet", Collections.singletonList(HelperEnum.Helpful)));
assertThat(result).isInstanceOf(EnumSet.class);
Collection<HelperEnum> collection = (Collection<HelperEnum>) result;
var collection = (Collection<HelperEnum>) result;
assertThat(collection).containsOnly(HelperEnum.Helpful);
}

View File

@@ -21,10 +21,8 @@ import org.junit.jupiter.api.Test;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.jayway.jsonpath.Configuration.ConfigurationBuilder;
import com.jayway.jsonpath.DocumentContext;
import com.jayway.jsonpath.JsonPath;
import com.jayway.jsonpath.Option;
import com.jayway.jsonpath.ParseContext;
/**
* Integration tests for projections.
@@ -36,11 +34,11 @@ class ProjectionIntegrationTests {
@Test // DATACMNS-909
void jacksonSerializationDoesNotExposeDecoratedClass() throws Exception {
ProxyProjectionFactory factory = new ProxyProjectionFactory();
SampleProjection projection = factory.createProjection(SampleProjection.class);
var factory = new ProxyProjectionFactory();
var projection = factory.createProjection(SampleProjection.class);
ParseContext context = JsonPath.using(new ConfigurationBuilder().options(Option.SUPPRESS_EXCEPTIONS).build());
DocumentContext json = context.parse(new ObjectMapper().writeValueAsString(projection));
var context = JsonPath.using(new ConfigurationBuilder().options(Option.SUPPRESS_EXCEPTIONS).build());
var json = context.parse(new ObjectMapper().writeValueAsString(projection));
assertThat(json.read("$.decoratedClass", String.class)).isNull();
}

View File

@@ -42,7 +42,7 @@ class PropertyAccessingMethodInterceptorUnitTests {
@Test // DATAREST-221
void triggersPropertyAccessOnTarget() throws Throwable {
Source source = new Source();
var source = new Source();
source.firstname = "Dave";
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("getFirstname"));
@@ -79,7 +79,7 @@ class PropertyAccessingMethodInterceptorUnitTests {
@Test // DATACMNS-820
void triggersWritePropertyAccessOnTarget() throws Throwable {
Source source = new Source();
var source = new Source();
source.firstname = "Dave";
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("setFirstname", String.class));
@@ -93,7 +93,7 @@ class PropertyAccessingMethodInterceptorUnitTests {
@Test // DATACMNS-820
void throwsAppropriateExceptionIfTheInvocationHasNoArguments() throws Throwable {
Source source = new Source();
var source = new Source();
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("setFirstname", String.class));
when(invocation.getArguments()).thenReturn(new Object[0]);

View File

@@ -17,7 +17,6 @@ package org.springframework.data.projection;
import static org.assertj.core.api.Assertions.*;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Proxy;
import java.time.LocalDateTime;
import java.util.Calendar;
@@ -25,12 +24,11 @@ import java.util.Collections;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import org.junit.jupiter.api.Test;
import org.springframework.aop.Advisor;
import org.springframework.aop.TargetClassAware;
import org.springframework.aop.framework.Advised;
import org.springframework.test.util.ReflectionTestUtils;
@@ -70,7 +68,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATAREST-221, DATACMNS-630
void createsProjectingProxy() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
customer.lastname = "Matthews";
@@ -78,7 +76,7 @@ class ProxyProjectionFactoryUnitTests {
customer.address.city = "New York";
customer.address.zipCode = "ZIP";
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
assertThat(excerpt.getFirstname()).isEqualTo("Dave");
assertThat(excerpt.getAddress().getZipCode()).isEqualTo("ZIP");
@@ -87,7 +85,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATAREST-221, DATACMNS-630
void proxyExposesTargetClassAware() {
CustomerExcerpt proxy = factory.createProjection(CustomerExcerpt.class);
var proxy = factory.createProjection(CustomerExcerpt.class);
assertThat(proxy).isInstanceOf(TargetClassAware.class);
assertThat(((TargetClassAware) proxy).getTargetClass()).isEqualTo(HashMap.class);
@@ -101,7 +99,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-630
void createsMapBasedProxyFromSource() {
HashMap<String, Object> addressSource = new HashMap<>();
var addressSource = new HashMap<String, Object>();
addressSource.put("zipCode", "ZIP");
addressSource.put("city", "NewYork");
@@ -110,11 +108,11 @@ class ProxyProjectionFactoryUnitTests {
source.put("lastname", "Matthews");
source.put("address", addressSource);
CustomerExcerpt projection = factory.createProjection(CustomerExcerpt.class, source);
var projection = factory.createProjection(CustomerExcerpt.class, source);
assertThat(projection.getFirstname()).isEqualTo("Dave");
AddressExcerpt address = projection.getAddress();
var address = projection.getAddress();
assertThat(address).isNotNull();
assertThat(address.getZipCode()).isEqualTo("ZIP");
}
@@ -122,7 +120,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-630
void createsEmptyMapBasedProxy() {
CustomerProxy proxy = factory.createProjection(CustomerProxy.class);
var proxy = factory.createProjection(CustomerProxy.class);
assertThat(proxy).isNotNull();
@@ -133,8 +131,8 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-630
void returnsAllPropertiesAsInputProperties() {
ProjectionInformation projectionInformation = factory.getProjectionInformation(CustomerExcerpt.class);
List<PropertyDescriptor> result = projectionInformation.getInputProperties();
var projectionInformation = factory.getProjectionInformation(CustomerExcerpt.class);
var result = projectionInformation.getInputProperties();
assertThat(result).hasSize(6);
}
@@ -142,10 +140,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-655
void invokesDefaultMethodOnProxy() {
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class);
var excerpt = factory.createProjection(CustomerExcerpt.class);
Advised advised = (Advised) ReflectionTestUtils.getField(Proxy.getInvocationHandler(excerpt), "advised");
Advisor[] advisors = advised.getAdvisors();
var advised = (Advised) ReflectionTestUtils.getField(Proxy.getInvocationHandler(excerpt), "advised");
var advisors = advised.getAdvisors();
assertThat(advisors.length).isGreaterThan(0);
assertThat(advisors[0].getAdvice()).isInstanceOf(DefaultMethodInvokingMethodInterceptor.class);
@@ -154,7 +152,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-648
void exposesProxyTarget() {
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class);
var excerpt = factory.createProjection(CustomerExcerpt.class);
assertThat(excerpt).isInstanceOf(TargetAware.class);
assertThat(((TargetAware) excerpt).getTarget()).isInstanceOf(Map.class);
@@ -163,10 +161,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-722
void doesNotProjectPrimitiveArray() {
Customer customer = new Customer();
var customer = new Customer();
customer.picture = "binarydata".getBytes();
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
assertThat(excerpt.getPicture()).isEqualTo(customer.picture);
}
@@ -174,14 +172,14 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-722
void projectsNonPrimitiveArray() {
Address address = new Address();
var address = new Address();
address.city = "New York";
address.zipCode = "ZIP";
Customer customer = new Customer();
var customer = new Customer();
customer.shippingAddresses = new Address[] { address };
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
assertThat(excerpt.getShippingAddresses()).hasSize(1);
}
@@ -189,10 +187,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-782
void convertsPrimitiveValues() {
Customer customer = new Customer();
var customer = new Customer();
customer.id = 1L;
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
assertThat(excerpt.getId()).isEqualTo(customer.id.toString());
}
@@ -200,7 +198,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-89
void exposesProjectionInformationCorrectly() {
ProjectionInformation information = factory.getProjectionInformation(CustomerExcerpt.class);
var information = factory.getProjectionInformation(CustomerExcerpt.class);
assertThat(information.getType()).isEqualTo(CustomerExcerpt.class);
assertThat(information.isClosed()).isTrue();
@@ -209,10 +207,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-829
void projectsMapOfStringToObjectCorrectly() {
Customer customer = new Customer();
var customer = new Customer();
customer.data = Collections.singletonMap("key", null);
Map<String, Object> data = factory.createProjection(CustomerExcerpt.class, customer).getData();
var data = factory.createProjection(CustomerExcerpt.class, customer).getData();
assertThat(data).isNotNull();
assertThat(data.containsKey("key")).isTrue();
@@ -222,7 +220,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1121
void doesNotCreateWrappingProxyIfTargetImplementsProjectionInterface() {
Customer customer = new Customer();
var customer = new Customer();
assertThat(factory.createProjection(Contact.class, customer)).isSameAs(customer);
}
@@ -230,10 +228,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1762
void supportsOptionalAsReturnTypeIfEmpty() {
Customer customer = new Customer();
var customer = new Customer();
customer.picture = null;
CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer);
var excerpt = factory.createProjection(CustomerWithOptional.class, customer);
assertThat(excerpt.getPicture()).isEmpty();
}
@@ -241,10 +239,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1762
void supportsOptionalAsReturnTypeIfPresent() {
Customer customer = new Customer();
var customer = new Customer();
customer.picture = new byte[] { 1, 2, 3 };
CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer);
var excerpt = factory.createProjection(CustomerWithOptional.class, customer);
assertThat(excerpt.getPicture()).hasValueSatisfying(bytes -> {
assertThat(bytes).isEqualTo(new byte[] { 1, 2, 3 });
@@ -254,10 +252,10 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1762
void supportsOptionalBackedByOptional() {
Customer customer = new Customer();
var customer = new Customer();
customer.optional = Optional.of("foo");
CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer);
var excerpt = factory.createProjection(CustomerWithOptional.class, customer);
assertThat(excerpt.getOptional()).hasValue("foo");
}
@@ -265,7 +263,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1762
void supportsOptionalWithProjectionAsReturnTypeIfPresent() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
customer.lastname = "Matthews";
@@ -273,7 +271,7 @@ class ProxyProjectionFactoryUnitTests {
customer.address.city = "New York";
customer.address.zipCode = "ZIP";
CustomerWithOptionalHavingProjection excerpt = factory.createProjection(CustomerWithOptionalHavingProjection.class,
var excerpt = factory.createProjection(CustomerWithOptionalHavingProjection.class,
customer);
assertThat(excerpt.getFirstname()).isEqualTo("Dave");
@@ -285,7 +283,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1836
void supportsDateToLocalDateTimeConversion() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
customer.birthdate = new GregorianCalendar(1967, Calendar.JANUARY, 9).getTime();
@@ -293,7 +291,7 @@ class ProxyProjectionFactoryUnitTests {
customer.address.city = "New York";
customer.address.zipCode = "ZIP";
CustomerWithLocalDateTime excerpt = factory.createProjection(CustomerWithLocalDateTime.class, customer);
var excerpt = factory.createProjection(CustomerWithLocalDateTime.class, customer);
assertThat(excerpt.getFirstname()).isEqualTo("Dave");
assertThat(excerpt.getBirthdate()).isEqualTo(LocalDateTime.of(1967, 1, 9, 0, 0));
@@ -302,7 +300,7 @@ class ProxyProjectionFactoryUnitTests {
@Test // DATACMNS-1836
void supportsNullableWrapperDateToLocalDateTimeConversion() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
customer.birthdate = new GregorianCalendar(1967, Calendar.JANUARY, 9).getTime();
@@ -310,7 +308,7 @@ class ProxyProjectionFactoryUnitTests {
customer.address.city = "New York";
customer.address.zipCode = "ZIP";
CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer);
var excerpt = factory.createProjection(CustomerWithOptional.class, customer);
assertThat(excerpt.getFirstname()).isEqualTo("Dave");
assertThat(excerpt.getBirthdate()).contains(LocalDateTime.of(1967, 1, 9, 0, 0));

View File

@@ -18,7 +18,6 @@ package org.springframework.data.projection;
import static org.assertj.core.api.Assertions.*;
import java.beans.PropertyDescriptor;
import java.util.List;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -45,18 +44,18 @@ class SpelAwareProxyProjectionFactoryUnitTests {
@Test // DATAREST-221, DATACMNS-630
void exposesSpelInvokingMethod() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
customer.lastname = "Matthews";
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
assertThat(excerpt.getFullName()).isEqualTo("Dave Matthews");
}
@Test // DATACMNS-630
void excludesAtValueAnnotatedMethodsForInputProperties() {
List<PropertyDescriptor> properties = factory //
var properties = factory //
.getProjectionInformation(CustomerExcerpt.class) //
.getInputProperties();
@@ -68,7 +67,7 @@ class SpelAwareProxyProjectionFactoryUnitTests {
@Test // DATACMNS-89
void considersProjectionUsingAtValueNotClosed() {
ProjectionInformation information = factory.getProjectionInformation(CustomerExcerpt.class);
var information = factory.getProjectionInformation(CustomerExcerpt.class);
assertThat(information.isClosed()).isFalse();
}
@@ -76,10 +75,10 @@ class SpelAwareProxyProjectionFactoryUnitTests {
@Test // DATACMNS-820
void setsValueUsingProjection() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer);
var excerpt = factory.createProjection(CustomerExcerpt.class, customer);
excerpt.setFirstname("Carl");
assertThat(customer.firstname).isEqualTo("Carl");
@@ -88,10 +87,10 @@ class SpelAwareProxyProjectionFactoryUnitTests {
@Test // DATACMNS-820
void settingNotWriteablePropertyFails() {
Customer customer = new Customer();
var customer = new Customer();
customer.firstname = "Dave";
ProjectionWithNotWriteableProperty projection = factory.createProjection(ProjectionWithNotWriteableProperty.class,
var projection = factory.createProjection(ProjectionWithNotWriteableProperty.class,
customer);
assertThatExceptionOfType(NotWritablePropertyException.class).isThrownBy(() -> projection.setFirstName("Carl"));

View File

@@ -62,10 +62,10 @@ class SpelEvaluatingMethodInterceptorUnitTests {
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("invokeBean"));
DefaultListableBeanFactory factory = new DefaultListableBeanFactory();
var factory = new DefaultListableBeanFactory();
factory.registerSingleton("someBean", new SomeBean());
SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), factory,
var interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), factory,
parser, Projection.class);
assertThat(interceptor.invoke(invocation)).isEqualTo("value");
@@ -76,7 +76,7 @@ class SpelEvaluatingMethodInterceptorUnitTests {
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("getName"));
SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(),
var interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(),
new DefaultListableBeanFactory(), parser, Projection.class);
interceptor.invoke(invocation);
@@ -98,7 +98,7 @@ class SpelEvaluatingMethodInterceptorUnitTests {
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("propertyFromTarget"));
SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, map,
var interceptor = new SpelEvaluatingMethodInterceptor(delegate, map,
new DefaultListableBeanFactory(), parser, Projection.class);
assertThat(interceptor.invoke(invocation)).isEqualTo("Dave");
@@ -107,7 +107,7 @@ class SpelEvaluatingMethodInterceptorUnitTests {
@Test // DATACMNS-1150
void forwardsParameterIntoSpElExpressionEvaluation() throws Throwable {
DefaultListableBeanFactory factory = new DefaultListableBeanFactory();
var factory = new DefaultListableBeanFactory();
factory.registerSingleton("someBean", new SomeBean());
when(invocation.getMethod()).thenReturn(Projection.class.getMethod("invokeBeanWithParameter", Integer.class));

View File

@@ -42,8 +42,8 @@ public class QPageRequestUnitTests extends AbstractPageRequestUnitTests {
@Test
void constructsQPageRequestWithOrderSpecifiers() {
QUser user = QUser.user;
QPageRequest pageRequest = QPageRequest.of(0, 10, user.firstname.asc());
var user = QUser.user;
var pageRequest = QPageRequest.of(0, 10, user.firstname.asc());
assertThat(pageRequest.getSort()).isEqualTo(QSort.by(user.firstname.asc()));
}
@@ -51,8 +51,8 @@ public class QPageRequestUnitTests extends AbstractPageRequestUnitTests {
@Test
void constructsQPageRequestWithQSort() {
QUser user = QUser.user;
QPageRequest pageRequest = QPageRequest.ofSize(10).withSort(QSort.by(user.firstname.asc()));
var user = QUser.user;
var pageRequest = QPageRequest.ofSize(10).withSort(QSort.by(user.firstname.asc()));
assertThat(pageRequest.getSort()).isEqualTo(QSort.by(user.firstname.asc()));
}

View File

@@ -31,7 +31,6 @@ import org.springframework.data.domain.Sort.Order;
import com.querydsl.core.annotations.QueryInit;
import com.querydsl.core.types.OrderSpecifier;
import com.querydsl.core.types.dsl.PathBuilderFactory;
import com.querydsl.core.types.dsl.StringPath;
/**
* Unit tests for {@link QSort}.
@@ -50,8 +49,8 @@ class QSortUnitTests {
@Test // DATACMNS-402
void sortBySingleProperty() {
QUser user = QUser.user;
QSort qsort = new QSort(user.firstname.asc());
var user = QUser.user;
var qsort = new QSort(user.firstname.asc());
assertThat(qsort.getOrderSpecifiers()).hasSize(1);
assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc());
@@ -61,8 +60,8 @@ class QSortUnitTests {
@Test // DATACMNS-402
void sortByMultiplyProperties() {
QUser user = QUser.user;
QSort qsort = new QSort(user.firstname.asc(), user.lastname.desc());
var user = QUser.user;
var qsort = new QSort(user.firstname.asc(), user.lastname.desc());
assertThat(qsort.getOrderSpecifiers()).hasSize(2);
assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc());
@@ -74,8 +73,8 @@ class QSortUnitTests {
@Test // DATACMNS-402
void sortByMultiplyPropertiesWithAnd() {
QUser user = QUser.user;
QSort qsort = new QSort(user.firstname.asc()).and(new QSort(user.lastname.desc()));
var user = QUser.user;
var qsort = new QSort(user.firstname.asc()).and(new QSort(user.lastname.desc()));
assertThat(qsort.getOrderSpecifiers()).hasSize(2);
assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc());
@@ -87,8 +86,8 @@ class QSortUnitTests {
@Test // DATACMNS-402
void sortByMultiplyPropertiesWithAndAndVarArgs() {
QUser user = QUser.user;
QSort qsort = new QSort(user.firstname.asc()).and(user.lastname.desc());
var user = QUser.user;
var qsort = new QSort(user.firstname.asc()).and(user.lastname.desc());
assertThat(qsort.getOrderSpecifiers()).hasSize(2);
assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc());
@@ -100,8 +99,8 @@ class QSortUnitTests {
@Test // DATACMNS-402
void ensureInteroperabilityWithSort() {
QUser user = QUser.user;
QSort qsort = new QSort(user.firstname.asc(), user.lastname.desc());
var user = QUser.user;
var qsort = new QSort(user.firstname.asc(), user.lastname.desc());
Sort sort = qsort;
@@ -112,10 +111,10 @@ class QSortUnitTests {
@Test // DATACMNS-402
void concatenatesPlainSortCorrectly() {
QUser user = QUser.user;
QSort sort = new QSort(user.firstname.asc());
var user = QUser.user;
var sort = new QSort(user.firstname.asc());
Sort result = sort.and(Sort.by(Direction.ASC, "lastname"));
var result = sort.and(Sort.by(Direction.ASC, "lastname"));
assertThat(result).hasSize(2);
assertThat(result).contains(new Order(Direction.ASC, "lastname"), new Order(Direction.ASC, "firstname"));
}
@@ -123,10 +122,10 @@ class QSortUnitTests {
@Test // DATACMNS-566
void shouldSupportSortByOperatorExpressions() {
QUser user = QUser.user;
QSort sort = new QSort(user.dateOfBirth.yearMonth().asc());
var user = QUser.user;
var sort = new QSort(user.dateOfBirth.yearMonth().asc());
Sort result = sort.and(Sort.by(Direction.ASC, "lastname"));
var result = sort.and(Sort.by(Direction.ASC, "lastname"));
assertThat(result).hasSize(2);
assertThat(result).contains(new Order(Direction.ASC, "lastname"),
new Order(Direction.ASC, user.dateOfBirth.yearMonth().toString()));
@@ -135,7 +134,7 @@ class QSortUnitTests {
@Test // DATACMNS-621
void shouldCreateSortForNestedPathCorrectly() {
QSort sort = new QSort(userWrapper.user.firstname.asc());
var sort = new QSort(userWrapper.user.firstname.asc());
assertThat(sort).contains(new Order(Direction.ASC, "user.firstname"));
}
@@ -143,7 +142,7 @@ class QSortUnitTests {
@Test // DATACMNS-621
void shouldCreateSortForDeepNestedPathCorrectly() {
QSort sort = new QSort(wrapperForUserWrapper.wrapper.user.firstname.asc());
var sort = new QSort(wrapperForUserWrapper.wrapper.user.firstname.asc());
assertThat(sort).contains(new Order(Direction.ASC, "wrapper.user.firstname"));
}
@@ -151,7 +150,7 @@ class QSortUnitTests {
@Test // DATACMNS-621
void shouldCreateSortForReallyDeepNestedPathCorrectly() {
QSort sort = new QSort(wrapperToWrapWrapperForUserWrapper.wrapperForUserWrapper.wrapper.user.firstname.asc());
var sort = new QSort(wrapperToWrapWrapperForUserWrapper.wrapperForUserWrapper.wrapper.user.firstname.asc());
assertThat(sort).contains(new Order(Direction.ASC, "wrapperForUserWrapper.wrapper.user.firstname"));
}
@@ -159,9 +158,9 @@ class QSortUnitTests {
@Test // DATACMNS-755
void handlesPlainStringPathsCorrectly() {
StringPath path = new PathBuilderFactory().create(User.class).getString("firstname");
var path = new PathBuilderFactory().create(User.class).getString("firstname");
QSort sort = new QSort(new OrderSpecifier<>(com.querydsl.core.types.Order.ASC, path));
var sort = new QSort(new OrderSpecifier<>(com.querydsl.core.types.Order.ASC, path));
assertThat(sort).contains(new Order(Direction.ASC, "firstname"));
}

View File

@@ -54,7 +54,7 @@ class QuerydslRepositoryInvokerAdapterUnitTests {
@Test // DATACMNS-669
void forwardsFindAllToExecutorWithPredicate() {
Sort sort = Sort.by("firstname");
var sort = Sort.by("firstname");
adapter.invokeFindAll(sort);
verify(executor, times(1)).findAll(predicate, sort);
@@ -64,7 +64,7 @@ class QuerydslRepositoryInvokerAdapterUnitTests {
@Test // DATACMNS-669
void forwardsFindAllWithPageableToExecutorWithPredicate() {
PageRequest pageable = PageRequest.of(0, 10);
var pageable = PageRequest.of(0, 10);
adapter.invokeFindAll(pageable);
verify(executor, times(1)).findAll(predicate, pageable);

View File

@@ -32,9 +32,9 @@ class PropertyPathInformationUnitTests {
@Test // GH-2418
void shouldEqualsCorrectly() {
PropertyPathInformation information = PropertyPathInformation.of("address.description", User.class);
var information = PropertyPathInformation.of("address.description", User.class);
QuerydslPathInformation querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description);
var querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description);
assertThat(information).isEqualTo(querydslPathInformation);
assertThat(querydslPathInformation).isEqualTo(information);
@@ -43,9 +43,9 @@ class PropertyPathInformationUnitTests {
@Test // GH-2418
void shouldHashCodeCorrectly() {
PropertyPathInformation information = PropertyPathInformation.of("address.description", User.class);
var information = PropertyPathInformation.of("address.description", User.class);
QuerydslPathInformation querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description);
var querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description);
assertThat(information).hasSameHashCodeAs(querydslPathInformation);
assertThat(querydslPathInformation).hasSameHashCodeAs(information);

View File

@@ -60,15 +60,15 @@ class QuerydslBindingsFactoryUnitTests {
@SuppressWarnings({ "unchecked", "rawtypes" })
void createBindingsShouldHonorQuerydslBinderCustomizerHookWhenPresent() {
Repositories repositories = mock(Repositories.class);
var repositories = mock(Repositories.class);
when(repositories.hasRepositoryFor(User.class)).thenReturn(true);
when(repositories.getRepositoryFor(User.class)).thenReturn(Optional.of(new SampleRepo()));
QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
ReflectionTestUtils.setField(factory, "repositories", Optional.of(repositories));
QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE);
var bindings = factory.createBindingsFor(USER_TYPE);
Optional<MultiValueBinding<Path<Object>, Object>> binding = bindings
.getBindingForPath(PropertyPathInformation.of("firstname", User.class));
@@ -82,13 +82,13 @@ class QuerydslBindingsFactoryUnitTests {
@SuppressWarnings({ "unchecked", "rawtypes" })
void shouldReuseExistingQuerydslBinderCustomizer() {
AutowireCapableBeanFactory beanFactory = mock(AutowireCapableBeanFactory.class);
var beanFactory = mock(AutowireCapableBeanFactory.class);
when(beanFactory.getBean(SpecificBinding.class)).thenReturn(new SpecificBinding());
QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
ReflectionTestUtils.setField(factory, "beanFactory", Optional.of(beanFactory));
QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class);
var bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class);
Optional<MultiValueBinding<Path<Object>, Object>> binding = bindings
.getBindingForPath(PropertyPathInformation.of("firstname", User.class));
@@ -102,14 +102,14 @@ class QuerydslBindingsFactoryUnitTests {
@SuppressWarnings({ "unchecked", "rawtypes" })
void shouldApplyDefaultCustomizers() {
GenericApplicationContext context = new GenericApplicationContext();
var context = new GenericApplicationContext();
context.registerBean(DefaultCustomizer.class);
context.refresh();
QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE);
factory.setApplicationContext(context);
QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class);
var bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class);
Optional<MultiValueBinding<Path<Object>, Object>> binding = bindings
.getBindingForPath(PropertyPathInformation.of("inceptionYear", User.class));

View File

@@ -230,7 +230,7 @@ class QuerydslBindingsUnitTests {
bindings.bind(QUser.user.address.city).as("city").first(CONTAINS_BINDING);
PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
assertThat(path).isNotNull();
assertThat(bindings.isPathAvailable("city", User.class)).isTrue();
@@ -245,14 +245,14 @@ class QuerydslBindingsUnitTests {
bindings.including(QUser.user.address.city);
bindings.bind(QUser.user.address.city).as("city").first(CONTAINS_BINDING);
PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
assertThat(path).isNotNull();
assertThat(bindings.isPathAvailable("city", User.class)).isTrue();
assertThat(bindings.isPathAvailable("address.city", User.class)).isTrue();
PathInformation propertyPath = bindings.getPropertyPath("address.city", ClassTypeInformation.from(User.class));
var propertyPath = bindings.getPropertyPath("address.city", ClassTypeInformation.from(User.class));
assertThat(propertyPath).isNotNull();
assertAdapterWithTargetBinding(bindings.getBindingForPath(propertyPath), CONTAINS_BINDING);
@@ -263,7 +263,7 @@ class QuerydslBindingsUnitTests {
bindings.bind(QUser.user.address.city).as("city").withDefaultBinding();
PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class));
assertThat(path).isNotNull();
assertThat(bindings.getBindingForPath(path)).isNotPresent();

View File

@@ -19,13 +19,11 @@ import static org.assertj.core.api.Assertions.*;
import java.util.Arrays;
import java.util.Collections;
import java.util.Optional;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.data.querydsl.QUser;
import com.querydsl.core.types.Predicate;
import org.springframework.data.querydsl.QUser;
/**
* @author Christoph Strobl
@@ -44,7 +42,7 @@ class QuerydslDefaultBindingUnitTests {
@Test // DATACMNS-669
void shouldCreatePredicateCorrectlyWhenPropertyIsInRoot() {
Optional<Predicate> predicate = binding.bind(QUser.user.firstname, Collections.singleton("tam"));
var predicate = binding.bind(QUser.user.firstname, Collections.singleton("tam"));
assertThat(predicate).hasValue(QUser.user.firstname.eq("tam"));
}
@@ -52,7 +50,7 @@ class QuerydslDefaultBindingUnitTests {
@Test // DATACMNS-669
void shouldCreatePredicateCorrectlyWhenPropertyIsInNestedElement() {
Optional<Predicate> predicate = binding.bind(QUser.user.address.city, Collections.singleton("two rivers"));
var predicate = binding.bind(QUser.user.address.city, Collections.singleton("two rivers"));
assertThat(predicate).hasValueSatisfying(
it -> assertThat(it.toString()).isEqualTo(QUser.user.address.city.eq("two rivers").toString()));
@@ -61,7 +59,7 @@ class QuerydslDefaultBindingUnitTests {
@Test // DATACMNS-669
void shouldCreatePredicateWithContainingWhenPropertyIsCollectionLikeAndValueIsObject() {
Optional<Predicate> predicate = binding.bind(QUser.user.nickNames, Collections.singleton("dragon reborn"));
var predicate = binding.bind(QUser.user.nickNames, Collections.singleton("dragon reborn"));
assertThat(predicate).hasValue(QUser.user.nickNames.contains("dragon reborn"));
}
@@ -69,7 +67,7 @@ class QuerydslDefaultBindingUnitTests {
@Test // DATACMNS-669
void shouldCreatePredicateWithInWhenPropertyIsAnObjectAndValueIsACollection() {
Optional<Predicate> predicate = binding.bind(QUser.user.firstname, Arrays.asList("dragon reborn", "shadowkiller"));
var predicate = binding.bind(QUser.user.firstname, Arrays.asList("dragon reborn", "shadowkiller"));
assertThat(predicate).hasValue(QUser.user.firstname.in(Arrays.asList("dragon reborn", "shadowkiller")));
}
@@ -82,7 +80,7 @@ class QuerydslDefaultBindingUnitTests {
@Test // DATACMNS-1578
void shouldCreatePredicateWithIsNullWhenPropertyIsANestedObjectAndValueIsNull() {
Optional<Predicate> predicate = binding.bind(QUser.user.address.city, Collections.singleton(null));
var predicate = binding.bind(QUser.user.address.city, Collections.singleton(null));
assertThat(predicate).hasValueSatisfying(it -> {
assertThat(it.toString()).isEqualTo(QUser.user.address.city.isNull().toString());

View File

@@ -40,7 +40,6 @@ import org.springframework.util.MultiValueMap;
import com.querydsl.collections.CollQueryFactory;
import com.querydsl.core.types.Constant;
import com.querydsl.core.types.Predicate;
import com.querydsl.core.types.dsl.StringPath;
/**
@@ -90,7 +89,7 @@ class QuerydslPredicateBuilderUnitTests {
DEFAULT_BINDINGS.bind(QUser.user.description).first(CONTAINS_BINDING);
values.add("description", "Linz");
Predicate predicate = this.builder.getPredicate(ClassTypeInformation.from(User.class), values, DEFAULT_BINDINGS);
var predicate = this.builder.getPredicate(ClassTypeInformation.from(User.class), values, DEFAULT_BINDINGS);
assertThat(predicate).hasToString("contains(user.description,Linz)");
@@ -107,11 +106,11 @@ class QuerydslPredicateBuilderUnitTests {
values.add("firstname", "Oliver");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
assertThat(predicate).isEqualTo(QUser.user.firstname.eq("Oliver"));
List<User> result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults();
var result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults();
assertThat(result).containsExactly(Users.OLIVER);
}
@@ -124,11 +123,11 @@ class QuerydslPredicateBuilderUnitTests {
values.add("address.city", "Linz");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
assertThat(predicate).isEqualTo(QUser.user.address.city.eq("Linz"));
List<User> result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults();
var result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults();
assertThat(result).containsExactly(Users.CHRISTOPH);
}
@@ -139,7 +138,7 @@ class QuerydslPredicateBuilderUnitTests {
values.add("firstname", "rand");
values.add("lastname".toUpperCase(), "al'thor");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
assertThat(predicate).isEqualTo(QUser.user.firstname.eq("rand"));
}
@@ -149,7 +148,7 @@ class QuerydslPredicateBuilderUnitTests {
values.add("lastname", null);
QuerydslBindings bindings = new QuerydslBindings();
var bindings = new QuerydslBindings();
bindings.bind(QUser.user.lastname).firstOptional((path, value) -> value.map(path::contains));
builder.getPredicate(USER_TYPE, values, bindings);
@@ -161,9 +160,9 @@ class QuerydslPredicateBuilderUnitTests {
values.add("address.lonLat", "40.740337,-73.995146");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
Constant<Object> constant = (Constant<Object>) ((List<?>) getField(getField(predicate, "mixin"), "args")).get(1);
var constant = (Constant<Object>) ((List<?>) getField(getField(predicate, "mixin"), "args")).get(1);
assertThat(constant.getConstant()).isEqualTo(new Double[] { 40.740337D, -73.995146D });
}
@@ -174,9 +173,9 @@ class QuerydslPredicateBuilderUnitTests {
values.add("address.city", "rivers,two");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
Constant<Object> constant = (Constant<Object>) ((List<?>) getField(getField(predicate, "mixin"), "args")).get(1);
var constant = (Constant<Object>) ((List<?>) getField(getField(predicate, "mixin"), "args")).get(1);
assertThat(constant.getConstant()).isEqualTo("rivers,two");
}
@@ -186,7 +185,7 @@ class QuerydslPredicateBuilderUnitTests {
values.add("addresses.street", "VALUE");
Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS);
assertThat(predicate).isEqualTo(QUser.user.addresses.any().street.eq("VALUE"));
}
@@ -196,7 +195,7 @@ class QuerydslPredicateBuilderUnitTests {
values.add("specialProperty", "VALUE");
QuerydslBindings bindings = new QuerydslBindings();
var bindings = new QuerydslBindings();
bindings.bind(QUser.user.as(QSpecialUser.class).specialProperty)//
.first(QuerydslBindingsUnitTests.ContainsBinding.INSTANCE);
@@ -209,9 +208,9 @@ class QuerydslPredicateBuilderUnitTests {
values.add("user.specialProperty", "VALUE");
QUserWrapper wrapper = QUserWrapper.userWrapper;
var wrapper = QUserWrapper.userWrapper;
QuerydslBindings bindings = new QuerydslBindings();
var bindings = new QuerydslBindings();
bindings.bind(wrapper.user.as(QSpecialUser.class).specialProperty)//
.first(QuerydslBindingsUnitTests.ContainsBinding.INSTANCE);

View File

@@ -47,7 +47,7 @@ class CdiConfigurationIntegrationTests {
@Test // DATACMNS-1233
void shouldApplyImplementationPostfix() {
IsolatedComposedRepository repository = container.select(IsolatedComposedRepository.class).get();
var repository = container.select(IsolatedComposedRepository.class).get();
assertThat(repository.getPriority()).isEqualTo(42);
}

View File

@@ -27,7 +27,6 @@ import jakarta.inject.Named;
import java.io.Serializable;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import java.util.List;
import java.util.Optional;
import java.util.Set;
@@ -97,7 +96,7 @@ class CdiRepositoryBeanUnitTests {
@Test
void returnsBasicMetadata() {
DummyCdiRepositoryBean<SampleRepository> bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS, SampleRepository.class,
var bean = new DummyCdiRepositoryBean<SampleRepository>(NO_ANNOTATIONS, SampleRepository.class,
beanManager);
assertThat(bean.getBeanClass()).isEqualTo(SampleRepository.class);
@@ -108,10 +107,10 @@ class CdiRepositoryBeanUnitTests {
@Test
void returnsAllImplementedTypes() {
DummyCdiRepositoryBean<SampleRepository> bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS, SampleRepository.class,
var bean = new DummyCdiRepositoryBean<SampleRepository>(NO_ANNOTATIONS, SampleRepository.class,
beanManager);
Set<Type> types = bean.getTypes();
var types = bean.getTypes();
assertThat(types).containsExactlyInAnyOrder(SampleRepository.class, Repository.class);
}
@@ -119,7 +118,7 @@ class CdiRepositoryBeanUnitTests {
@SuppressWarnings("unchecked")
void detectsStereotypes() {
DummyCdiRepositoryBean<StereotypedSampleRepository> bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS,
var bean = new DummyCdiRepositoryBean<StereotypedSampleRepository>(NO_ANNOTATIONS,
StereotypedSampleRepository.class, beanManager);
assertThat(bean.getStereotypes()).containsExactly(StereotypeAnnotation.class);
@@ -146,9 +145,9 @@ class CdiRepositoryBeanUnitTests {
@Test // DATACMNS-764, DATACMNS-1754
void passesCorrectBeanNameToTheImplementationDetector() {
CustomRepositoryImplementationDetector detector = mock(CustomRepositoryImplementationDetector.class);
var detector = mock(CustomRepositoryImplementationDetector.class);
CdiRepositoryBean<SampleRepository> bean = new CdiRepositoryBean<SampleRepository>(SINGLE_ANNOTATION,
var bean = new CdiRepositoryBean<SampleRepository>(SINGLE_ANNOTATION,
SampleRepository.class, beanManager, Optional.of(detector)) {
@Override
@@ -160,12 +159,12 @@ class CdiRepositoryBeanUnitTests {
bean.create(mock(CreationalContext.class), SampleRepository.class);
ArgumentCaptor<ImplementationLookupConfiguration> captor = ArgumentCaptor
var captor = ArgumentCaptor
.forClass(ImplementationLookupConfiguration.class);
verify(detector, times(2)).detectCustomImplementation(captor.capture());
ImplementationLookupConfiguration configuration = captor.getAllValues().get(0);
var configuration = captor.getAllValues().get(0);
assertThat(configuration.getImplementationBeanName()).isEqualTo("cdiRepositoryBeanUnitTests.SampleRepositoryImpl");
assertThat(configuration.getImplementationClassName()).isEqualTo("SampleRepositoryImpl");
@@ -174,7 +173,7 @@ class CdiRepositoryBeanUnitTests {
@Test // DATACMNS-1233
void appliesRepositoryConfiguration() {
DummyCdiRepositoryBean<SampleRepository> bean = new DummyCdiRepositoryBean<SampleRepository>(NO_ANNOTATIONS,
var bean = new DummyCdiRepositoryBean<SampleRepository>(NO_ANNOTATIONS,
SampleRepository.class, beanManager) {
@Override
protected CdiRepositoryConfiguration lookupConfiguration(BeanManager beanManager, Set qualifiers) {

View File

@@ -31,7 +31,7 @@ abstract class CdiRepositoryExtensionSupportIntegrationTests {
assertThat(getBean(SampleRepository.class)).isNotNull();
RepositoryClient client = getBean(RepositoryClient.class);
var client = getBean(RepositoryClient.class);
assertThat(client.repository).isNotNull();
}
@@ -40,7 +40,7 @@ abstract class CdiRepositoryExtensionSupportIntegrationTests {
assertThat(getBean(AnotherRepository.class)).isNotNull();
RepositoryClient client = getBean(RepositoryClient.class);
var client = getBean(RepositoryClient.class);
assertThat(client.anotherRepository).isNotNull();
// this will always return 0 since it's a mock

View File

@@ -25,7 +25,6 @@ import java.lang.annotation.Annotation;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.HashMap;
import java.util.Map.Entry;
import java.util.Optional;
import java.util.Set;
@@ -49,9 +48,9 @@ public class DummyCdiExtension extends CdiRepositoryExtensionSupport {
afterBeanDiscovery.addContext(new MyCustomScope());
for (Entry<Class<?>, Set<Annotation>> type : getRepositoryTypes()) {
for (var type : getRepositoryTypes()) {
DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean(type.getValue(), type.getKey(), beanManager,
var bean = new DummyCdiRepositoryBean(type.getValue(), type.getKey(), beanManager,
Optional.of(getCustomImplementationDetector()));
registerBean(bean);
afterBeanDiscovery.addBean(bean);
@@ -76,7 +75,7 @@ public class DummyCdiExtension extends CdiRepositoryExtensionSupport {
@Override
protected T create(CreationalContext<T> creationalContext, Class<T> repositoryType) {
T mock = Mockito.mock(repositoryType);
var mock = Mockito.mock(repositoryType);
return create(() -> new DummyRepositoryFactory(mock), repositoryType);
}

View File

@@ -50,9 +50,9 @@ class RepositoryFragmentsIntegrationTests {
@Test // DATACMNS-1233
void shouldInvokeCustomImplementationLast() {
ComposedRepository repository = getBean(ComposedRepository.class);
ComposedRepositoryImpl customImplementation = getBean(ComposedRepositoryImpl.class);
AnotherFragmentInterfaceImpl shadowed = getBean(AnotherFragmentInterfaceImpl.class);
var repository = getBean(ComposedRepository.class);
var customImplementation = getBean(ComposedRepositoryImpl.class);
var shadowed = getBean(AnotherFragmentInterfaceImpl.class);
assertThat(repository.getShadowed()).isEqualTo(2);
assertThat(customImplementation.getShadowed()).isEqualTo(1);
@@ -62,9 +62,9 @@ class RepositoryFragmentsIntegrationTests {
@Test // DATACMNS-1233
void shouldRespectInterfaceOrder() {
ComposedRepository repository = getBean(ComposedRepository.class);
FragmentInterfaceImpl fragment = getBean(FragmentInterfaceImpl.class);
AnotherFragmentInterfaceImpl shadowed = getBean(AnotherFragmentInterfaceImpl.class);
var repository = getBean(ComposedRepository.class);
var fragment = getBean(FragmentInterfaceImpl.class);
var shadowed = getBean(AnotherFragmentInterfaceImpl.class);
assertThat(repository.getPriority()).isEqualTo(1);
assertThat(fragment.getPriority()).isEqualTo(1);
@@ -74,7 +74,7 @@ class RepositoryFragmentsIntegrationTests {
@Test // DATACMNS-1754
void shouldFindCustomImplementationForNestedRepository() {
NestedRepository repository = getBean(NestedRepository.class);
var repository = getBean(NestedRepository.class);
assertThat(repository.getCustom()).isEqualTo("CustomImpl");
}
@@ -82,8 +82,8 @@ class RepositoryFragmentsIntegrationTests {
@Test // DATACMNS-1754
void shouldFindImplementationForNestedRepositoryFragment() {
ComposedRepository repository = getBean(ComposedRepository.class);
RepositoryFragments.NestedFragmentInterfaceImpl fragment = getBean(
var repository = getBean(ComposedRepository.class);
var fragment = getBean(
RepositoryFragments.NestedFragmentInterfaceImpl.class);
assertThat(repository.getKey()).isEqualTo("NestedFragmentImpl");

View File

@@ -23,7 +23,7 @@ import java.lang.annotation.RetentionPolicy;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
import org.springframework.context.annotation.ComponentScan.Filter;
import org.springframework.context.annotation.Primary;
@@ -34,7 +34,6 @@ import org.springframework.core.io.ResourceLoader;
import org.springframework.core.type.AnnotationMetadata;
import org.springframework.core.type.StandardAnnotationMetadata;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.util.Streamable;
/**
* Unit tests for {@link AnnotationRepositoryConfigurationSource}.
@@ -72,7 +71,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests {
@Test // DATACMNS-47, DATACMNS-102
void evaluatesExcludeFiltersCorrectly() {
Streamable<BeanDefinition> candidates = source.getCandidates(new DefaultResourceLoader());
var candidates = source.getCandidates(new DefaultResourceLoader());
assertThat(candidates).extracting("beanClassName")
.contains(MyRepository.class.getName(), ComposedRepository.class.getName())
@@ -82,7 +81,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests {
@Test // DATACMNS-47
void defaultsToPackageOfAnnotatedClass() {
AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfiguration.class);
var source = getConfigSource(DefaultConfiguration.class);
Iterable<String> packages = source.getBasePackages();
assertThat(packages).contains(DefaultConfiguration.class.getPackage().getName());
@@ -92,7 +91,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests {
@Test // DATACMNS-47
void returnsConfiguredBasePackage() {
AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfigurationWithBasePackage.class);
var source = getConfigSource(DefaultConfigurationWithBasePackage.class);
assertThat(source.getBasePackages()).contains("foo");
}
@@ -100,7 +99,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests {
@Test // DATACMNS-90
void returnsConsiderNestedRepositories() {
AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfigurationWithNestedRepositories.class);
var source = getConfigSource(DefaultConfigurationWithNestedRepositories.class);
assertThat(source.shouldConsiderNestedRepositories()).isTrue();
}
@@ -114,7 +113,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests {
@Test // DATACMNS-502
void returnsEmptyStringForBasePackage() throws Exception {
StandardAnnotationMetadata metadata = new StandardAnnotationMetadata(
var metadata = new StandardAnnotationMetadata(
getClass().getClassLoader().loadClass("TypeInDefaultPackage"), true);
RepositoryConfigurationSource configurationSource = new AnnotationRepositoryConfigurationSource(metadata,
EnableRepositories.class, resourceLoader, environment, registry);

View File

@@ -19,12 +19,10 @@ import static org.assertj.core.api.Assertions.*;
import static org.mockito.ArgumentMatchers.*;
import static org.mockito.Mockito.*;
import java.util.Optional;
import org.junit.jupiter.api.Test;
import org.mockito.Answers;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.beans.factory.support.AbstractBeanDefinition;
import org.springframework.core.env.Environment;
import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.ResourceLoader;
@@ -60,12 +58,12 @@ class CustomRepositoryImplementationDetectorUnitTests {
@Test // DATACMNS-764, DATACMNS-1371
void returnsNullWhenNoImplementationFound() {
RepositoryConfiguration mock = mock(RepositoryConfiguration.class);
var mock = mock(RepositoryConfiguration.class);
ImplementationLookupConfiguration lookup = configuration
var lookup = configuration
.forRepositoryConfiguration(configFor(NoImplementationRepository.class));
Optional<AbstractBeanDefinition> beanDefinition = detector.detectCustomImplementation(lookup);
var beanDefinition = detector.detectCustomImplementation(lookup);
assertThat(beanDefinition).isEmpty();
}
@@ -73,10 +71,10 @@ class CustomRepositoryImplementationDetectorUnitTests {
@Test // DATACMNS-764, DATACMNS-1371
void returnsBeanDefinitionWhenOneImplementationIsFound() {
ImplementationLookupConfiguration lookup = configuration
var lookup = configuration
.forRepositoryConfiguration(configFor(SingleSampleRepository.class));
Optional<AbstractBeanDefinition> beanDefinition = detector.detectCustomImplementation(lookup);
var beanDefinition = detector.detectCustomImplementation(lookup);
assertThat(beanDefinition).hasValueSatisfying(
it -> assertThat(it.getBeanClassName()).isEqualTo(SingleSampleRepositoryTestImpl.class.getName()));
@@ -88,12 +86,12 @@ class CustomRepositoryImplementationDetectorUnitTests {
when(configuration.generateBeanName(any())).then(it -> {
BeanDefinition definition = it.getArgument(0);
String className = definition.getBeanClassName();
var className = definition.getBeanClassName();
return className.contains("$First$") ? "canonicalSampleRepositoryTestImpl" : "otherBeanName";
});
ImplementationLookupConfiguration lookup = configuration
var lookup = configuration
.forRepositoryConfiguration(configFor(CanonicalSampleRepository.class));
assertThat(detector.detectCustomImplementation(lookup)) //
@@ -106,7 +104,7 @@ class CustomRepositoryImplementationDetectorUnitTests {
assertThatIllegalStateException().isThrownBy(() -> {
ImplementationLookupConfiguration lookup = mock(ImplementationLookupConfiguration.class);
var lookup = mock(ImplementationLookupConfiguration.class);
when(lookup.hasMatchingBeanName(any())).thenReturn(true);
when(lookup.matches(any())).thenReturn(true);

View File

@@ -31,7 +31,7 @@ class DefaultImplementationLookupConfigurationUnitTests {
@Test // DATACMNS-1439
void shouldConsiderBeanNameDecapitalization() {
ImplementationDetectionConfiguration idcMock = mock(ImplementationDetectionConfiguration.class);
var idcMock = mock(ImplementationDetectionConfiguration.class);
when(idcMock.getImplementationPostfix()).thenReturn("Impl");
assertThat(getImplementationBeanName(idcMock, "com.acme.UDPRepository")).isEqualTo("UDPRepositoryImpl");
@@ -41,10 +41,10 @@ class DefaultImplementationLookupConfigurationUnitTests {
@Test // DATACMNS-1754
void shouldUseSimpleClassNameWhenDefiningImplementationNames() {
ImplementationDetectionConfiguration idcMock = mock(ImplementationDetectionConfiguration.class);
var idcMock = mock(ImplementationDetectionConfiguration.class);
when(idcMock.getImplementationPostfix()).thenReturn("Impl");
DefaultImplementationLookupConfiguration lookupConfiguration = new DefaultImplementationLookupConfiguration(idcMock,
var lookupConfiguration = new DefaultImplementationLookupConfiguration(idcMock,
"com.acme.Repositories$NestedRepository");
assertThat(lookupConfiguration.getImplementationBeanName()).isEqualTo("repositories.NestedRepositoryImpl");
assertThat(lookupConfiguration.getImplementationClassName()).isEqualTo("NestedRepositoryImpl");
@@ -52,7 +52,7 @@ class DefaultImplementationLookupConfigurationUnitTests {
private static String getImplementationBeanName(ImplementationDetectionConfiguration idcMock, String interfaceName) {
DefaultImplementationLookupConfiguration configuration = new DefaultImplementationLookupConfiguration(idcMock,
var configuration = new DefaultImplementationLookupConfiguration(idcMock,
interfaceName);
return configuration.getImplementationBeanName();
}

View File

@@ -86,7 +86,7 @@ class DefaultRepositoryConfigurationUnitTests {
private DefaultRepositoryConfiguration<RepositoryConfigurationSource> getConfiguration(
RepositoryConfigurationSource source, String repositoryInterfaceName) {
RootBeanDefinition beanDefinition = createBeanDefinition(repositoryInterfaceName);
var beanDefinition = createBeanDefinition(repositoryInterfaceName);
return new DefaultRepositoryConfiguration<>(source, beanDefinition, extension);
}
@@ -98,9 +98,9 @@ class DefaultRepositoryConfigurationUnitTests {
private static RootBeanDefinition createBeanDefinition(String repositoryInterfaceName) {
RootBeanDefinition beanDefinition = new RootBeanDefinition(repositoryInterfaceName);
var beanDefinition = new RootBeanDefinition(repositoryInterfaceName);
ConstructorArgumentValues constructorArgumentValues = new ConstructorArgumentValues();
var constructorArgumentValues = new ConstructorArgumentValues();
constructorArgumentValues.addGenericArgumentValue(MyRepository.class);
beanDefinition.setConstructorArgumentValues(constructorArgumentValues);

View File

@@ -41,7 +41,7 @@ class ImplementationDetectionConfigurationUnitTests {
private static String getBeanName(String className) {
MockImplementationDetectionConfiguration configuration = new MockImplementationDetectionConfiguration();
var configuration = new MockImplementationDetectionConfiguration();
return configuration.generateBeanName(BeanDefinitionBuilder.rootBeanDefinition(className).getBeanDefinition());
}

View File

@@ -35,7 +35,7 @@ class PrimaryRepositoryIntegrationTests {
@Test // DATACMNS-1591
void returnsPrimaryInstance() {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(Config.class);
var context = new AnnotationConfigApplicationContext(Config.class);
// Two beans available but FirstRepository is the primary one
assertThatCode(() -> context.getBean(FirstRepository.class)).doesNotThrowAnyException();

View File

@@ -21,7 +21,6 @@ import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.config.BeanDefinition;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@@ -80,7 +79,7 @@ class RepositoryBeanDefinitionRegistrarSupportIntegrationTests {
@Test // DATACMNS-47
void beanDefinitionSourceIsSetForJavaConfigScannedBeans() {
BeanDefinition definition = context.getBeanDefinition("myRepository");
var definition = context.getBeanDefinition("myRepository");
assertThat(definition.getSource()).isNotNull();
}
@@ -97,7 +96,7 @@ class RepositoryBeanDefinitionRegistrarSupportIntegrationTests {
@Test // DATACMNS-1620
void registeredBeanDefinitionsContainHumanReadableResourceDescription() {
BeanDefinition definition = context.getBeanDefinition("myRepository");
var definition = context.getBeanDefinition("myRepository");
assertThat(definition.getResourceDescription()) //
.contains(MyRepository.class.getName()) //

Some files were not shown because too many files have changed in this diff Show More