From 0d2979a8832acbc2188913ae4081daf8e0fe4047 Mon Sep 17 00:00:00 2001
From: thunderhook <8238759+thunderhook@users.noreply.github.com>
Date: Fri, 1 Mar 2024 23:58:13 +0100
Subject: [PATCH 1/2] #3524 provide tests with delomboked classes annotated
with lomboks @SuperBuilder annotation
---
.../ap/test/lombok/package-info.java | 9 +
.../lombok/superbuilder/AbstractVehicle.java | 63 +++++++
.../superbuilder/AbstractVehicleDto.java | 20 +++
.../ap/test/lombok/superbuilder/Car.java | 82 +++++++++
.../ap/test/lombok/superbuilder/CarDto.java | 21 +++
.../test/lombok/superbuilder/CarMapper.java | 43 +++++
.../superbuilder/ChainedAccessorsCar.java | 118 +++++++++++++
.../superbuilder/ChainedAccessorsVehicle.java | 133 +++++++++++++++
.../superbuilder/InheritedAbstractCar.java | 70 ++++++++
.../superbuilder/InheritedAbstractCarDto.java | 21 +++
.../superbuilder/LombokSuperBuilderTest.java | 160 ++++++++++++++++++
.../test/lombok/superbuilder/MuscleCar.java | 68 ++++++++
.../lombok/superbuilder/MuscleCarDto.java | 21 +++
.../test/lombok/superbuilder/Passenger.java | 66 ++++++++
.../lombok/superbuilder/PassengerDto.java | 20 +++
.../ap/test/lombok/superbuilder/Vehicle.java | 66 ++++++++
.../test/lombok/superbuilder/VehicleDto.java | 25 +++
17 files changed, 1006 insertions(+)
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
new file mode 100644
index 0000000000..85b2352c01
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
@@ -0,0 +1,9 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+/**
+ * This package contains tests with delomboked classes.
+ */
+package org.mapstruct.ap.test.lombok;
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java
new file mode 100644
index 0000000000..2139d9ffb6
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of an abstract super class using a lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public abstract class AbstractVehicle {
+ * private final int amountOfTires;
+ * }
+ *
+ */
+public abstract class AbstractVehicle {
+
+ private final int amountOfTires;
+ private final Passenger passenger;
+
+ protected AbstractVehicle(AbstractVehicleBuilder, ?> b) {
+ this.amountOfTires = b.amountOfTires;
+ this.passenger = b.passenger;
+ }
+
+ public int getAmountOfTires() {
+ return this.amountOfTires;
+ }
+
+ public Passenger getPassenger() {
+ return this.passenger;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class AbstractVehicleBuilder> {
+ // CHECKSTYLE:ON
+ private int amountOfTires;
+ private Passenger passenger;
+
+ public B amountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return self();
+ }
+
+ public B passenger(Passenger passenger) {
+ this.passenger = passenger;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "AbstractVehicle.AbstractVehicleBuilder(amountOfTires=" + this.amountOfTires + ", passenger=" +
+ this.passenger + ")";
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java
new file mode 100644
index 0000000000..c9c4375591
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java
@@ -0,0 +1,20 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public abstract class AbstractVehicleDto {
+
+ private final int amountOfTires;
+
+ public AbstractVehicleDto(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ }
+
+ public int getAmountOfTires() {
+ return amountOfTires;
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java
new file mode 100644
index 0000000000..e57f700777
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a class inheriting a non-abstract super class
+ * via lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public class Car extends Vehicle {
+ * private final String manufacturer;
+ * private final Passenger passenger;
+ * }
+ *
+ */
+public class Car extends Vehicle {
+
+ private final String manufacturer;
+ private final Passenger passenger;
+
+ protected Car(CarBuilder, ?> b) {
+ super( b );
+ this.manufacturer = b.manufacturer;
+ this.passenger = b.passenger;
+ }
+
+ public static CarBuilder, ?> builder() {
+ return new CarBuilderImpl();
+ }
+
+ public String getManufacturer() {
+ return this.manufacturer;
+ }
+
+ public Passenger getPassenger() {
+ return this.passenger;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class CarBuilder> extends VehicleBuilder {
+ // CHECKSTYLE:ON
+ private String manufacturer;
+ private Passenger passenger;
+
+ public B manufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return self();
+ }
+
+ public B passenger(Passenger passenger) {
+ this.passenger = passenger;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "Car.CarBuilder(super=" + super.toString() + ", manufacturer=" + this.manufacturer + ", passenger=" +
+ this.passenger + ")";
+ }
+ }
+
+ private static final class CarBuilderImpl extends CarBuilder {
+ private CarBuilderImpl() {
+ }
+
+ protected CarBuilderImpl self() {
+ return this;
+ }
+
+ public Car build() {
+ return new Car( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java
new file mode 100644
index 0000000000..f6c072804b
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java
@@ -0,0 +1,21 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public class CarDto extends VehicleDto {
+
+ private final String manufacturer;
+
+ public CarDto(int amountOfTires, String manufacturer, PassengerDto passenger) {
+ super( amountOfTires, passenger );
+ this.manufacturer = manufacturer;
+ }
+
+ public String getManufacturer() {
+ return manufacturer;
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java
new file mode 100644
index 0000000000..2baf879eb7
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+import org.mapstruct.InheritInverseConfiguration;
+import org.mapstruct.Mapper;
+import org.mapstruct.Mapping;
+import org.mapstruct.factory.Mappers;
+
+@Mapper
+public interface CarMapper {
+
+ CarMapper INSTANCE = Mappers.getMapper( CarMapper.class );
+
+ @Mapping(target = "amountOfTires", source = "tireCount")
+ Car carDtoToCar(CarDto source);
+
+ @InheritInverseConfiguration(name = "carDtoToCar")
+ CarDto carToCarDto(Car source);
+
+ @Mapping(target = "amountOfTires", source = "tireCount")
+ ChainedAccessorsCar carDtoToChainedAccessorsCar(CarDto source);
+
+ @InheritInverseConfiguration(name = "carDtoToChainedAccessorsCar")
+ CarDto chainedAccessorsCarToCarDto(ChainedAccessorsCar source);
+
+ @Mapping(target = "amountOfTires", source = "tireCount")
+ InheritedAbstractCar carDtoToInheritedAbstractCar(CarDto source);
+
+ @InheritInverseConfiguration(name = "carDtoToInheritedAbstractCar")
+ CarDto inheritedAbstractCarToCarDto(InheritedAbstractCar source);
+
+ @Mapping(target = "amountOfTires", source = "tireCount")
+ @Mapping(target = "horsePower", constant = "140.5f")
+ MuscleCar carDtoToMuscleCar(CarDto source);
+
+ @InheritInverseConfiguration(name = "carDtoToMuscleCar")
+ CarDto muscleCarToCarDto(MuscleCar source);
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
new file mode 100644
index 0000000000..85d7f5ff5d
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a class inheriting a non-abstract super class
+ * via lombok.experimental.SuperBuilder.
+ *
+ *
+ * @EqualsAndHashCode(callSuper = true)
+ * @Data
+ * @SuperBuilder
+ * @Accessors(chain = true)
+ * public class ChainedAccessorsCar extends Vehicle {
+ * private String manufacturer;
+ * }
+ *
+ */
+public class ChainedAccessorsCar extends ChainedAccessorsVehicle {
+
+ private String manufacturer;
+
+ protected ChainedAccessorsCar(ChainedAccessorsCarBuilder, ?> b) {
+ super( b );
+ this.manufacturer = b.manufacturer;
+ }
+
+ public static ChainedAccessorsCarBuilder, ?> builder() {
+ return new ChainedAccessorsCarBuilderImpl();
+ }
+
+ public String getManufacturer() {
+ return this.manufacturer;
+ }
+
+ public ChainedAccessorsCar setManufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return this;
+ }
+
+ public String toString() {
+ return "ChainedAccessorsCar(manufacturer=" + this.getManufacturer() + ")";
+ }
+
+ public boolean equals(final Object o) {
+ if ( o == this ) {
+ return true;
+ }
+ if ( !( o instanceof ChainedAccessorsCar ) ) {
+ return false;
+ }
+ final ChainedAccessorsCar other = (ChainedAccessorsCar) o;
+ if ( !other.canEqual( (Object) this ) ) {
+ return false;
+ }
+ if ( !super.equals( o ) ) {
+ return false;
+ }
+ // CHECKSTYLE:OFF
+ final Object this$manufacturer = this.getManufacturer();
+ final Object other$manufacturer = other.getManufacturer();
+ if ( this$manufacturer == null ? other$manufacturer != null :
+ !this$manufacturer.equals( other$manufacturer ) ) {
+ return false;
+ }
+ // CHECKSTYLE:ON
+ return true;
+ }
+
+ protected boolean canEqual(final Object other) {
+ return other instanceof ChainedAccessorsCar;
+ }
+
+ // CHECKSTYLE:OFF
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = super.hashCode();
+ final Object $manufacturer = this.getManufacturer();
+ result = result * PRIME + ( $manufacturer == null ? 43 : $manufacturer.hashCode() );
+ return result;
+ }
+
+ public static abstract class ChainedAccessorsCarBuilder> extends ChainedAccessorsVehicleBuilder {
+ // CHECKSTYLE:ON
+ private String manufacturer;
+
+ public B manufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "ChainedAccessorsCar.ChainedAccessorsCarBuilder(super=" + super.toString() + ", manufacturer=" +
+ this.manufacturer + ")";
+ }
+ }
+
+ private static final class ChainedAccessorsCarBuilderImpl
+ extends ChainedAccessorsCarBuilder {
+ private ChainedAccessorsCarBuilderImpl() {
+ }
+
+ protected ChainedAccessorsCarBuilderImpl self() {
+ return this;
+ }
+
+ public ChainedAccessorsCar build() {
+ return new ChainedAccessorsCar( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
new file mode 100644
index 0000000000..885fa84c2b
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
@@ -0,0 +1,133 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a non-abstract super class using a lombok.experimental.SuperBuilder.
+ *
+ *
+ * @Data
+ * @SuperBuilder
+ * @Accessors(chain = true)
+ * @NoArgsConstructor
+ * @AllArgsConstructor
+ * public class ChainedAccessors {
+ * private int amountOfTires;
+ * private Passenger passenger;
+ * }
+ *
+ */
+public class ChainedAccessorsVehicle {
+ private int amountOfTires;
+ private Passenger passenger;
+
+ protected ChainedAccessorsVehicle(ChainedAccessorsVehicleBuilder, ?> b) {
+ this.amountOfTires = b.amountOfTires;
+ this.passenger = b.passenger;
+ }
+
+ public static ChainedAccessorsVehicleBuilder, ?> builder() {
+ return new ChainedAccessorsVehicleBuilderImpl();
+ }
+
+ public int getAmountOfTires() {
+ return this.amountOfTires;
+ }
+
+ public Passenger getPassenger() {
+ return this.passenger;
+ }
+
+ public ChainedAccessorsVehicle setAmountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return this;
+ }
+
+ public ChainedAccessorsVehicle setPassenger(Passenger passenger) {
+ this.passenger = passenger;
+ return this;
+ }
+
+ // CHECKSTYLE:OFF
+ public boolean equals(final Object o) {
+ if ( o == this ) {
+ return true;
+ }
+ if ( !( o instanceof ChainedAccessorsVehicle ) ) {
+ return false;
+ }
+ final ChainedAccessorsVehicle other = (ChainedAccessorsVehicle) o;
+ if ( !other.canEqual( (Object) this ) ) {
+ return false;
+ }
+ if ( this.getAmountOfTires() != other.getAmountOfTires() ) {
+ return false;
+ }
+ final Object this$passenger = this.getPassenger();
+ final Object other$passenger = other.getPassenger();
+ if ( this$passenger == null ? other$passenger != null : !this$passenger.equals( other$passenger ) ) {
+ return false;
+ }
+ return true;
+ }
+
+ protected boolean canEqual(final Object other) {
+ return other instanceof ChainedAccessorsVehicle;
+ }
+
+ public int hashCode() {
+ final int PRIME = 59;
+ int result = 1;
+ result = result * PRIME + this.getAmountOfTires();
+ final Object $passenger = this.getPassenger();
+ result = result * PRIME + ( $passenger == null ? 43 : $passenger.hashCode() );
+ return result;
+ }
+
+ public String toString() {
+ return "ChainedAccessorsVehicle(amountOfTires=" + this.getAmountOfTires() + ", passenger=" +
+ this.getPassenger() + ")";
+ }
+
+ public static abstract class ChainedAccessorsVehicleBuilder> {
+ // CHECKSTYLE:ON
+ private int amountOfTires;
+ private Passenger passenger;
+
+ public B amountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return self();
+ }
+
+ public B passenger(Passenger passenger) {
+ this.passenger = passenger;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "ChainedAccessorsVehicle.ChainedAccessorsVehicleBuilder(amountOfTires=" + this.amountOfTires +
+ ", passenger=" + this.passenger + ")";
+ }
+ }
+
+ private static final class ChainedAccessorsVehicleBuilderImpl
+ extends ChainedAccessorsVehicleBuilder {
+ private ChainedAccessorsVehicleBuilderImpl() {
+ }
+
+ protected ChainedAccessorsVehicleBuilderImpl self() {
+ return this;
+ }
+
+ public ChainedAccessorsVehicle build() {
+ return new ChainedAccessorsVehicle( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java
new file mode 100644
index 0000000000..beb9cb0129
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java
@@ -0,0 +1,70 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a class inheriting an abstract super class via lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public class InheritedAbstractCar extends AbstractVehicle {
+ * private final String manufacturer;
+ * }
+ *
+ */
+public class InheritedAbstractCar extends AbstractVehicle {
+
+ private final String manufacturer;
+
+ protected InheritedAbstractCar(InheritedAbstractCarBuilder, ?> b) {
+ super( b );
+ this.manufacturer = b.manufacturer;
+ }
+
+ public static InheritedAbstractCarBuilder, ?> builder() {
+ return new InheritedAbstractCarBuilderImpl();
+ }
+
+ public String getManufacturer() {
+ return this.manufacturer;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class InheritedAbstractCarBuilder>
+ // CHECKSTYLE:ON
+ extends AbstractVehicleBuilder {
+ private String manufacturer;
+
+ public B manufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "InheritedAbstractCar.InheritedAbstractCarBuilder(super=" + super.toString() + ", manufacturer=" +
+ this.manufacturer + ")";
+ }
+ }
+
+ private static final class InheritedAbstractCarBuilderImpl
+ extends InheritedAbstractCarBuilder {
+ private InheritedAbstractCarBuilderImpl() {
+ }
+
+ protected InheritedAbstractCarBuilderImpl self() {
+ return this;
+ }
+
+ public InheritedAbstractCar build() {
+ return new InheritedAbstractCar( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java
new file mode 100644
index 0000000000..7a0b6510c7
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java
@@ -0,0 +1,21 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public class InheritedAbstractCarDto extends AbstractVehicleDto {
+
+ private final String manufacturer;
+
+ public InheritedAbstractCarDto(int amountOfTires, String manufacturer) {
+ super( amountOfTires );
+ this.manufacturer = manufacturer;
+ }
+
+ public String getManufacturer() {
+ return manufacturer;
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java
new file mode 100644
index 0000000000..d8a2ddc550
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java
@@ -0,0 +1,160 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+import org.mapstruct.ap.testutil.IssueKey;
+import org.mapstruct.ap.testutil.ProcessorTest;
+import org.mapstruct.ap.testutil.WithClasses;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+/**
+ * Tests the mapping of models annotated with @SuperBuilder as source and target.
+ *
+ * @author Oliver Erhart
+ */
+@WithClasses({
+ AbstractVehicleDto.class,
+ CarDto.class,
+ InheritedAbstractCarDto.class,
+ MuscleCarDto.class,
+ PassengerDto.class,
+ VehicleDto.class,
+ AbstractVehicle.class,
+ Car.class,
+ ChainedAccessorsCar.class,
+ ChainedAccessorsVehicle.class,
+ InheritedAbstractCar.class,
+ MuscleCar.class,
+ Passenger.class,
+ Vehicle.class,
+ CarMapper.class
+})
+@IssueKey("3524")
+public class LombokSuperBuilderTest {
+
+ @ProcessorTest
+ public void simpleMapping() {
+
+ PassengerDto passenger = new PassengerDto( "Tom" );
+ CarDto carDto = new CarDto( 4, "BMW", passenger );
+
+ Car car = CarMapper.INSTANCE.carDtoToCar( carDto );
+
+ assertThat( car.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( car.getAmountOfTires() ).isEqualTo( 4 );
+ assertThat( car.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void simpleMappingInverse() {
+
+ Passenger passenger = Passenger.builder().name( "Tom" ).build();
+ Car car = Car.builder()
+ .manufacturer( "BMW" )
+ .amountOfTires( 4 )
+ .passenger( passenger )
+ .build();
+
+ CarDto carDto = CarMapper.INSTANCE.carToCarDto( car );
+
+ assertThat( carDto.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( carDto.getTireCount() ).isEqualTo( 4 );
+ assertThat( carDto.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void chainedMapping() {
+
+ PassengerDto passenger = new PassengerDto( "Tom" );
+ CarDto carDto = new CarDto( 4, "BMW", passenger );
+
+ ChainedAccessorsCar car = CarMapper.INSTANCE.carDtoToChainedAccessorsCar( carDto );
+
+ assertThat( car.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( car.getAmountOfTires() ).isEqualTo( 4 );
+ assertThat( car.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void chainedMappingInverse() {
+
+ Passenger passenger = Passenger.builder().name( "Tom" ).build();
+ ChainedAccessorsCar chainedAccessorsCar = ChainedAccessorsCar.builder()
+ .manufacturer( "BMW" )
+ .amountOfTires( 4 )
+ .passenger( passenger )
+ .build();
+
+ CarDto carDto = CarMapper.INSTANCE.chainedAccessorsCarToCarDto( chainedAccessorsCar );
+
+ assertThat( carDto.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( carDto.getTireCount() ).isEqualTo( 4 );
+ assertThat( carDto.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void inheritedAbstractMapping() {
+
+ PassengerDto passenger = new PassengerDto( "Tom" );
+ CarDto carDto = new CarDto( 4, "BMW", passenger );
+
+ InheritedAbstractCar car = CarMapper.INSTANCE.carDtoToInheritedAbstractCar( carDto );
+
+ assertThat( car.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( car.getAmountOfTires() ).isEqualTo( 4 );
+ assertThat( car.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void inheritedAbstractMappingInverse() {
+
+ Passenger passenger = Passenger.builder().name( "Tom" ).build();
+ InheritedAbstractCar inheritedAbstractCar = InheritedAbstractCar.builder()
+ .manufacturer( "BMW" )
+ .amountOfTires( 4 )
+ .passenger( passenger )
+ .build();
+
+ CarDto carDto = CarMapper.INSTANCE.inheritedAbstractCarToCarDto( inheritedAbstractCar );
+
+ assertThat( carDto.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( carDto.getTireCount() ).isEqualTo( 4 );
+ assertThat( carDto.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void secondLevelMapping() {
+
+ PassengerDto passenger = new PassengerDto( "Tom" );
+ CarDto carDto = new CarDto( 4, "BMW", passenger );
+
+ MuscleCar car = CarMapper.INSTANCE.carDtoToMuscleCar( carDto );
+
+ assertThat( car.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( car.getAmountOfTires() ).isEqualTo( 4 );
+ assertThat( car.getHorsePower() ).isEqualTo( 140.5f );
+ assertThat( car.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+ @ProcessorTest
+ public void secondLevelMappingInverse() {
+
+ Passenger passenger = Passenger.builder().name( "Tom" ).build();
+ MuscleCar muscleCar = MuscleCar.builder()
+ .manufacturer( "BMW" )
+ .amountOfTires( 4 )
+ .passenger( passenger )
+ .build();
+
+ CarDto carDto = CarMapper.INSTANCE.muscleCarToCarDto( muscleCar );
+
+ assertThat( carDto.getManufacturer() ).isEqualTo( "BMW" );
+ assertThat( carDto.getTireCount() ).isEqualTo( 4 );
+ assertThat( carDto.getPassenger().getName() ).isEqualTo( "Tom" );
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java
new file mode 100644
index 0000000000..79a900f289
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a class inheriting an intermediate super class
+ * via lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public class MuscleCar extends Car {
+ * private final float horsePower;
+ * }
+ *
+ */
+public class MuscleCar extends Car {
+
+ private final float horsePower;
+
+ protected MuscleCar(MuscleCarBuilder, ?> b) {
+ super( b );
+ this.horsePower = b.horsePower;
+ }
+
+ public static MuscleCarBuilder, ?> builder() {
+ return new MuscleCarBuilderImpl();
+ }
+
+ public float getHorsePower() {
+ return this.horsePower;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class MuscleCarBuilder> extends CarBuilder {
+ // CHECKSTYLE:ON
+ private float horsePower;
+
+ public B horsePower(float horsePower) {
+ this.horsePower = horsePower;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "MuscleCar.MuscleCarBuilder(super=" + super.toString() + ", horsePower=" + this.horsePower + ")";
+ }
+ }
+
+ private static final class MuscleCarBuilderImpl extends MuscleCarBuilder {
+ private MuscleCarBuilderImpl() {
+ }
+
+ protected MuscleCarBuilderImpl self() {
+ return this;
+ }
+
+ public MuscleCar build() {
+ return new MuscleCar( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java
new file mode 100644
index 0000000000..41578d97b7
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java
@@ -0,0 +1,21 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public class MuscleCarDto extends CarDto {
+
+ private final float horsePower;
+
+ public MuscleCarDto(int amountOfTires, String manufacturer, PassengerDto passenger, float horsePower) {
+ super( amountOfTires, manufacturer, passenger );
+ this.horsePower = horsePower;
+ }
+
+ public float getHorsePower() {
+ return horsePower;
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java
new file mode 100644
index 0000000000..56b92239b9
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a class without inheritance using a lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public class Passenger {
+ * private final String name;
+ * }
+ *
+ */
+public class Passenger {
+
+ private final String name;
+
+ protected Passenger(PassengerBuilder, ?> b) {
+ this.name = b.name;
+ }
+
+ public static PassengerBuilder, ?> builder() {
+ return new PassengerBuilderImpl();
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class PassengerBuilder> {
+ // CHECKSTYLE:ON
+ private String name;
+
+ public B name(String name) {
+ this.name = name;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "Passenger.PassengerBuilder(name=" + this.name + ")";
+ }
+ }
+
+ private static final class PassengerBuilderImpl extends PassengerBuilder {
+ private PassengerBuilderImpl() {
+ }
+
+ protected PassengerBuilderImpl self() {
+ return this;
+ }
+
+ public Passenger build() {
+ return new Passenger( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java
new file mode 100644
index 0000000000..d7720bc298
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java
@@ -0,0 +1,20 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public class PassengerDto {
+
+ private final String name;
+
+ public PassengerDto(String name) {
+ this.name = name;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java
new file mode 100644
index 0000000000..9e166218a3
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+/**
+ * Delomboked version of a non-abstract super class using a lombok.experimental.SuperBuilder.
+ *
+ *
+ * @SuperBuilder
+ * @Getter
+ * public class Vehicle {
+ * private final int amountOfTires;
+ * }
+ *
+ */
+public class Vehicle {
+
+ private final int amountOfTires;
+
+ protected Vehicle(VehicleBuilder, ?> b) {
+ this.amountOfTires = b.amountOfTires;
+ }
+
+ public static VehicleBuilder, ?> builder() {
+ return new VehicleBuilderImpl();
+ }
+
+ public int getAmountOfTires() {
+ return this.amountOfTires;
+ }
+
+ // CHECKSTYLE:OFF
+ public static abstract class VehicleBuilder> {
+ // CHECKSTYLE:ON
+ private int amountOfTires;
+
+ public B amountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+
+ public String toString() {
+ return "Vehicle.VehicleBuilder(amountOfTires=" + this.amountOfTires + ")";
+ }
+ }
+
+ private static final class VehicleBuilderImpl extends VehicleBuilder {
+ private VehicleBuilderImpl() {
+ }
+
+ protected VehicleBuilderImpl self() {
+ return this;
+ }
+
+ public Vehicle build() {
+ return new Vehicle( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java
new file mode 100644
index 0000000000..e4ada7485b
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java
@@ -0,0 +1,25 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.lombok.superbuilder;
+
+public class VehicleDto {
+
+ private final int tireCount;
+ private final PassengerDto passenger;
+
+ public VehicleDto(int tireCount, PassengerDto passenger) {
+ this.tireCount = tireCount;
+ this.passenger = passenger;
+ }
+
+ public int getTireCount() {
+ return tireCount;
+ }
+
+ public PassengerDto getPassenger() {
+ return passenger;
+ }
+}
From 43a5856c5044da1c27104f56260b5f989aebcd53 Mon Sep 17 00:00:00 2001
From: thunderhook <8238759+thunderhook@users.noreply.github.com>
Date: Sun, 3 Mar 2024 20:42:24 +0100
Subject: [PATCH 2/2] #5324 remove any traces from Lombok
---
.../ap/test/lombok/package-info.java | 9 --
.../superbuilder/ChainedAccessorsCar.java | 118 ----------------
.../superbuilder/ChainedAccessorsVehicle.java | 133 ------------------
.../superbuilder/AbstractVehicle.java | 25 +---
.../superbuilder/AbstractVehicleDto.java | 2 +-
.../test/{lombok => }/superbuilder/Car.java | 25 +---
.../{lombok => }/superbuilder/CarDto.java | 2 +-
.../{lombok => }/superbuilder/CarMapper.java | 2 +-
.../superbuilder/ChainedAccessorsCar.java | 58 ++++++++
.../superbuilder/ChainedAccessorsVehicle.java | 72 ++++++++++
.../superbuilder/InheritedAbstractCar.java | 24 +---
.../superbuilder/InheritedAbstractCarDto.java | 2 +-
.../{lombok => }/superbuilder/MuscleCar.java | 24 +---
.../superbuilder/MuscleCarDto.java | 2 +-
.../{lombok => }/superbuilder/Passenger.java | 22 +--
.../superbuilder/PassengerDto.java | 2 +-
.../SuperBuilderTest.java} | 4 +-
.../{lombok => }/superbuilder/Vehicle.java | 22 +--
.../{lombok => }/superbuilder/VehicleDto.java | 2 +-
19 files changed, 160 insertions(+), 390 deletions(-)
delete mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
delete mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
delete mode 100644 processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/AbstractVehicle.java (63%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/AbstractVehicleDto.java (88%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/Car.java (67%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/CarDto.java (90%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/CarMapper.java (96%)
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsCar.java
create mode 100644 processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsVehicle.java
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/InheritedAbstractCar.java (64%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/InheritedAbstractCarDto.java (90%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/MuscleCar.java (62%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/MuscleCarDto.java (90%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/Passenger.java (66%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/PassengerDto.java (87%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok/superbuilder/LombokSuperBuilderTest.java => superbuilder/SuperBuilderTest.java} (98%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/Vehicle.java (67%)
rename processor/src/test/java/org/mapstruct/ap/test/{lombok => }/superbuilder/VehicleDto.java (91%)
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
deleted file mode 100644
index 85b2352c01..0000000000
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/package-info.java
+++ /dev/null
@@ -1,9 +0,0 @@
-/*
- * Copyright MapStruct Authors.
- *
- * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
- */
-/**
- * This package contains tests with delomboked classes.
- */
-package org.mapstruct.ap.test.lombok;
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
deleted file mode 100644
index 85d7f5ff5d..0000000000
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsCar.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright MapStruct Authors.
- *
- * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
- */
-package org.mapstruct.ap.test.lombok.superbuilder;
-
-/**
- * Delomboked version of a class inheriting a non-abstract super class
- * via lombok.experimental.SuperBuilder.
- *
- *
- * @EqualsAndHashCode(callSuper = true)
- * @Data
- * @SuperBuilder
- * @Accessors(chain = true)
- * public class ChainedAccessorsCar extends Vehicle {
- * private String manufacturer;
- * }
- *
- */
-public class ChainedAccessorsCar extends ChainedAccessorsVehicle {
-
- private String manufacturer;
-
- protected ChainedAccessorsCar(ChainedAccessorsCarBuilder, ?> b) {
- super( b );
- this.manufacturer = b.manufacturer;
- }
-
- public static ChainedAccessorsCarBuilder, ?> builder() {
- return new ChainedAccessorsCarBuilderImpl();
- }
-
- public String getManufacturer() {
- return this.manufacturer;
- }
-
- public ChainedAccessorsCar setManufacturer(String manufacturer) {
- this.manufacturer = manufacturer;
- return this;
- }
-
- public String toString() {
- return "ChainedAccessorsCar(manufacturer=" + this.getManufacturer() + ")";
- }
-
- public boolean equals(final Object o) {
- if ( o == this ) {
- return true;
- }
- if ( !( o instanceof ChainedAccessorsCar ) ) {
- return false;
- }
- final ChainedAccessorsCar other = (ChainedAccessorsCar) o;
- if ( !other.canEqual( (Object) this ) ) {
- return false;
- }
- if ( !super.equals( o ) ) {
- return false;
- }
- // CHECKSTYLE:OFF
- final Object this$manufacturer = this.getManufacturer();
- final Object other$manufacturer = other.getManufacturer();
- if ( this$manufacturer == null ? other$manufacturer != null :
- !this$manufacturer.equals( other$manufacturer ) ) {
- return false;
- }
- // CHECKSTYLE:ON
- return true;
- }
-
- protected boolean canEqual(final Object other) {
- return other instanceof ChainedAccessorsCar;
- }
-
- // CHECKSTYLE:OFF
- public int hashCode() {
- final int PRIME = 59;
- int result = super.hashCode();
- final Object $manufacturer = this.getManufacturer();
- result = result * PRIME + ( $manufacturer == null ? 43 : $manufacturer.hashCode() );
- return result;
- }
-
- public static abstract class ChainedAccessorsCarBuilder> extends ChainedAccessorsVehicleBuilder {
- // CHECKSTYLE:ON
- private String manufacturer;
-
- public B manufacturer(String manufacturer) {
- this.manufacturer = manufacturer;
- return self();
- }
-
- protected abstract B self();
-
- public abstract C build();
-
- public String toString() {
- return "ChainedAccessorsCar.ChainedAccessorsCarBuilder(super=" + super.toString() + ", manufacturer=" +
- this.manufacturer + ")";
- }
- }
-
- private static final class ChainedAccessorsCarBuilderImpl
- extends ChainedAccessorsCarBuilder {
- private ChainedAccessorsCarBuilderImpl() {
- }
-
- protected ChainedAccessorsCarBuilderImpl self() {
- return this;
- }
-
- public ChainedAccessorsCar build() {
- return new ChainedAccessorsCar( this );
- }
- }
-}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java b/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
deleted file mode 100644
index 885fa84c2b..0000000000
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/ChainedAccessorsVehicle.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Copyright MapStruct Authors.
- *
- * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
- */
-package org.mapstruct.ap.test.lombok.superbuilder;
-
-/**
- * Delomboked version of a non-abstract super class using a lombok.experimental.SuperBuilder.
- *
- *
- * @Data
- * @SuperBuilder
- * @Accessors(chain = true)
- * @NoArgsConstructor
- * @AllArgsConstructor
- * public class ChainedAccessors {
- * private int amountOfTires;
- * private Passenger passenger;
- * }
- *
- */
-public class ChainedAccessorsVehicle {
- private int amountOfTires;
- private Passenger passenger;
-
- protected ChainedAccessorsVehicle(ChainedAccessorsVehicleBuilder, ?> b) {
- this.amountOfTires = b.amountOfTires;
- this.passenger = b.passenger;
- }
-
- public static ChainedAccessorsVehicleBuilder, ?> builder() {
- return new ChainedAccessorsVehicleBuilderImpl();
- }
-
- public int getAmountOfTires() {
- return this.amountOfTires;
- }
-
- public Passenger getPassenger() {
- return this.passenger;
- }
-
- public ChainedAccessorsVehicle setAmountOfTires(int amountOfTires) {
- this.amountOfTires = amountOfTires;
- return this;
- }
-
- public ChainedAccessorsVehicle setPassenger(Passenger passenger) {
- this.passenger = passenger;
- return this;
- }
-
- // CHECKSTYLE:OFF
- public boolean equals(final Object o) {
- if ( o == this ) {
- return true;
- }
- if ( !( o instanceof ChainedAccessorsVehicle ) ) {
- return false;
- }
- final ChainedAccessorsVehicle other = (ChainedAccessorsVehicle) o;
- if ( !other.canEqual( (Object) this ) ) {
- return false;
- }
- if ( this.getAmountOfTires() != other.getAmountOfTires() ) {
- return false;
- }
- final Object this$passenger = this.getPassenger();
- final Object other$passenger = other.getPassenger();
- if ( this$passenger == null ? other$passenger != null : !this$passenger.equals( other$passenger ) ) {
- return false;
- }
- return true;
- }
-
- protected boolean canEqual(final Object other) {
- return other instanceof ChainedAccessorsVehicle;
- }
-
- public int hashCode() {
- final int PRIME = 59;
- int result = 1;
- result = result * PRIME + this.getAmountOfTires();
- final Object $passenger = this.getPassenger();
- result = result * PRIME + ( $passenger == null ? 43 : $passenger.hashCode() );
- return result;
- }
-
- public String toString() {
- return "ChainedAccessorsVehicle(amountOfTires=" + this.getAmountOfTires() + ", passenger=" +
- this.getPassenger() + ")";
- }
-
- public static abstract class ChainedAccessorsVehicleBuilder> {
- // CHECKSTYLE:ON
- private int amountOfTires;
- private Passenger passenger;
-
- public B amountOfTires(int amountOfTires) {
- this.amountOfTires = amountOfTires;
- return self();
- }
-
- public B passenger(Passenger passenger) {
- this.passenger = passenger;
- return self();
- }
-
- protected abstract B self();
-
- public abstract C build();
-
- public String toString() {
- return "ChainedAccessorsVehicle.ChainedAccessorsVehicleBuilder(amountOfTires=" + this.amountOfTires +
- ", passenger=" + this.passenger + ")";
- }
- }
-
- private static final class ChainedAccessorsVehicleBuilderImpl
- extends ChainedAccessorsVehicleBuilder {
- private ChainedAccessorsVehicleBuilderImpl() {
- }
-
- protected ChainedAccessorsVehicleBuilderImpl self() {
- return this;
- }
-
- public ChainedAccessorsVehicle build() {
- return new ChainedAccessorsVehicle( this );
- }
- }
-}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicle.java
similarity index 63%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicle.java
index 2139d9ffb6..d9cf159888 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicle.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicle.java
@@ -3,19 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
-
-/**
- * Delomboked version of an abstract super class using a lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public abstract class AbstractVehicle {
- * private final int amountOfTires;
- * }
- *
- */
+package org.mapstruct.ap.test.superbuilder;
+
public abstract class AbstractVehicle {
private final int amountOfTires;
@@ -34,10 +23,9 @@ public Passenger getPassenger() {
return this.passenger;
}
- // CHECKSTYLE:OFF
- public static abstract class AbstractVehicleBuilder> {
- // CHECKSTYLE:ON
+
private int amountOfTires;
private Passenger passenger;
@@ -54,10 +42,5 @@ public B passenger(Passenger passenger) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "AbstractVehicle.AbstractVehicleBuilder(amountOfTires=" + this.amountOfTires + ", passenger=" +
- this.passenger + ")";
- }
}
}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicleDto.java
similarity index 88%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicleDto.java
index c9c4375591..0b97398ae0 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/AbstractVehicleDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/AbstractVehicleDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public abstract class AbstractVehicleDto {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Car.java
similarity index 67%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/Car.java
index e57f700777..af15ee6631 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Car.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Car.java
@@ -3,21 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
-/**
- * Delomboked version of a class inheriting a non-abstract super class
- * via lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public class Car extends Vehicle {
- * private final String manufacturer;
- * private final Passenger passenger;
- * }
- *
- */
public class Car extends Vehicle {
private final String manufacturer;
@@ -41,9 +28,8 @@ public Passenger getPassenger() {
return this.passenger;
}
- // CHECKSTYLE:OFF
- public static abstract class CarBuilder> extends VehicleBuilder {
- // CHECKSTYLE:ON
+ public abstract static class CarBuilder> extends VehicleBuilder {
+
private String manufacturer;
private Passenger passenger;
@@ -60,11 +46,6 @@ public B passenger(Passenger passenger) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "Car.CarBuilder(super=" + super.toString() + ", manufacturer=" + this.manufacturer + ", passenger=" +
- this.passenger + ")";
- }
}
private static final class CarBuilderImpl extends CarBuilder {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarDto.java
similarity index 90%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarDto.java
index f6c072804b..9877e27d71 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public class CarDto extends VehicleDto {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarMapper.java
similarity index 96%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarMapper.java
index 2baf879eb7..a3def64ead 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/CarMapper.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/CarMapper.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
import org.mapstruct.InheritInverseConfiguration;
import org.mapstruct.Mapper;
diff --git a/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsCar.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsCar.java
new file mode 100644
index 0000000000..48faa101c3
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsCar.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.superbuilder;
+
+public class ChainedAccessorsCar extends ChainedAccessorsVehicle {
+
+ private String manufacturer;
+
+ protected ChainedAccessorsCar(ChainedAccessorsCarBuilder, ?> b) {
+ super( b );
+ this.manufacturer = b.manufacturer;
+ }
+
+ public static ChainedAccessorsCarBuilder, ?> builder() {
+ return new ChainedAccessorsCarBuilderImpl();
+ }
+
+ public String getManufacturer() {
+ return this.manufacturer;
+ }
+
+ public ChainedAccessorsCar setManufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return this;
+ }
+
+ public abstract static class ChainedAccessorsCarBuilder> extends ChainedAccessorsVehicleBuilder {
+
+ private String manufacturer;
+
+ public B manufacturer(String manufacturer) {
+ this.manufacturer = manufacturer;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+ }
+
+ private static final class ChainedAccessorsCarBuilderImpl
+ extends ChainedAccessorsCarBuilder {
+ private ChainedAccessorsCarBuilderImpl() {
+ }
+
+ protected ChainedAccessorsCarBuilderImpl self() {
+ return this;
+ }
+
+ public ChainedAccessorsCar build() {
+ return new ChainedAccessorsCar( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsVehicle.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsVehicle.java
new file mode 100644
index 0000000000..3344fb26f9
--- /dev/null
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/ChainedAccessorsVehicle.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright MapStruct Authors.
+ *
+ * Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
+ */
+package org.mapstruct.ap.test.superbuilder;
+
+public class ChainedAccessorsVehicle {
+ private int amountOfTires;
+ private Passenger passenger;
+
+ protected ChainedAccessorsVehicle(ChainedAccessorsVehicleBuilder, ?> b) {
+ this.amountOfTires = b.amountOfTires;
+ this.passenger = b.passenger;
+ }
+
+ public static ChainedAccessorsVehicleBuilder, ?> builder() {
+ return new ChainedAccessorsVehicleBuilderImpl();
+ }
+
+ public int getAmountOfTires() {
+ return this.amountOfTires;
+ }
+
+ public Passenger getPassenger() {
+ return this.passenger;
+ }
+
+ public ChainedAccessorsVehicle setAmountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return this;
+ }
+
+ public ChainedAccessorsVehicle setPassenger(Passenger passenger) {
+ this.passenger = passenger;
+ return this;
+ }
+
+ public abstract static class ChainedAccessorsVehicleBuilder> {
+ private int amountOfTires;
+ private Passenger passenger;
+
+ public B amountOfTires(int amountOfTires) {
+ this.amountOfTires = amountOfTires;
+ return self();
+ }
+
+ public B passenger(Passenger passenger) {
+ this.passenger = passenger;
+ return self();
+ }
+
+ protected abstract B self();
+
+ public abstract C build();
+ }
+
+ private static final class ChainedAccessorsVehicleBuilderImpl
+ extends ChainedAccessorsVehicleBuilder {
+ private ChainedAccessorsVehicleBuilderImpl() {
+ }
+
+ protected ChainedAccessorsVehicleBuilderImpl self() {
+ return this;
+ }
+
+ public ChainedAccessorsVehicle build() {
+ return new ChainedAccessorsVehicle( this );
+ }
+ }
+}
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCar.java
similarity index 64%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCar.java
index beb9cb0129..1d07106af8 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCar.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCar.java
@@ -3,19 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
-/**
- * Delomboked version of a class inheriting an abstract super class via lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public class InheritedAbstractCar extends AbstractVehicle {
- * private final String manufacturer;
- * }
- *
- */
public class InheritedAbstractCar extends AbstractVehicle {
private final String manufacturer;
@@ -33,9 +22,9 @@ public String getManufacturer() {
return this.manufacturer;
}
- // CHECKSTYLE:OFF
- public static abstract class InheritedAbstractCarBuilder>
- // CHECKSTYLE:ON
+ public abstract static class InheritedAbstractCarBuilder>
+
extends AbstractVehicleBuilder {
private String manufacturer;
@@ -47,11 +36,6 @@ public B manufacturer(String manufacturer) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "InheritedAbstractCar.InheritedAbstractCarBuilder(super=" + super.toString() + ", manufacturer=" +
- this.manufacturer + ")";
- }
}
private static final class InheritedAbstractCarBuilderImpl
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCarDto.java
similarity index 90%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCarDto.java
index 7a0b6510c7..a9cc6bbdbb 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/InheritedAbstractCarDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/InheritedAbstractCarDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public class InheritedAbstractCarDto extends AbstractVehicleDto {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCar.java
similarity index 62%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCar.java
index 79a900f289..ec330536ff 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCar.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCar.java
@@ -3,20 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
-/**
- * Delomboked version of a class inheriting an intermediate super class
- * via lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public class MuscleCar extends Car {
- * private final float horsePower;
- * }
- *
- */
public class MuscleCar extends Car {
private final float horsePower;
@@ -34,9 +22,9 @@ public float getHorsePower() {
return this.horsePower;
}
- // CHECKSTYLE:OFF
- public static abstract class MuscleCarBuilder> extends CarBuilder {
- // CHECKSTYLE:ON
+ public abstract static class MuscleCarBuilder>
+ extends CarBuilder {
+
private float horsePower;
public B horsePower(float horsePower) {
@@ -47,10 +35,6 @@ public B horsePower(float horsePower) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "MuscleCar.MuscleCarBuilder(super=" + super.toString() + ", horsePower=" + this.horsePower + ")";
- }
}
private static final class MuscleCarBuilderImpl extends MuscleCarBuilder {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCarDto.java
similarity index 90%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCarDto.java
index 41578d97b7..7ffe150ecf 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/MuscleCarDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/MuscleCarDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public class MuscleCarDto extends CarDto {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Passenger.java
similarity index 66%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/Passenger.java
index 56b92239b9..2b6740af78 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Passenger.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Passenger.java
@@ -3,19 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
-/**
- * Delomboked version of a class without inheritance using a lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public class Passenger {
- * private final String name;
- * }
- *
- */
public class Passenger {
private final String name;
@@ -32,9 +21,8 @@ public String getName() {
return this.name;
}
- // CHECKSTYLE:OFF
- public static abstract class PassengerBuilder> {
- // CHECKSTYLE:ON
+ public abstract static class PassengerBuilder> {
+
private String name;
public B name(String name) {
@@ -45,10 +33,6 @@ public B name(String name) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "Passenger.PassengerBuilder(name=" + this.name + ")";
- }
}
private static final class PassengerBuilderImpl extends PassengerBuilder {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/PassengerDto.java
similarity index 87%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/PassengerDto.java
index d7720bc298..f63f6e0683 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/PassengerDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/PassengerDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public class PassengerDto {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/SuperBuilderTest.java
similarity index 98%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/SuperBuilderTest.java
index d8a2ddc550..93dfb746b0 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/LombokSuperBuilderTest.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/SuperBuilderTest.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
import org.mapstruct.ap.testutil.IssueKey;
import org.mapstruct.ap.testutil.ProcessorTest;
@@ -34,7 +34,7 @@
CarMapper.class
})
@IssueKey("3524")
-public class LombokSuperBuilderTest {
+public class SuperBuilderTest {
@ProcessorTest
public void simpleMapping() {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Vehicle.java
similarity index 67%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/Vehicle.java
index 9e166218a3..2f4a19d842 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/Vehicle.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/Vehicle.java
@@ -3,19 +3,8 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
-/**
- * Delomboked version of a non-abstract super class using a lombok.experimental.SuperBuilder.
- *
- *
- * @SuperBuilder
- * @Getter
- * public class Vehicle {
- * private final int amountOfTires;
- * }
- *
- */
public class Vehicle {
private final int amountOfTires;
@@ -32,9 +21,8 @@ public int getAmountOfTires() {
return this.amountOfTires;
}
- // CHECKSTYLE:OFF
- public static abstract class VehicleBuilder> {
- // CHECKSTYLE:ON
+ public abstract static class VehicleBuilder> {
+
private int amountOfTires;
public B amountOfTires(int amountOfTires) {
@@ -45,10 +33,6 @@ public B amountOfTires(int amountOfTires) {
protected abstract B self();
public abstract C build();
-
- public String toString() {
- return "Vehicle.VehicleBuilder(amountOfTires=" + this.amountOfTires + ")";
- }
}
private static final class VehicleBuilderImpl extends VehicleBuilder {
diff --git a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/VehicleDto.java
similarity index 91%
rename from processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java
rename to processor/src/test/java/org/mapstruct/ap/test/superbuilder/VehicleDto.java
index e4ada7485b..04dfefb205 100644
--- a/processor/src/test/java/org/mapstruct/ap/test/lombok/superbuilder/VehicleDto.java
+++ b/processor/src/test/java/org/mapstruct/ap/test/superbuilder/VehicleDto.java
@@ -3,7 +3,7 @@
*
* Licensed under the Apache License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
-package org.mapstruct.ap.test.lombok.superbuilder;
+package org.mapstruct.ap.test.superbuilder;
public class VehicleDto {