Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions src/main/java/com/amcamp/domain/task/domain/Task.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,9 +89,12 @@ public void updateTaskBasicInfo(TaskBasicInfoUpdateRequest request) {
}

public void updateTaskStatus() {
if (this.taskStatus != TaskStatus.COMPLETED) this.taskStatus = TaskStatus.COMPLETED;
else {
if (this.taskStatus != TaskStatus.COMPLETED) {
this.taskStatus = TaskStatus.COMPLETED;
this.dueDt = LocalDate.now();
} else {
this.taskStatus = TaskStatus.ON_GOING;
this.dueDt = null;
}
}

Expand Down
9 changes: 6 additions & 3 deletions src/test/java/com/amcamp/domain/task/TaskServiceTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -271,6 +271,7 @@ class 태스크_수정_시 {
}

@Test
@Transactional
void 정상적으로_완료된_태스크를_미완료처리한다() {
// given
TaskCreateRequest taskRequest =
Expand All @@ -283,12 +284,14 @@ class 태스크_수정_시 {
.orElseThrow(() -> new CommonException(TaskErrorCode.TASK_NOT_FOUND));

task.assignTask(participant);
task.updateTaskStatus();

// when
// when & then
task.updateTaskStatus();
assertThat(task.getDueDt()).isEqualTo(LocalDate.now());

// then
// when & then
task.updateTaskStatus();
assertThat(task.getDueDt()).isNull();
assertThat(task.getTaskStatus()).isEqualTo(TaskStatus.ON_GOING);
}

Expand Down