fix(i18n): 지원하지 않는 원문 언어 번역 작업을 제외한다

This commit is contained in:
2026-05-07 12:16:35 +09:00
parent 13ca6a97b9
commit 870afb03da
3 changed files with 41 additions and 0 deletions

View File

@@ -21,6 +21,8 @@ class TranslationJobScheduler(
if (normalizedText.isBlank()) return
val normalizedSourceLanguage = sourceLanguage.lowercase()
if (!SUPPORTED_SOURCE_LANGUAGE_CODES.contains(normalizedSourceLanguage)) return
val normalizedTargetLanguage = targetLanguage.lowercase()
if (normalizedSourceLanguage == normalizedTargetLanguage) return
@@ -47,4 +49,8 @@ class TranslationJobScheduler(
)
)
}
companion object {
private val SUPPORTED_SOURCE_LANGUAGE_CODES = setOf("ko", "en", "ja")
}
}

View File

@@ -84,4 +84,21 @@ class TranslationJobSchedulerTest {
Mockito.verify(jobRepository, Mockito.never()).save(Mockito.any(TranslationJob::class.java))
}
@Test
fun shouldNotCreateJobWhenSourceLanguageIsUnsupported() {
val jobRepository = Mockito.mock(TranslationJobRepository::class.java)
val scheduler = TranslationJobScheduler(jobRepository)
scheduler.scheduleMissingTranslation(
resourceType = LanguageTranslationTargetType.CONTENT,
resourceId = 10L,
fieldKey = "title",
sourceText = "제목",
sourceLanguage = "fr",
targetLanguage = "en"
)
Mockito.verifyNoInteractions(jobRepository)
}
}