diff --git a/README.md b/README.md index 1f96ca8..b0d9482 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ import org.springframework.data.jpa.domain.Specification; public class GuitarPedalSpecifications { public Specification pedalsNotSoldWithValueGreaterThan(final Integer usedValue) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .where().isNull(GuitarPedal_.dateSold) .and().isGreaterThan(GuitarPedal_.usedValue, usedValue) .toSpecification(); diff --git a/src/main/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilder.java b/src/main/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilder.java index 70fc920..0828f49 100644 --- a/src/main/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilder.java +++ b/src/main/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilder.java @@ -24,7 +24,12 @@ public SpecificationBuilder() { // no-op } + @Deprecated public static SpecificationBuilder withRoot(final Class root) { + return from(root); + } + + public static SpecificationBuilder from(final Class root) { Objects.requireNonNull(root, "Argument 'root' cannot be null."); return new SpecificationBuilder<>(); } diff --git a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderIntegrationTest.java b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderIntegrationTest.java index a7edd07..53b85d1 100644 --- a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderIntegrationTest.java +++ b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderIntegrationTest.java @@ -270,8 +270,8 @@ void andWhere() { @Test void where_withSpecification() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) - .where(SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) + .where(SpecificationBuilder.from(GuitarPedal.class) .where().isNull(GuitarPedal_.dateSold) .toSpecification()) .and().isLike(GuitarPedal_.name, "%and%") @@ -285,9 +285,9 @@ void where_withSpecification() { @Test void and_withSpecification() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .where().isLike(GuitarPedal_.name, "%and%") - .and(SpecificationBuilder.withRoot(GuitarPedal.class) + .and(SpecificationBuilder.from(GuitarPedal.class) .where().isNull(GuitarPedal_.dateSold) .toSpecification()) .toSpecification(), Sort.by("name")); @@ -300,9 +300,9 @@ void and_withSpecification() { @Test void or_withSpecification() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .where().isEqualTo(GuitarPedal_.id, 2L) - .or(SpecificationBuilder.withRoot(GuitarPedal.class) + .or(SpecificationBuilder.from(GuitarPedal.class) .where().isEqualTo(GuitarPedal_.id, 3L) .toSpecification()) .toSpecification(), Sort.by("name")); @@ -316,7 +316,7 @@ void or_withSpecification() { @Test void isEqualTo() { var optionalPedal = guitarPedalRepository.findOne( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isEqualTo(GuitarPedal_.id, 3L) .toSpecification()); assertTrue(optionalPedal.isPresent()); @@ -327,7 +327,7 @@ void isEqualTo() { @Test void isNotEqualTo() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isNotEqualTo(GuitarPedal_.id, 3L) .toSpecification()); assertEquals(3, pedals.size()); @@ -340,7 +340,7 @@ void isNotEqualTo() { @Test void isLike() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isLike(GuitarPedal_.name, "%and%") .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); @@ -351,7 +351,7 @@ void isLike() { @Test void isNotLike() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isNotLike(GuitarPedal_.name, "%and%") .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); @@ -361,7 +361,7 @@ void isNotLike() { @Test void isEqualToOrLike() { - var pedals = guitarPedalRepository.findAll(SpecificationBuilder.withRoot(GuitarPedal.class) + var pedals = guitarPedalRepository.findAll(SpecificationBuilder.from(GuitarPedal.class) .isEqualToOrLike(GuitarPedal_.name, "Deco%") .toSpecification(), Sort.by("name")); assertEquals(1, pedals.size()); @@ -371,7 +371,7 @@ void isEqualToOrLike() { @Test void isNull() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isNull(GuitarPedal_.dateSold) .toSpecification(), Sort.by("name")); assertEquals(3, pedals.size()); @@ -386,7 +386,7 @@ void isNull() { @Test void isNotNull() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isNotNull(GuitarPedal_.dateSold) .toSpecification(), Sort.by("name")); assertEquals(1, pedals.size()); @@ -397,7 +397,7 @@ void isNotNull() { @Test void isTrue() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isTrue(GuitarPedal_.hasStereoOutput) .toSpecification(), Sort.by("name")); assertEquals(1, pedals.size()); @@ -409,7 +409,7 @@ void isTrue() { @Test void isFalse() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isFalse(GuitarPedal_.hasStereoOutput) .toSpecification(), Sort.by("name")); assertEquals(3, pedals.size()); @@ -424,7 +424,7 @@ void isFalse() { @Test void isGreaterThan() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isGreaterThan(GuitarPedal_.usedValue, 200) .toSpecification(), Sort.by("name")); assertEquals(1, pedals.size()); @@ -435,7 +435,7 @@ void isGreaterThan() { @Test void isGreaterThanOrEqualTo() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isGreaterThanOrEqualTo(GuitarPedal_.usedValue, 200) .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); @@ -448,7 +448,7 @@ void isGreaterThanOrEqualTo() { @Test void isLessThan() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isLessThan(GuitarPedal_.usedValue, 150) .toSpecification(), Sort.by("name")); assertEquals(1, pedals.size()); @@ -459,7 +459,7 @@ void isLessThan() { @Test void isLessThanOrEqualTo() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isLessThanOrEqualTo(GuitarPedal_.usedValue, 150) .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); @@ -472,7 +472,7 @@ void isLessThanOrEqualTo() { @Test void isBetween() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isBetween( GuitarPedal_.datePurchased, LocalDate.of(2021, 7, 19), @@ -488,7 +488,7 @@ void isBetween() { @Test void isIn_collection() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, List.of(2L, 3L)) .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); @@ -501,7 +501,7 @@ void isIn_collection() { @Test void isIn_array() { var pedals = guitarPedalRepository.findAll( - SpecificationBuilder.withRoot(GuitarPedal.class) + SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, 2L, 3L) .toSpecification(), Sort.by("name")); assertEquals(2, pedals.size()); diff --git a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderTest.java b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderTest.java index acc9312..6cffab5 100644 --- a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderTest.java +++ b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/SpecificationBuilderTest.java @@ -18,6 +18,7 @@ class SpecificationBuilderTest { @Test + @Deprecated void withRoot_returnsNewInstance() { var builder = SpecificationBuilder.withRoot(GuitarPedal.class); assertNotNull(builder); @@ -25,6 +26,7 @@ void withRoot_returnsNewInstance() { } @Test + @Deprecated void withRoot_throwsException_whenArgumentIsNull() { assertThrows( NullPointerException.class, @@ -32,29 +34,44 @@ void withRoot_throwsException_whenArgumentIsNull() { ); } + @Test + void from_returnsNewInstance() { + var builder = SpecificationBuilder.from(GuitarPedal.class); + assertNotNull(builder); + assertNull(builder.toSpecification()); + } + + @Test + void from_throwsException_whenArgumentIsNull() { + assertThrows( + NullPointerException.class, + () -> SpecificationBuilder.from(null) + ); + } + @Test void toSpecification_returnsSpecification_ifAnyDefined() { - assertNotNull(SpecificationBuilder.withRoot(GuitarPedal.class) + assertNotNull(SpecificationBuilder.from(GuitarPedal.class) .where().isEqualTo(GuitarPedal_.id, 0L) .toSpecification()); } @Test void toSpecification_returnsNull_whenNoSpecificationsDefined() { - assertNull(SpecificationBuilder.withRoot(GuitarPedal.class) + assertNull(SpecificationBuilder.from(GuitarPedal.class) .toSpecification()); } @Test void where_returnsBuilder() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .where(); assertNotNull(builder); } @Test void where_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .where(new SpecificationFactory().ghost()); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -64,21 +81,21 @@ void where_returnsBuilderWithSpecification() { void where_throwsException_whenArgumentIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .where(null) ); } @Test void and_returnsBuilder() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .and(); assertNotNull(builder); } @Test void and_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .and(new SpecificationFactory().ghost()); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -88,14 +105,14 @@ void and_returnsBuilderWithSpecification() { void and_throwsException_whenArgumentIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .and(null) ); } @Test void or_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .or(new SpecificationFactory().ghost()); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -105,7 +122,7 @@ void or_returnsBuilderWithSpecification() { void or_throwsException_whenArgumentIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .or(null) ); } @@ -614,7 +631,7 @@ void withFetch_list_throwsException_whenAttributeIsNull() { @Test void isEqualTo_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isEqualTo(GuitarPedal_.id, 0L); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -622,7 +639,7 @@ void isEqualTo_returnsBuilderWithSpecification() { @Test void isEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isEqualTo(GuitarPedal_.id, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -632,14 +649,14 @@ void isEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isEqualTo_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isEqualTo(null, 0L) ); } @Test void isNotEqualTo_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNotEqualTo(GuitarPedal_.id, 0L); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -647,7 +664,7 @@ void isNotEqualTo_returnsBuilderWithSpecification() { @Test void isNotEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNotEqualTo(GuitarPedal_.id, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -657,14 +674,14 @@ void isNotEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isNotEqualTo_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isNotEqualTo(null, 0L) ); } @Test void isLike_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLike(GuitarPedal_.name, "%test%"); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -672,7 +689,7 @@ void isLike_returnsBuilderWithSpecification() { @Test void isLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLike(GuitarPedal_.name, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -682,14 +699,14 @@ void isLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isLike_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isLike(null, "%test%") ); } @Test void isNotLike_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNotLike(GuitarPedal_.name, "%test%"); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -697,7 +714,7 @@ void isNotLike_returnsBuilderWithSpecification() { @Test void isNotLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNotLike(GuitarPedal_.name, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -707,14 +724,14 @@ void isNotLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isNotLike_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isNotLike(null, "%test%") ); } @Test void isEqualToOrLike_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isEqualToOrLike(GuitarPedal_.name, "%test%"); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -722,7 +739,7 @@ void isEqualToOrLike_returnsBuilderWithSpecification() { @Test void isEqualsOrLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isEqualToOrLike(GuitarPedal_.name, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -732,14 +749,14 @@ void isEqualsOrLike_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isEqualToOrLike_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isEqualToOrLike(null, "%test%") ); } @Test void isIsTrue_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isTrue(GuitarPedal_.hasStereoOutput); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -749,14 +766,14 @@ void isIsTrue_returnsBuilderWithSpecification() { void isIsTrue_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isTrue(null) ); } @Test void isIsFalse_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isFalse(GuitarPedal_.hasStereoOutput); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -766,14 +783,14 @@ void isIsFalse_returnsBuilderWithSpecification() { void isIsFalse_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isFalse(null) ); } @Test void isIsNull_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNull(GuitarPedal_.dateSold); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -783,14 +800,14 @@ void isIsNull_returnsBuilderWithSpecification() { void isIsNull_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isNull(null) ); } @Test void isIsNotNull_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isNotNull(GuitarPedal_.dateSold); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -800,14 +817,14 @@ void isIsNotNull_returnsBuilderWithSpecification() { void isIsNotNull_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isNotNull(null) ); } @Test void isGreaterThan_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isGreaterThan(GuitarPedal_.usedValue, 0); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -815,7 +832,7 @@ void isGreaterThan_returnsBuilderWithSpecification() { @Test void isGreaterThan_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isGreaterThan(GuitarPedal_.usedValue, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -825,14 +842,14 @@ void isGreaterThan_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isGreaterThan_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isGreaterThan(null, 0) ); } @Test void isGreaterThanOrEqualTo_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isGreaterThanOrEqualTo(GuitarPedal_.usedValue, 0); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -840,7 +857,7 @@ void isGreaterThanOrEqualTo_returnsBuilderWithSpecification() { @Test void isGreaterThanOrEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isGreaterThanOrEqualTo(GuitarPedal_.usedValue, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -850,14 +867,14 @@ void isGreaterThanOrEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull( void isGreaterThanOrEqualTo_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isGreaterThanOrEqualTo(null, 0) ); } @Test void isLessThan_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLessThan(GuitarPedal_.usedValue, 0); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -865,7 +882,7 @@ void isLessThan_returnsBuilderWithSpecification() { @Test void isLessThan_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLessThan(GuitarPedal_.usedValue, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -875,14 +892,14 @@ void isLessThan_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isLessThan_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isLessThan(null, 0) ); } @Test void isLessThanOrEqualTo_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLessThanOrEqualTo(GuitarPedal_.usedValue, 0); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -890,7 +907,7 @@ void isLessThanOrEqualTo_returnsBuilderWithSpecification() { @Test void isLessThanOrEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isLessThanOrEqualTo(GuitarPedal_.usedValue, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -900,14 +917,14 @@ void isLessThanOrEqualTo_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isLessThanOrEqualTo_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isLessThanOrEqualTo(null, 0) ); } @Test void isBetween_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isBetween( GuitarPedal_.datePurchased, LocalDate.now(), @@ -919,17 +936,17 @@ void isBetween_returnsBuilderWithSpecification() { @Test void isBetween_returnsBuilderWithSpecification_evenWhenEitherValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isBetween(GuitarPedal_.usedValue, null, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); - builder = SpecificationBuilder.withRoot(GuitarPedal.class) + builder = SpecificationBuilder.from(GuitarPedal.class) .isBetween(GuitarPedal_.usedValue, 0, null); assertNotNull(builder); assertNotNull(builder.toSpecification()); - builder = SpecificationBuilder.withRoot(GuitarPedal.class) + builder = SpecificationBuilder.from(GuitarPedal.class) .isBetween(GuitarPedal_.usedValue, null, 9); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -939,14 +956,14 @@ void isBetween_returnsBuilderWithSpecification_evenWhenEitherValueIsNull() { void isBetween_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isBetween(null, 0L, 9L) ); } @Test void isIn_collection_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, List.of(1L, 2L, 3L)); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -954,7 +971,7 @@ void isIn_collection_returnsBuilderWithSpecification() { @Test void isIn_collection_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, (Collection) null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -964,14 +981,14 @@ void isIn_collection_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isIn_collection_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isIn(null, List.of(1L, 2L, 3L)) ); } @Test void isIn_array_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, 1L, 2L, 3L); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -979,7 +996,7 @@ void isIn_array_returnsBuilderWithSpecification() { @Test void isIn_array_returnsBuilderWithSpecification_evenWhenValueIsNull() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .isIn(GuitarPedal_.id, (Object) null); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -989,14 +1006,14 @@ void isIn_array_returnsBuilderWithSpecification_evenWhenValueIsNull() { void isIn_array_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .isIn(null, 1L, 2L, 3L) ); } @Test void fetch_singular_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -1006,14 +1023,14 @@ void fetch_singular_returnsBuilderWithSpecification() { void fetch_singular_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .fetch((SingularAttribute) null) ); } @Test void fetch_list_returnsBuilderWithSpecification() { - var builder = SpecificationBuilder.withRoot(GuitarPedal.class) + var builder = SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.tags); assertNotNull(builder); assertNotNull(builder.toSpecification()); @@ -1023,7 +1040,7 @@ void fetch_list_returnsBuilderWithSpecification() { void fetch_list_throwsException_whenAttributeIsNull() { assertThrows( NullPointerException.class, - () -> SpecificationBuilder.withRoot(GuitarPedal.class) + () -> SpecificationBuilder.from(GuitarPedal.class) .fetch((ListAttribute) null) ); } diff --git a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/application/data/guitarpedals/specifications/GuitarPedalSpecifications.java b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/application/data/guitarpedals/specifications/GuitarPedalSpecifications.java index 85ea963..63d3b6a 100644 --- a/src/test/java/io/github/quinnandrews/spring/data/specification/builder/application/data/guitarpedals/specifications/GuitarPedalSpecifications.java +++ b/src/test/java/io/github/quinnandrews/spring/data/specification/builder/application/data/guitarpedals/specifications/GuitarPedalSpecifications.java @@ -263,7 +263,7 @@ public Specification search_example_06(final Integer usedValueGreat The next set of examples goes into the details of fetching and utilizing associations. */ public Specification search_example_07(final Integer usedValueGreaterThan) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .where().isNull(GuitarPedal_.dateSold) .and().isGreaterThan(GuitarPedal_.usedValue, usedValueGreaterThan) .toSpecification(); @@ -346,7 +346,7 @@ All we need to do is call fetch() on the SpecificationBuilder (or fetch() on the The next example, Fetch Example #2, begins looking at how to do that. */ public Specification fetch_example_01() { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .toSpecification(); } @@ -407,7 +407,7 @@ may get unexpected results (see Fetch Example #7). associated Collections of Entities. */ public Specification fetch_example_02(final String name) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .where( (root, query, builder) -> { @@ -442,7 +442,7 @@ the where() method to filter by a property belonging to Entity of the In the next example, Fetch Example #4, we'll clean this up a bit. */ public Specification fetch_example_03(final Collection tags) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .fetch(GuitarPedal_.tags) .where( @@ -474,7 +474,7 @@ called, which simply returns a Specification whose toPredicate() method (the lam Let's look at the next example, Fetch Example #5, and see what NOT to do. */ public Specification fetch_example_04(final Collection tags) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .fetch(GuitarPedal_.tags) .where(tagsContain(tags)) @@ -514,7 +514,7 @@ public Specification tagsContain(final Collection tags) { */ public Specification fetch_example_05(final Long id, final Collection tags) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .fetch(GuitarPedal_.tags) .where( @@ -561,7 +561,7 @@ the same Join, only two joins will be rendered in the SQL query (again, one for */ public Specification fetch_example_06(final Long id, final Collection tags) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .fetch(GuitarPedal_.tags) .where( @@ -654,7 +654,7 @@ When we use fetch() to eagerly fetch an associated Collections, most of the time @SuppressWarnings("unchecked") public Specification fetch_example_07(final Long id, final Collection tags) { - return SpecificationBuilder.withRoot(GuitarPedal.class) + return SpecificationBuilder.from(GuitarPedal.class) .fetch(GuitarPedal_.manufacturer) .where( (root, query, builder) -> {