test(country-fixture): 강제 국가 매핑 판별 함수와 회귀 테스트를 추가한다
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
package kr.co.vividnext.sodalive.support
|
||||
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
import kr.co.vividnext.sodalive.member.contentpreference.resolveCountryCodeWithForcedMapping
|
||||
|
||||
// Fixture selection only: two distinct headers detect forced countries without copying member IDs.
|
||||
internal fun Member.hasForcedCountryMapping(): Boolean {
|
||||
return resolveCountryCodeWithForcedMapping(this, "KR") != "KR" ||
|
||||
resolveCountryCodeWithForcedMapping(this, "JP") != "JP"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package kr.co.vividnext.sodalive.support
|
||||
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
import org.junit.jupiter.api.Assertions.assertEquals
|
||||
import org.junit.jupiter.api.DisplayName
|
||||
import org.junit.jupiter.params.ParameterizedTest
|
||||
import org.junit.jupiter.params.provider.CsvSource
|
||||
|
||||
class CountryMemberFixturesTest {
|
||||
@ParameterizedTest
|
||||
@CsvSource("16, true", "17958, true", "29721, true", "100, false")
|
||||
@DisplayName("일반 회원 fixture는 강제 국가 매핑 회원과 기존 목록에서 누락된 회원을 제외한다")
|
||||
fun shouldIdentifyForcedCountryMappingsForFixtureSelection(memberId: Long, expected: Boolean) {
|
||||
val member = Member(
|
||||
email = "member$memberId@test.com",
|
||||
password = "password",
|
||||
nickname = "member$memberId"
|
||||
).apply { id = memberId }
|
||||
|
||||
assertEquals(expected, member.hasForcedCountryMapping())
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user