-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'dev/BE' into deploy/merge
- Loading branch information
Showing
16 changed files
with
411 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 21 additions & 0 deletions
21
...nd/baton/src/test/java/touch/baton/assure/repository/TestRunnerPostCommandRepository.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package touch.baton.assure.repository; | ||
|
||
import org.springframework.context.annotation.Profile; | ||
import org.springframework.data.jpa.repository.Modifying; | ||
import org.springframework.data.jpa.repository.Query; | ||
import org.springframework.data.repository.query.Param; | ||
import org.springframework.transaction.annotation.Transactional; | ||
import touch.baton.domain.runnerpost.command.repository.RunnerPostCommandRepository; | ||
|
||
@Profile("test") | ||
public interface TestRunnerPostCommandRepository extends RunnerPostCommandRepository { | ||
|
||
@Transactional | ||
@Modifying(flushAutomatically = true, clearAutomatically = true) | ||
@Query(""" | ||
update RunnerPost rp | ||
set rp.reviewStatus = 'OVERDUE' | ||
where rp.id = :id | ||
""") | ||
void expireRunnerPost(@Param("id") Long runnerPostId); | ||
} |
80 changes: 80 additions & 0 deletions
80
backend/baton/src/test/java/touch/baton/assure/runnerpost/RunnerPostSteps.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
package touch.baton.assure.runnerpost; | ||
|
||
import org.springframework.http.HttpStatus; | ||
import touch.baton.assure.common.HttpStatusAndLocationHeader; | ||
import touch.baton.assure.runnerpost.support.command.RunnerPostCreateSupport; | ||
import touch.baton.assure.runnerpost.support.command.RunnerPostUpdateSupport; | ||
import touch.baton.assure.runnerpost.support.command.applicant.RunnerPostApplicantCreateSupport; | ||
import touch.baton.domain.member.command.Supporter; | ||
|
||
import java.time.LocalDateTime; | ||
import java.util.List; | ||
|
||
import static touch.baton.assure.runnerpost.support.command.RunnerPostCreateSupport.λ¬λ_κ²μκΈ_μμ±_μμ²; | ||
import static touch.baton.assure.runnerpost.support.command.applicant.RunnerPostApplicantCreateSupport.λ¬λμ_μν¬ν°_μ ν_μμ²; | ||
|
||
public abstract class RunnerPostSteps { | ||
|
||
public static void λ¬λκ°_κ²μκΈμ_μμ±νκ³ _리뷰λ₯Ό_λ°μ_λ€_리뷰μλ£λ‘_λ³κ²½νλ€(final String λ¬λ_μ‘μΈμ€_ν ν°, final String μν¬ν°_μ‘μΈμ€_ν ν°, final Supporter μν¬ν°) { | ||
final Long κ²μκΈ_μλ³μ = λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰_μ μ²μ_μ±κ³΅νλ€(μν¬ν°_μ‘μΈμ€_ν ν°, κ²μκΈ_μλ³μ); | ||
λ¬λκ°_μν¬ν°μ_리뷰_μ μ²_μ νμ_μ±κ³΅νλ€(μν¬ν°, λ¬λ_μ‘μΈμ€_ν ν°, κ²μκΈ_μλ³μ); | ||
μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰λ₯Ό_μλ£λ‘_λ³κ²½νλ_κ²μ_μ±κ³΅νλ€(μν¬ν°_μ‘μΈμ€_ν ν°, κ²μκΈ_μλ³μ); | ||
} | ||
|
||
public static void λ¬λκ°_κ²μκΈμ_μμ±νκ³ _μν¬ν°κ°_μ νλλ€(final String λ¬λ_μ‘μΈμ€_ν ν°, final String μν¬ν°_μ‘μΈμ€_ν ν°, final Supporter μν¬ν°) { | ||
final Long κ²μκΈ_μλ³μ = λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰_μ μ²μ_μ±κ³΅νλ€(μν¬ν°_μ‘μΈμ€_ν ν°, κ²μκΈ_μλ³μ); | ||
λ¬λκ°_μν¬ν°μ_리뷰_μ μ²_μ νμ_μ±κ³΅νλ€(μν¬ν°, λ¬λ_μ‘μΈμ€_ν ν°, κ²μκΈ_μλ³μ); | ||
} | ||
|
||
public static Long λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(final String λ¬λ_μμΈμ€_ν ν°) { | ||
return RunnerPostCreateSupport | ||
.ν΄λΌμ΄μΈνΈ_μμ²() | ||
.μ‘μΈμ€_ν ν°μΌλ‘_λ‘κ·ΈμΈνλ€(λ¬λ_μμΈμ€_ν ν°) | ||
.λ¬λ_κ²μκΈ_λ±λ‘_μμ²νλ€( | ||
λ¬λ_κ²μκΈ_μμ±_μμ²( | ||
"ν μ€νΈμ©_λ¬λ_κ²μκΈ_μ λͺ©", | ||
List.of("μλ°", "μ€νλ§"), | ||
"https://test-pull-request.com", | ||
LocalDateTime.now().plusHours(100), | ||
"ν μ€νΈμ©_λ¬λ_κ²μκΈ_ꡬν_λ΄μ©", | ||
"ν μ€νΈμ©_λ¬λ_κ²μκΈ_κΆκΈν_λ΄μ©", | ||
"ν μ€νΈμ©_λ¬λ_κ²μκΈ_μ°Έκ³ _μ¬ν" | ||
)) | ||
|
||
.μλ²_μλ΅() | ||
.λ¬λ_κ²μκΈ_μμ±_μ±κ³΅μ_κ²μ¦νλ€() | ||
.μμ±ν_λ¬λ_κ²μκΈμ_μλ³μκ°μ_λ°ννλ€(); | ||
} | ||
|
||
public static void μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰_μ μ²μ_μ±κ³΅νλ€(final String μν¬ν°_μ‘μΈμ€_ν ν°, final Long λ¬λ_κ²μκΈ_μλ³μκ°) { | ||
RunnerPostApplicantCreateSupport | ||
.ν΄λΌμ΄μΈνΈ_μμ²() | ||
.μ‘μΈμ€_ν ν°μΌλ‘_λ‘κ·ΈμΈνλ€(μν¬ν°_μ‘μΈμ€_ν ν°) | ||
.μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰λ₯Ό_μ μ²νλ€(λ¬λ_κ²μκΈ_μλ³μκ°, "μλ νμΈμ. μν¬ν°μ λλ€.") | ||
|
||
.μλ²_μλ΅() | ||
.μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰_μ μ²_μ±κ³΅μ_κ²μ¦νλ€(λ¬λ_κ²μκΈ_μλ³μκ°); | ||
} | ||
|
||
public static void λ¬λκ°_μν¬ν°μ_리뷰_μ μ²_μ νμ_μ±κ³΅νλ€(final Supporter μν¬ν°, final String λ¬λ_μ‘μΈμ€_ν ν°, final Long λ¬λ_κ²μκΈ_μλ³μκ°) { | ||
RunnerPostUpdateSupport | ||
.ν΄λΌμ΄μΈνΈ_μμ²() | ||
.μ‘μΈμ€_ν ν°μΌλ‘_λ‘κ·ΈμΈνλ€(λ¬λ_μ‘μΈμ€_ν ν°) | ||
.λ¬λκ°_μν¬ν°λ₯Ό_μ ννλ€(λ¬λ_κ²μκΈ_μλ³μκ°, λ¬λμ_μν¬ν°_μ ν_μμ²(μν¬ν°.getId())) | ||
|
||
.μλ²_μλ΅() | ||
.λ¬λ_κ²μκΈμ_μν¬ν°κ°_μ±κ³΅μ μΌλ‘_μ νλμλμ§_νμΈνλ€(new HttpStatusAndLocationHeader(HttpStatus.NO_CONTENT, "/api/v1/posts/runner")); | ||
} | ||
|
||
public static void μν¬ν°κ°_λ¬λ_κ²μκΈμ_리뷰λ₯Ό_μλ£λ‘_λ³κ²½νλ_κ²μ_μ±κ³΅νλ€(final String μν¬ν°_μ‘μΈμ€_ν ν°, final Long λ¬λ_κ²μκΈ_μλ³μκ°) { | ||
RunnerPostUpdateSupport | ||
.ν΄λΌμ΄μΈνΈ_μμ²() | ||
.μ‘μΈμ€_ν ν°μΌλ‘_λ‘κ·ΈμΈνλ€(μν¬ν°_μ‘μΈμ€_ν ν°) | ||
.μν¬ν°κ°_리뷰λ₯Ό_μλ£νκ³ _리뷰μλ£_λ²νΌμ_λλ₯Έλ€(λ¬λ_κ²μκΈ_μλ³μκ°) | ||
|
||
.μλ²_μλ΅() | ||
.λ¬λ_κ²μκΈμ΄_μ±κ³΅μ μΌλ‘_리뷰_μλ£_μνμΈμ§_νμΈνλ€(new HttpStatusAndLocationHeader(HttpStatus.NO_CONTENT, "/api/v1/posts/runner")); | ||
} | ||
} |
56 changes: 56 additions & 0 deletions
56
...test/java/touch/baton/assure/runnerpost/query/count/RunnerPostStatusCountAssruedTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
package touch.baton.assure.runnerpost.query.count; | ||
|
||
import org.junit.jupiter.api.Test; | ||
import touch.baton.assure.runnerpost.support.query.count.RunnerPostStatusCountAssuredSupport; | ||
import touch.baton.config.AssuredTestConfig; | ||
import touch.baton.config.infra.auth.oauth.authcode.FakeAuthCodes; | ||
import touch.baton.domain.member.command.Supporter; | ||
import touch.baton.domain.member.command.vo.SocialId; | ||
|
||
import static touch.baton.assure.runnerpost.RunnerPostSteps.λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€; | ||
import static touch.baton.assure.runnerpost.RunnerPostSteps.λ¬λκ°_κ²μκΈμ_μμ±νκ³ _리뷰λ₯Ό_λ°μ_λ€_리뷰μλ£λ‘_λ³κ²½νλ€; | ||
import static touch.baton.assure.runnerpost.RunnerPostSteps.λ¬λκ°_κ²μκΈμ_μμ±νκ³ _μν¬ν°κ°_μ νλλ€; | ||
|
||
@SuppressWarnings("NonAsciiCharacters") | ||
class RunnerPostStatusCountAssruedTest extends AssuredTestConfig { | ||
|
||
@Test | ||
void 리뷰_μν_λ³_κ²μκΈμ_μ΄_κ°μλ₯Ό_μ‘°ννλ€() { | ||
// given | ||
final String λ¬λ_μ‘μΈμ€_ν ν° = oauthLoginTestManager.μμ _νμκ°μ μ_μ§νν_ν_μ‘μΈμ€_ν ν°μ_λ°ννλ€(FakeAuthCodes.hyenaAuthCode()); | ||
final String μν¬ν°_μ‘μΈμ€_ν ν° = oauthLoginTestManager.μμ _νμκ°μ μ_μ§νν_ν_μ‘μΈμ€_ν ν°μ_λ°ννλ€(FakeAuthCodes.ethanAuthCode()); | ||
final SocialId μν¬ν°_μμ _μμ΄λ = jwtTestManager.parseToSocialId(μν¬ν°_μ‘μΈμ€_ν ν°); | ||
final Supporter μν¬ν° = supporterRepository.getBySocialId(μν¬ν°_μμ _μμ΄λ); | ||
|
||
final Long 리뷰_μ§νμ€_κΈ_κ°μ = 1L; | ||
λ¬λκ°_κ²μκΈμ_μμ±νκ³ _μν¬ν°κ°_μ νλλ€(λ¬λ_μ‘μΈμ€_ν ν°, μν¬ν°_μ‘μΈμ€_ν ν°, μν¬ν°); | ||
|
||
final Long 리뷰_μλ£_κΈ_κ°μ = 2L; | ||
λ¬λκ°_κ²μκΈμ_μμ±νκ³ _리뷰λ₯Ό_λ°μ_λ€_리뷰μλ£λ‘_λ³κ²½νλ€(λ¬λ_μ‘μΈμ€_ν ν°, μν¬ν°_μ‘μΈμ€_ν ν°, μν¬ν°); | ||
λ¬λκ°_κ²μκΈμ_μμ±νκ³ _리뷰λ₯Ό_λ°μ_λ€_리뷰μλ£λ‘_λ³κ²½νλ€(λ¬λ_μ‘μΈμ€_ν ν°, μν¬ν°_μ‘μΈμ€_ν ν°, μν¬ν°); | ||
|
||
final Long 리뷰_λκΈ°μ€_κΈ_κ°μ = 3L; | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
|
||
final Long κΈ°κ°_λ§λ£_κΈ_κ°μ = 4L; | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _λ§κ°κΈ°νμ΄_μ§λ_λ§κ°λλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _λ§κ°κΈ°νμ΄_μ§λ_λ§κ°λλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _λ§κ°κΈ°νμ΄_μ§λ_λ§κ°λλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
λ¬λ_κ²μκΈμ_μμ±νκ³ _λ§κ°κΈ°νμ΄_μ§λ_λ§κ°λλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
|
||
// when, then | ||
RunnerPostStatusCountAssuredSupport | ||
.ν΄λΌμ΄μΈνΈ_μμ²() | ||
.κ²μκΈμ_μνλ³λ‘_κ²μκΈ_μ΄_μλ₯Ό_λ°ννλ€() | ||
|
||
.μλ²_μλ΅() | ||
.κ²μκΈ_μνλ³_κ²μκΈ_μ΄_μ_λ°ν_μ±κ³΅μ_νμΈνλ€(리뷰_λκΈ°μ€_κΈ_κ°μ, 리뷰_μ§νμ€_κΈ_κ°μ, 리뷰_μλ£_κΈ_κ°μ, κΈ°κ°_λ§λ£_κΈ_κ°μ); | ||
} | ||
|
||
private void λ¬λ_κ²μκΈμ_μμ±νκ³ _λ§κ°κΈ°νμ΄_μ§λ_λ§κ°λλ€(final String λ¬λ_μ‘μΈμ€_ν ν°) { | ||
final Long λ§λ£λ_κ²μκΈ = λ¬λ_κ²μκΈμ_μμ±νκ³ _κ²μμκΈ_μλ³μλ₯Ό_λ°ννλ€(λ¬λ_μ‘μΈμ€_ν ν°); | ||
runnerPostCommandRepository.expireRunnerPost(λ§λ£λ_κ²μκΈ); | ||
} | ||
} |
61 changes: 61 additions & 0 deletions
61
...ouch/baton/assure/runnerpost/support/query/count/RunnerPostStatusCountAssuredSupport.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
package touch.baton.assure.runnerpost.support.query.count; | ||
|
||
import io.restassured.response.ExtractableResponse; | ||
import io.restassured.response.Response; | ||
import org.springframework.http.HttpStatus; | ||
import touch.baton.assure.common.AssuredSupport; | ||
import touch.baton.domain.runnerpost.query.controller.response.RunnerPostResponse; | ||
|
||
import static org.assertj.core.api.Assertions.assertThat; | ||
import static org.junit.jupiter.api.Assertions.assertAll; | ||
|
||
@SuppressWarnings("NonAsciiCharacters") | ||
public class RunnerPostStatusCountAssuredSupport { | ||
|
||
private RunnerPostStatusCountAssuredSupport() { | ||
} | ||
|
||
public static RunnerPostStatusCountBuilder ν΄λΌμ΄μΈνΈ_μμ²() { | ||
return new RunnerPostStatusCountBuilder(); | ||
} | ||
|
||
public static class RunnerPostStatusCountBuilder { | ||
|
||
private ExtractableResponse<Response> response; | ||
|
||
public RunnerPostStatusCountBuilder κ²μκΈμ_μνλ³λ‘_κ²μκΈ_μ΄_μλ₯Ό_λ°ννλ€() { | ||
response = AssuredSupport.get("/api/v1/posts/runner/count"); | ||
return this; | ||
} | ||
|
||
public RunnerPostStatusCountResponseBuilder μλ²_μλ΅() { | ||
return new RunnerPostStatusCountResponseBuilder(response); | ||
} | ||
|
||
public class RunnerPostStatusCountResponseBuilder { | ||
|
||
private final ExtractableResponse<Response> response; | ||
|
||
public RunnerPostStatusCountResponseBuilder(final ExtractableResponse<Response> μλ΅) { | ||
this.response = μλ΅; | ||
} | ||
|
||
public void κ²μκΈ_μνλ³_κ²μκΈ_μ΄_μ_λ°ν_μ±κ³΅μ_νμΈνλ€(final Long 리뷰_λκΈ°μ€_κΈ_κ°μ, | ||
final Long 리뷰_μ§νμ€_κΈ_κ°μ, | ||
final Long 리뷰_μλ£_κΈ_κ°μ, | ||
final Long κΈ°κ°_λ§λ£_κΈ_κ°μ | ||
) { | ||
final RunnerPostResponse.StatusCount actual = response.as(RunnerPostResponse.StatusCount.class); | ||
|
||
assertAll( | ||
() -> assertThat(response.statusCode()).isEqualTo(HttpStatus.OK.value()), | ||
() -> assertThat(actual.notStarted()).isEqualTo(리뷰_λκΈ°μ€_κΈ_κ°μ), | ||
() -> assertThat(actual.inProgress()).isEqualTo(리뷰_μ§νμ€_κΈ_κ°μ), | ||
() -> assertThat(actual.done()).isEqualTo(리뷰_μλ£_κΈ_κ°μ), | ||
() -> assertThat(actual.overdue()).isEqualTo(κΈ°κ°_λ§λ£_κΈ_κ°μ) | ||
); | ||
} | ||
} | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
36 changes: 36 additions & 0 deletions
36
...aton/src/test/java/touch/baton/document/runnerpost/read/RunnerPostStatusCountApiTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
package touch.baton.document.runnerpost.read; | ||
|
||
import org.junit.jupiter.api.DisplayName; | ||
import org.junit.jupiter.api.Test; | ||
import org.springframework.restdocs.payload.JsonFieldType; | ||
import touch.baton.config.RestdocsConfig; | ||
import touch.baton.domain.runnerpost.query.controller.response.RunnerPostResponse; | ||
|
||
import static org.mockito.BDDMockito.when; | ||
import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get; | ||
import static org.springframework.restdocs.payload.PayloadDocumentation.fieldWithPath; | ||
import static org.springframework.restdocs.payload.PayloadDocumentation.responseFields; | ||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; | ||
|
||
class RunnerPostStatusCountApiTest extends RestdocsConfig { | ||
|
||
@DisplayName("κ²μκΈ μν λ³ μ΄ κ°μ λ°ν API ꡬν") | ||
@Test | ||
void countAllRunnerPostByReviewStatus() throws Exception { | ||
// when | ||
when(runnerPostQueryService.countAllRunnerPostByReviewStatus()) | ||
.thenReturn(new RunnerPostResponse.StatusCount(1L, 2L, 3L, 4L)); | ||
|
||
// then | ||
mockMvc.perform(get("/api/v1/posts/runner/count")) | ||
.andExpect(status().isOk()) | ||
.andDo(restDocs.document( | ||
responseFields( | ||
fieldWithPath("notStarted").type(JsonFieldType.NUMBER).description("리뷰_λκΈ°μ€_κ²μκΈ_μ΄_μ"), | ||
fieldWithPath("inProgress").type(JsonFieldType.NUMBER).description("리뷰_μ§νμ€_κ²μκΈ_μ΄_μ"), | ||
fieldWithPath("done").type(JsonFieldType.NUMBER).description("리뷰_μλ£_κ²μκΈ_μ΄_μ"), | ||
fieldWithPath("overdue").type(JsonFieldType.NUMBER).description("κΈ°κ°_λ§λ£_κ²μκΈ_μ΄_μ") | ||
)) | ||
); | ||
} | ||
} |
Oops, something went wrong.