Skip to content

Commit 7b2a40b

Browse files
authoredSep 4, 2024··
MongoService에서 coroutine 제거 (#113)
* MongoService CoroutineScope 제거 * Mock MongoService in test
1 parent 2f00138 commit 7b2a40b

File tree

3 files changed

+11
-15
lines changed

3 files changed

+11
-15
lines changed
 

‎core/build.gradle.kts

-2
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@ dependencies {
2020

2121
implementation("org.springframework.boot:spring-boot-starter-data-redis")
2222

23-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core")
24-
2523
runtimeOnly("com.mysql:mysql-connector-j")
2624
kapt("com.querydsl:querydsl-apt::jakarta")
2725
}
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
package com.wafflestudio.snuttev.core.domain.mongo
22

33
import com.wafflestudio.snuttev.core.domain.lecture.model.LectureRatingDao
4-
import kotlinx.coroutines.CoroutineScope
5-
import kotlinx.coroutines.Dispatchers
6-
import kotlinx.coroutines.launch
74
import org.springframework.data.mongodb.core.MongoTemplate
85
import org.springframework.data.mongodb.core.query.Criteria
96
import org.springframework.data.mongodb.core.query.Query
@@ -15,15 +12,13 @@ class MongoService(
1512
private val mongoTemplate: MongoTemplate,
1613
) {
1714
fun updateEvInfoToSnuttIds(snuttIds: List<String>, evInfo: LectureRatingDao?) =
18-
CoroutineScope(Dispatchers.IO).launch {
19-
runCatching {
20-
mongoTemplate.updateMulti(
21-
Query(Criteria.where("_id").`in`(snuttIds)),
22-
Update().set("evInfo.evId", evInfo?.id)
23-
.set("evInfo.avgRating", evInfo?.avgRating)
24-
.set("evInfo.count", evInfo?.count),
25-
"lectures",
26-
)
27-
}
15+
runCatching {
16+
mongoTemplate.updateMulti(
17+
Query(Criteria.where("_id").`in`(snuttIds)),
18+
Update().set("evInfo.evId", evInfo?.id)
19+
.set("evInfo.avgRating", evInfo?.avgRating)
20+
.set("evInfo.count", evInfo?.count),
21+
"lectures",
22+
)
2823
}
2924
}

‎core/src/test/kotlin/com/wafflestudio/snuttev/core/domain/evaluation/service/EvaluationServiceTest.kt

+3
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,15 @@ import com.wafflestudio.snuttev.core.domain.lecture.model.Lecture
1414
import com.wafflestudio.snuttev.core.domain.lecture.model.SemesterLecture
1515
import com.wafflestudio.snuttev.core.domain.lecture.repository.LectureRepository
1616
import com.wafflestudio.snuttev.core.domain.lecture.repository.SemesterLectureRepository
17+
import com.wafflestudio.snuttev.core.domain.mongo.MongoService
1718
import org.assertj.core.api.Assertions.assertThat
1819
import org.assertj.core.api.Assertions.assertThatNoException
1920
import org.assertj.core.api.Assertions.assertThatThrownBy
2021
import org.junit.jupiter.api.BeforeEach
2122
import org.junit.jupiter.api.Test
2223
import org.springframework.beans.factory.annotation.Autowired
2324
import org.springframework.boot.test.context.SpringBootTest
25+
import org.springframework.boot.test.mock.mockito.MockBean
2426
import org.springframework.data.repository.findByIdOrNull
2527
import org.springframework.transaction.annotation.Transactional
2628
import kotlin.random.Random
@@ -34,6 +36,7 @@ class EvaluationServiceTest @Autowired constructor(
3436
private val lectureRepository: LectureRepository,
3537
private val semesterLectureRepository: SemesterLectureRepository,
3638
private val evaluationLikeRepository: EvaluationLikeRepository,
39+
@MockBean private val mongoService: MongoService,
3740
) {
3841
@BeforeEach
3942
fun setup() {

0 commit comments

Comments
 (0)
Please sign in to comment.