From ecc540046b9278ad45c4ce142ef256ef856be022 Mon Sep 17 00:00:00 2001 From: NameIsUser06 Date: Sun, 21 Apr 2024 22:05:57 +0900 Subject: [PATCH] =?UTF-8?q?test(docs):=20CommandDocsService=20=ED=85=8C?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20=EC=BD=94=EB=93=9C=20=EC=9E=91=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bumawiki/domain/docs/domain/Docs.java | 5 + .../domain/docs/domain/VersionDocs.java | 6 +- .../domain/docs/domain/VersionDocsPk.java | 2 +- .../docs/implementation/DocsValidator.java | 5 +- .../docs/infra/CustomDocsRepositoryImpl.java | 10 +- .../docs/service/CommandDocsService.java | 8 +- .../bumawiki/domain/user/domain/User.java | 12 +- .../docs/service/CommandDocsServiceTest.java | 375 ++++++++++++++++-- .../bumawiki/global/service/ServiceTest.java | 5 + src/test/resources/lombok.config | 1 + 10 files changed, 368 insertions(+), 61 deletions(-) create mode 100644 src/test/resources/lombok.config diff --git a/src/main/java/com/project/bumawiki/domain/docs/domain/Docs.java b/src/main/java/com/project/bumawiki/domain/docs/domain/Docs.java index db2a61b..90aaf1b 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/domain/Docs.java +++ b/src/main/java/com/project/bumawiki/domain/docs/domain/Docs.java @@ -15,6 +15,8 @@ import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.OneToMany; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; @@ -28,12 +30,15 @@ public class Docs { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; + @NotNull + @Size(max = 32) @Column(length = 32, unique = true) private String title; @Column private Integer enroll; + @NotNull @Enumerated(EnumType.STRING) private DocsType docsType; diff --git a/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocs.java b/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocs.java index c00e49a..b2d59a2 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocs.java +++ b/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocs.java @@ -13,6 +13,8 @@ import jakarta.persistence.IdClass; import jakarta.persistence.JoinColumn; import jakarta.persistence.ManyToOne; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; @@ -24,6 +26,7 @@ public class VersionDocs { @Id + @NotNull private Integer version; @Id @@ -31,7 +34,8 @@ public class VersionDocs { @JoinColumn(name = "docs_id") private Docs docs; - @Column(columnDefinition = "TEXT", nullable = false) + @Column(columnDefinition = "TEXT") + @NotNull private String contents; @CreatedDate diff --git a/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocsPk.java b/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocsPk.java index b605c8c..e8ca44b 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocsPk.java +++ b/src/main/java/com/project/bumawiki/domain/docs/domain/VersionDocsPk.java @@ -7,5 +7,5 @@ @EqualsAndHashCode public class VersionDocsPk implements Serializable { private int version; - private Docs docs; + private Long docs; } diff --git a/src/main/java/com/project/bumawiki/domain/docs/implementation/DocsValidator.java b/src/main/java/com/project/bumawiki/domain/docs/implementation/DocsValidator.java index c48f491..280574d 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/implementation/DocsValidator.java +++ b/src/main/java/com/project/bumawiki/domain/docs/implementation/DocsValidator.java @@ -17,8 +17,8 @@ public class DocsValidator { private final DocsRepository docsRepository; private final DocsReader docsReader; - public void checkTitleAlreadyExist(Docs docs) { - if (docsRepository.existsByTitle(docs.getTitle())) { + public void checkTitleAlreadyExist(String title) { + if (docsRepository.existsByTitle(title)) { throw new BumawikiException(ErrorCode.DOCS_TITLE_ALREADY_EXIST); } } @@ -42,7 +42,6 @@ public void checkUpdateOneSelf(User user, Docs docs) { throw new BumawikiException(ErrorCode.CANNOT_CHANGE_YOUR_DOCS); } } - public void checkUpdatableDocsType(DocsType docsType) { if (docsType.equals(DocsType.READONLY)) { throw new BumawikiException(ErrorCode.NO_UPDATABLE_DOCS); diff --git a/src/main/java/com/project/bumawiki/domain/docs/infra/CustomDocsRepositoryImpl.java b/src/main/java/com/project/bumawiki/domain/docs/infra/CustomDocsRepositoryImpl.java index 118c887..59681bd 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/infra/CustomDocsRepositoryImpl.java +++ b/src/main/java/com/project/bumawiki/domain/docs/infra/CustomDocsRepositoryImpl.java @@ -45,13 +45,13 @@ public VersionResponseDto getDocsVersion(Docs findDocs) { public List findByThumbsUpsDesc() { return jpaQueryFactory .select( - constructor(DocsPopularResponseDto.class, docs.title, docs.enroll, docs.docsType, thumbsUp.id.count())) - .from(docs) - .innerJoin(docs, thumbsUp.docs) - .groupBy(docs.title, docs.enroll, docs.docsType) + constructor(DocsPopularResponseDto.class, thumbsUp.docs.title, thumbsUp.docs.enroll, + thumbsUp.docs.docsType, thumbsUp.id.count())) + .from(thumbsUp) + .innerJoin(thumbsUp.docs) + .groupBy(thumbsUp.docs.title, thumbsUp.docs.enroll, thumbsUp.docs.docsType) .orderBy(thumbsUp.id.count().desc()) .limit(25) .fetch(); - } } diff --git a/src/main/java/com/project/bumawiki/domain/docs/service/CommandDocsService.java b/src/main/java/com/project/bumawiki/domain/docs/service/CommandDocsService.java index 4c5524c..10543c3 100644 --- a/src/main/java/com/project/bumawiki/domain/docs/service/CommandDocsService.java +++ b/src/main/java/com/project/bumawiki/domain/docs/service/CommandDocsService.java @@ -30,13 +30,13 @@ public class CommandDocsService { private final ThumbsUpDeleter thumbsUpDeleter; public void create(Docs docs, User user, String contents) { - docsValidator.checkTitleAlreadyExist(docs); + docsValidator.checkTitleAlreadyExist(docs.getTitle()); docsCreator.create(docs, user, contents); } public void delete(Long id) { - docsDeleter.delete(id); thumbsUpDeleter.deleteAllByDocsId(id); + docsDeleter.delete(id); } public void update(User user, String title, String contents, Integer updatingVersion) { @@ -53,8 +53,8 @@ public void update(User user, String title, String contents, Integer updatingVer } public void titleUpdate(String title, String changedTitle) { + docsValidator.checkTitleAlreadyExist(changedTitle); Docs docs = docsReader.findByTitle(title); - docsValidator.checkTitleAlreadyExist(docs); docsUpdater.updateTitle(docs, changedTitle); } @@ -72,7 +72,7 @@ public void solveConflict(String title, String contents, Integer version, User u throw new BumawikiException(ErrorCode.DOCS_CONFLICTED); } - docsCreator.create( + docsCreator.createVersionDocs( docs, user, contents diff --git a/src/main/java/com/project/bumawiki/domain/user/domain/User.java b/src/main/java/com/project/bumawiki/domain/user/domain/User.java index e3967ba..88741cc 100644 --- a/src/main/java/com/project/bumawiki/domain/user/domain/User.java +++ b/src/main/java/com/project/bumawiki/domain/user/domain/User.java @@ -4,6 +4,8 @@ import java.util.List; import com.project.bumawiki.domain.thumbsup.domain.ThumbsUp; +import com.project.bumawiki.domain.thumbsup.exception.AlreadyThumbsUpException; +import com.project.bumawiki.domain.thumbsup.exception.YouDontThumbsUpThisDocs; import com.project.bumawiki.domain.thumbsup.presentation.dto.ThumbsUpResponseDto; import com.project.bumawiki.domain.user.domain.authority.Authority; @@ -18,6 +20,8 @@ import jakarta.persistence.Id; import jakarta.persistence.OneToMany; import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; @@ -42,15 +46,15 @@ public class User { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; - @Max(32) + @Size(max = 32) @Column(unique = true, length = 32) private String email; - @Max(16) + @Size(max = 16) + @NotNull @Column(length = 16) private String name; - @Max(8) @Column(length = 8) private Integer enroll; @@ -58,8 +62,8 @@ public class User { @Column(length = 20) private String nickName; - @Enumerated(EnumType.STRING) @Column(length = 16) + @Enumerated(EnumType.STRING) private Authority authority; public List getList() { diff --git a/src/test/java/com/project/bumawiki/domain/docs/service/CommandDocsServiceTest.java b/src/test/java/com/project/bumawiki/domain/docs/service/CommandDocsServiceTest.java index 81c1ad5..1407c6a 100644 --- a/src/test/java/com/project/bumawiki/domain/docs/service/CommandDocsServiceTest.java +++ b/src/test/java/com/project/bumawiki/domain/docs/service/CommandDocsServiceTest.java @@ -1,7 +1,20 @@ package com.project.bumawiki.domain.docs.service; -import static org.assertj.core.api.AssertionsForClassTypes.*; +import static org.assertj.core.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.*; +import com.project.bumawiki.domain.docs.domain.type.DocsType; + +import com.project.bumawiki.domain.docs.presentation.dto.response.DocsPopularResponseDto; +import com.project.bumawiki.domain.thumbsup.domain.ThumbsUp; +import com.project.bumawiki.domain.thumbsup.domain.repository.ThumbsUpRepository; +import com.project.bumawiki.global.error.exception.BumawikiException; + +import com.project.bumawiki.global.error.exception.ErrorCode; + +import net.jqwik.api.Arbitraries; + +import org.junit.jupiter.api.RepeatedTest; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -9,72 +22,348 @@ import com.project.bumawiki.domain.docs.domain.VersionDocs; import com.project.bumawiki.domain.docs.domain.repository.DocsRepository; import com.project.bumawiki.domain.docs.domain.repository.VersionDocsRepository; -import com.project.bumawiki.domain.docs.domain.type.DocsType; import com.project.bumawiki.domain.user.domain.User; -import com.project.bumawiki.domain.user.domain.authority.Authority; import com.project.bumawiki.domain.user.domain.repository.UserRepository; import com.project.bumawiki.global.service.ServiceTest; +import java.util.List; + class CommandDocsServiceTest extends ServiceTest { - @Autowired - private UserRepository userRepository; @Autowired private CommandDocsService commandDocsService; @Autowired + private UserRepository userRepository; + @Autowired private DocsRepository docsRepository; @Autowired private VersionDocsRepository versionDocsRepository; + @Autowired + private ThumbsUpRepository thumbsUpRepository; + @Autowired + private QueryDocsService queryDocsService; + + @RepeatedTest(REPEAT_COUNT) + void 문서_생성() { + //given + Docs docs = getDocs(); + User user = getSavedUserWithOutThumbsUp(); + String contents = fixtureGenerator.giveMeOne(String.class); + + //when + commandDocsService.create(docs, user, contents); + + //then + assertAll( + () -> assertThat(docsRepository.findById(docs.getId()).get()).isEqualTo(docs), + () -> assertThat(versionDocsRepository.findByDocs(docs).get(0).getContents()).isEqualTo(contents) + ); + } + + @RepeatedTest(REPEAT_COUNT) + void 같은_이름_문서_생성_실패() { + // given + String title = getTitle(); + String contents = fixtureGenerator.giveMeOne(String.class); + getSavedDocs(title); + Docs savingDocs = getDocs(title); + User user = getSavedUserWithOutThumbsUp(); + + // when + BumawikiException exception = assertThrows(BumawikiException.class, () -> { + commandDocsService.create(savingDocs, user, contents); + }); + + // then + assertThat(exception.getErrorCode()).isEqualTo(ErrorCode.DOCS_TITLE_ALREADY_EXIST); + } + + private Docs getDocs(String title) { + return fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .set("title", title) + .sample(); + } + + @RepeatedTest(REPEAT_COUNT) + void 문서_업데이트() { + // given + User user = getSavedUserWithOutThumbsUp(); + Docs docs = getSavedDocsNotReadonly(); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); + + // when + commandDocsService.update(user, docs.getTitle(), contents, + versionDocs.getVersion()); + + // then + assertAll( + () -> assertThat(versionDocsRepository.findFirstByDocsOrderByVersionDesc(docs).getContents()).isEqualTo( + contents), + () -> assertThat(versionDocsRepository.count()).isEqualTo(2) + ); + } + + @RepeatedTest(REPEAT_COUNT) + void 문서_삭제() { + // given + Docs docs = getSavedDocs(); + User user = getSavedUserWithOutThumbsUp(); + getSavedThumbsUpList(docs, user); + + // when + commandDocsService.delete(docs.getId()); + + // then + assertAll( + () -> assertThat(docsRepository.findById(docs.getId())).isEmpty(), + () -> assertThat(thumbsUpRepository.count()).isZero() + ); + } + + @RepeatedTest(REPEAT_COUNT) + void 문서_타입_업데이트() { + // given + Docs docs = getSavedDocs(); + DocsType docsType = fixtureGenerator.giveMeBuilder(DocsType.class) + .setPostCondition("$", DocsType.class, (it) -> !it.equals(docs.getDocsType())) + .sample(); + + // when + commandDocsService.docsTypeUpdate(docs.getId(), docsType); + + // then + assertThat(docsRepository.findById(docs.getId()).get().getDocsType()).isEqualTo(docsType); + } + @Test - void 문서_생성하기() { + void 일반문서_중_본인이름_포함_시_문서_업데이트_실패() { // given - User user = User.builder() - .email("2022038@bssm.hs.kr") - .name("마현우") - .enroll(2022) - .nickName("마현우") - .authority(Authority.USER) - .build(); - userRepository.save(user); - - String title = "제목"; - String contents = "본문"; - int enroll = 2024; - Docs docs = new Docs(title, enroll, DocsType.ACCIDENT); + String name = Arbitraries.strings().ofLength(3).sample(); + User user = getSavedUserWithOutThumbsUp(name); + Docs docs = getSavedDocs(name + + Arbitraries.strings() + .ofMinLength(1) + .ofMaxLength(29) + .sample() + ); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); + + // when, then + assertThrows(BumawikiException.class, () -> commandDocsService.update(user, docs.getTitle(), contents, + versionDocs.getVersion())); + } + + @Test + void 학생문서_중_본인문서_업데이트_실패() { + // given + String name = Arbitraries.strings().ofLength(3).sample(); + Integer enroll = Arbitraries.integers().between(1000, 9999).sample(); + User user = getSavedUserWithOutThumbsUp(name, enroll); + Docs docs = getSavedNotStudentDocs(name, enroll); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); // when - commandDocsService.create(docs, user, contents); + commandDocsService.update(user, docs.getTitle(), contents, + versionDocs.getVersion()); + } + + @Test + void 읽기전용_문서_업데이트_실패() { + // given + User user = getSavedUserWithOutThumbsUp(); + Docs docs = getSavedDocsReadonly(); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); + + // when + commandDocsService.update(user, docs.getTitle(), contents, + versionDocs.getVersion()); + } + + @Test + void 버전_불일치_문서_업데이트_실패() { + // given + User user = getSavedUserWithOutThumbsUp(); + Docs docs = getSavedDocsNotReadonly(); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); + + // when + commandDocsService.update(user, docs.getTitle(), contents, + versionDocs.getVersion() + 1); + } + + @RepeatedTest(REPEAT_COUNT) + void 문서_이름_수정() { + //given + Docs savedDocs = getSavedDocs(); + String newTitle = getStringWithout(savedDocs.getTitle()); + + //when + commandDocsService.titleUpdate(savedDocs.getTitle(), newTitle); + + //then + assertThat(savedDocs.getTitle()).isEqualTo(newTitle); + } + + @RepeatedTest(REPEAT_COUNT) + void 있는_문서_이름_수정_실패() { + //given + String title = getTitle(); + getSavedDocs(title); + Docs updatingDocs = getSavedDocs(getStringWithout(title)); + + //when, then + assertThrows(BumawikiException.class, () -> commandDocsService.titleUpdate(updatingDocs.getTitle(), title)); + } + + private static String getTitle() { + return Arbitraries.strings().ofMinLength(1).ofMaxLength(32).sample(); + } + + private static String getStringWithout(String title) { + String newTitle = getTitle(); + while (title.equals(newTitle)) { + newTitle = getTitle(); + } + + return newTitle; + } + + private Docs getDocs() { + return fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .sample(); + } + + @Test + void 문서_충돌_해결() { + // given + Docs docs = getSavedDocs(); + User user = getSavedUserWithOutThumbsUp(); + VersionDocs versionDocs = getSavedVersionDocs(docs, user); + String contents = Arbitraries.strings().ofMinLength(1).sample(); + + // when + commandDocsService.solveConflict(docs.getTitle(), contents, versionDocs.getVersion(), user); // then - assertThat(docsRepository.findByTitle(title).get().getTitle()).isEqualTo(title); - assertThat(versionDocsRepository.findFirstByDocsOrderByVersionDesc(docs).getContents()).isEqualTo(contents); + assertThat(versionDocsRepository.findFirstByDocsOrderByVersionDesc(docs).getVersion()).isEqualTo(versionDocs.getVersion() + 1); + } + + + + private List getSavedThumbsUpList(Docs docs, User user) { + return fixtureGenerator.giveMeBuilder(ThumbsUp.class) + .setNull("id") + .set("docs", docs) + .set("user", user) + .sampleList(5) + .stream().map(thumbsup -> thumbsUpRepository.save(thumbsup)) + .toList(); + } + + private Docs getSavedDocs() { + return docsRepository.save(getDocs()); + } + + private Docs getSavedDocsNotReadonly() { + return docsRepository.save( + fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .setPostCondition("docsType", DocsType.class, (it) -> it != DocsType.READONLY) + .sample()); + } + + private Docs getSavedDocsReadonly() { + return docsRepository.save( + fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .set("docsType", DocsType.READONLY) + .sample()); + } + + private Docs getSavedNotStudentDocs(String name, Integer enroll) { + return docsRepository.save( + fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .setPostCondition("docsType", DocsType.class, (it) -> it != DocsType.STUDENT) + .set("title", + name + + Arbitraries.strings() + .ofMinLength(1) + .ofMaxLength(29) + .sample()) + .set("enroll", enroll) + .sample()); + } + + private Docs getSavedDocs(String title) { + return docsRepository.save( + getDocs(title) + ); + } + + private VersionDocs getSavedVersionDocs(Docs docs, User user) { + return versionDocsRepository.save(fixtureGenerator.giveMeBuilder(VersionDocs.class) + .set("version", 0) + .set("docs", docs) + .set("user", user) + .sample()); + } + + private User getSavedUserWithOutThumbsUp() { + return userRepository.save(fixtureGenerator.giveMeBuilder(User.class) + .setNull("id") + .setNull("thumbsUps") + .sample()); + } + + private User getSavedUserWithOutThumbsUp(String name, Integer enroll) { + return userRepository.save(fixtureGenerator.giveMeBuilder(User.class) + .setNull("id") + .set("name", name) + .set("enroll", enroll) + .setNull("thumbsUps") + .sample()); + } + + private User getSavedUserWithOutThumbsUp(String name) { + return userRepository.save(fixtureGenerator.giveMeBuilder(User.class) + .setNull("id") + .set("name", name) + .setNull("thumbsUps") + .sample()); } @Test - void 문서_업데이트하기() { + void 좋아요_내림차순_문서_전체_조회() { // given - User user = User.builder() - .email("2022038@bssm.hs.kr") - .name("마현우") - .enroll(2022) - .nickName("마현우") - .authority(Authority.USER) - .build(); - userRepository.save(user); - - String title = "제목"; - String contents = "본문"; - String updatedContents = "본문본문"; - int enroll = 2024; - Docs docs = new Docs(title, enroll, DocsType.ACCIDENT); - commandDocsService.create(docs, user, contents); + User user = userRepository.save(fixtureGenerator.giveMeBuilder(User.class) + .setNull("id") + .setNull("thumbsUps") + .sample()); + List docs = docsRepository.saveAll(fixtureGenerator.giveMeBuilder(Docs.class) + .setNull("id") + .sampleList(5)); + for (Docs doc : docs) { + thumbsUpRepository.saveAll(fixtureGenerator.giveMeBuilder(ThumbsUp.class) + .setNull("id") + .set("docs", doc) + .set("user", user) + .sampleList(Arbitraries.integers().between(1, 30).sample())); + } // when - commandDocsService.update(user, title, updatedContents, 0); + List list = queryDocsService.readByThumbsUpsDesc(); // then - VersionDocs versionDocs = versionDocsRepository.findFirstByDocsOrderByVersionDesc(docs); - assertThat(versionDocs.getContents()).isEqualTo(updatedContents); - assertThat(versionDocs.getVersion()).isEqualTo(1); + assertThat(thumbsUpRepository.findByDocs_Id( + docsRepository.findByTitle(list.get(0).title()).get().getId())) + .hasSize(list.get(0).thumbsUpsCounts().intValue()); } -} \ No newline at end of file +} diff --git a/src/test/java/com/project/bumawiki/global/service/ServiceTest.java b/src/test/java/com/project/bumawiki/global/service/ServiceTest.java index e7f6db6..757cfa9 100644 --- a/src/test/java/com/project/bumawiki/global/service/ServiceTest.java +++ b/src/test/java/com/project/bumawiki/global/service/ServiceTest.java @@ -2,11 +2,13 @@ import org.junit.jupiter.api.DisplayNameGeneration; import org.junit.jupiter.api.DisplayNameGenerator; +import org.junit.jupiter.api.RepeatedTest; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.transaction.annotation.Transactional; import com.navercorp.fixturemonkey.FixtureMonkey; import com.navercorp.fixturemonkey.api.introspector.FieldReflectionArbitraryIntrospector; +import com.navercorp.fixturemonkey.jakarta.validation.plugin.JakartaValidationPlugin; @Transactional @SpringBootTest @@ -14,5 +16,8 @@ public abstract class ServiceTest { protected static final FixtureMonkey fixtureGenerator = FixtureMonkey.builder() .objectIntrospector(FieldReflectionArbitraryIntrospector.INSTANCE) + .plugin(new JakartaValidationPlugin()) .build(); + + protected static final int REPEAT_COUNT = 100; } diff --git a/src/test/resources/lombok.config b/src/test/resources/lombok.config new file mode 100644 index 0000000..f902278 --- /dev/null +++ b/src/test/resources/lombok.config @@ -0,0 +1 @@ +lombok.anyConstructor.addConstructorProperties=true \ No newline at end of file