From a351a66fcbcb8f4fd683007a0044d2b37e8d3a59 Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Tue, 29 Oct 2024 09:02:37 +0100 Subject: [PATCH] Polishing. Using records in tests. Removing "public" modifier in tests. See #1924 --- ...epositoryIdGenerationIntegrationTests.java | 138 ++++-------------- 1 file changed, 28 insertions(+), 110 deletions(-) diff --git a/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/JdbcRepositoryIdGenerationIntegrationTests.java b/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/JdbcRepositoryIdGenerationIntegrationTests.java index 58c99b91ae7..726aa4bb013 100644 --- a/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/JdbcRepositoryIdGenerationIntegrationTests.java +++ b/spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/JdbcRepositoryIdGenerationIntegrationTests.java @@ -17,6 +17,7 @@ import static org.assertj.core.api.Assertions.*; +import java.util.List; import java.util.Objects; import java.util.concurrent.atomic.AtomicLong; @@ -35,6 +36,7 @@ import org.springframework.data.relational.core.mapping.NamingStrategy; import org.springframework.data.relational.core.mapping.event.BeforeConvertCallback; import org.springframework.data.repository.CrudRepository; +import org.springframework.data.repository.ListCrudRepository; import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; /** @@ -44,29 +46,29 @@ * @author Greg Turnquist */ @IntegrationTest -public class JdbcRepositoryIdGenerationIntegrationTests { +class JdbcRepositoryIdGenerationIntegrationTests { @Autowired NamedParameterJdbcTemplate template; - @Autowired ReadOnlyIdEntityRepository readOnlyIdrepository; + @Autowired ReadOnlyIdEntityRepository readOnlyIdRepository; @Autowired PrimitiveIdEntityRepository primitiveIdRepository; @Autowired ImmutableWithManualIdEntityRepository immutableWithManualIdEntityRepository; @Test // DATAJDBC-98 - public void idWithoutSetterGetsSet() { + void idWithoutSetterGetsSet() { - ReadOnlyIdEntity entity = readOnlyIdrepository.save(new ReadOnlyIdEntity(null, "Entity Name")); + ReadOnlyIdEntity entity = readOnlyIdRepository.save(new ReadOnlyIdEntity(null, "Entity Name")); - assertThat(entity.getId()).isNotNull(); + assertThat(entity.id()).isNotNull(); - assertThat(readOnlyIdrepository.findById(entity.getId())).hasValueSatisfying(it -> { + assertThat(readOnlyIdRepository.findById(entity.id())).hasValueSatisfying(it -> { - assertThat(it.getId()).isEqualTo(entity.getId()); - assertThat(it.getName()).isEqualTo(entity.getName()); + assertThat(it.id()).isEqualTo(entity.id()); + assertThat(it.name()).isEqualTo(entity.name()); }); } @Test // DATAJDBC-98 - public void primitiveIdGetsSet() { + void primitiveIdGetsSet() { PrimitiveIdEntity entity = new PrimitiveIdEntity(); entity.setName("Entity Name"); @@ -83,68 +85,23 @@ public void primitiveIdGetsSet() { } @Test // DATAJDBC-393 - public void manuallyGeneratedId() { + void manuallyGeneratedId() { ImmutableWithManualIdEntity entity = new ImmutableWithManualIdEntity(null, "immutable"); ImmutableWithManualIdEntity saved = immutableWithManualIdEntityRepository.save(entity); - assertThat(saved.getId()).isNotNull(); + assertThat(saved.id()).isNotNull(); assertThat(immutableWithManualIdEntityRepository.findAll()).hasSize(1); } - private interface PrimitiveIdEntityRepository extends CrudRepository {} + private interface PrimitiveIdEntityRepository extends ListCrudRepository {} - public interface ReadOnlyIdEntityRepository extends CrudRepository {} + private interface ReadOnlyIdEntityRepository extends ListCrudRepository {} - private interface ImmutableWithManualIdEntityRepository extends CrudRepository {} + private interface ImmutableWithManualIdEntityRepository extends ListCrudRepository {} - static final class ReadOnlyIdEntity { - - @Id private final Long id; - private final String name; - - public ReadOnlyIdEntity(Long id, String name) { - this.id = id; - this.name = name; - } - - public Long getId() { - return this.id; - } - - public String getName() { - return this.name; - } - - public boolean equals(final Object o) { - if (o == this) - return true; - if (!(o instanceof final ReadOnlyIdEntity other)) - return false; - final Object this$id = this.getId(); - final Object other$id = other.getId(); - if (!Objects.equals(this$id, other$id)) - return false; - final Object this$name = this.getName(); - final Object other$name = other.getName(); - return Objects.equals(this$name, other$name); - } - - public int hashCode() { - final int PRIME = 59; - int result = 1; - final Object $id = this.getId(); - result = result * PRIME + ($id == null ? 43 : $id.hashCode()); - final Object $name = this.getName(); - result = result * PRIME + ($name == null ? 43 : $name.hashCode()); - return result; - } - - public String toString() { - return "JdbcRepositoryIdGenerationIntegrationTests.ReadOnlyIdEntity(id=" + this.getId() + ", name=" - + this.getName() + ")"; - } + record ReadOnlyIdEntity(@Id Long id, String name) { } static class PrimitiveIdEntity { @@ -169,61 +126,22 @@ public void setName(String name) { } } - static final class ImmutableWithManualIdEntity { - @Id private final Long id; - private final String name; + record ImmutableWithManualIdEntity(@Id Long id, String name) { - public ImmutableWithManualIdEntity(Long id, String name) { - this.id = id; - this.name = name; - } - - public Long getId() { - return this.id; - } - - public String getName() { - return this.name; - } + @Override + public Long id() { + return this.id; + } - public boolean equals(final Object o) { - if (o == this) - return true; - if (!(o instanceof final ImmutableWithManualIdEntity other)) - return false; - final Object this$id = this.getId(); - final Object other$id = other.getId(); - if (!Objects.equals(this$id, other$id)) - return false; - final Object this$name = this.getName(); - final Object other$name = other.getName(); - return Objects.equals(this$name, other$name); - } + public ImmutableWithManualIdEntity withId(Long id) { + return this.id == id ? this : new ImmutableWithManualIdEntity(id, this.name); + } - public int hashCode() { - final int PRIME = 59; - int result = 1; - final Object $id = this.getId(); - result = result * PRIME + ($id == null ? 43 : $id.hashCode()); - final Object $name = this.getName(); - result = result * PRIME + ($name == null ? 43 : $name.hashCode()); - return result; + public ImmutableWithManualIdEntity withName(String name) { + return this.name == name ? this : new ImmutableWithManualIdEntity(this.id, name); + } } - public String toString() { - return "JdbcRepositoryIdGenerationIntegrationTests.ImmutableWithManualIdEntity(id=" + this.getId() + ", name=" - + this.getName() + ")"; - } - - public ImmutableWithManualIdEntity withId(Long id) { - return this.id == id ? this : new ImmutableWithManualIdEntity(id, this.name); - } - - public ImmutableWithManualIdEntity withName(String name) { - return this.name == name ? this : new ImmutableWithManualIdEntity(this.id, name); - } - } - @Configuration @EnableJdbcRepositories(considerNestedRepositories = true, includeFilters = @ComponentScan.Filter(value = CrudRepository.class, type = FilterType.ASSIGNABLE_TYPE))