@@ -3,6 +3,11 @@ package com.idle.data.repository.auth
3
3
import com.idle.datastore.datasource.TokenDataSource
4
4
import com.idle.datastore.datasource.UserInfoDataSource
5
5
import com.idle.domain.model.auth.UserType
6
+ import com.idle.domain.model.profile.CenterProfile
7
+ import com.idle.domain.model.profile.WorkerProfile
8
+ import com.idle.domain.repositorry.auth.AuthRepository
9
+ import com.idle.domain.repositorry.auth.TokenRepository
10
+ import com.idle.domain.repositorry.profile.ProfileRepository
6
11
import com.idle.network.model.token.TokenResponse
7
12
import com.idle.network.source.auth.AuthDataSource
8
13
import io.mockk.Runs
@@ -20,25 +25,29 @@ class AuthRepositoryImplTest {
20
25
private lateinit var authDataSource: AuthDataSource
21
26
private lateinit var tokenDataSource: TokenDataSource
22
27
private lateinit var userInfoDataSource: UserInfoDataSource
23
- private lateinit var authRepository: AuthRepositoryImpl
24
- private lateinit var tokenRepository: TokenRepositoryImpl
28
+ private lateinit var authRepository: AuthRepository
29
+ private lateinit var tokenRepository: TokenRepository
30
+ private lateinit var profileRepository: ProfileRepository
25
31
26
32
@BeforeEach
27
33
fun setUp () {
28
34
authDataSource = mockk()
29
35
tokenDataSource = mockk()
30
36
userInfoDataSource = mockk()
31
37
tokenRepository = mockk()
38
+ profileRepository = mockk()
32
39
authRepository = AuthRepositoryImpl (
33
40
authDataSource = authDataSource,
34
41
tokenDataSource = tokenDataSource,
35
42
userInfoDataSource = userInfoDataSource,
43
+ profileRepository = profileRepository,
36
44
tokenRepository = tokenRepository,
37
45
)
38
46
39
47
coEvery { tokenDataSource.setAccessToken(any()) } just Runs
40
48
coEvery { tokenDataSource.setRefreshToken(any()) } just Runs
41
49
coEvery { userInfoDataSource.setUserType(any()) } just Runs
50
+ coEvery { userInfoDataSource.setUserInfo(any()) } just Runs
42
51
coEvery { tokenDataSource.clearToken() } just Runs
43
52
coEvery { userInfoDataSource.clearUserType() } just Runs
44
53
coEvery { userInfoDataSource.clearUserInfo() } just Runs
@@ -51,7 +60,9 @@ class AuthRepositoryImplTest {
51
60
fun `센터장이 로그인 성공했을 경우 토큰을 저장하고 디바이스 토큰을 서버로 보낸다` () = runTest {
52
61
// Given
53
62
val tokenResponse = TokenResponse (" accessToken" , " refreshToken" )
63
+ val centerProfile = mockk<CenterProfile >()
54
64
coEvery { authDataSource.signInCenter(any()) } returns Result .success(tokenResponse)
65
+ coEvery { profileRepository.getMyCenterProfile() } returns Result .success(centerProfile)
55
66
56
67
// When
57
68
val result = authRepository.signInCenter(" identifier" , " password" )
@@ -68,7 +79,9 @@ class AuthRepositoryImplTest {
68
79
fun `요양보호사가 회원가입에 성공했을 경우 토큰을 저장하고 디바이스 토큰을 서버로 보낸다` () = runTest {
69
80
// Given
70
81
val tokenResponse = TokenResponse (" accessToken" , " refreshToken" )
82
+ val workerProfile = mockk<WorkerProfile >()
71
83
coEvery { authDataSource.signUpWorker(any()) } returns Result .success(tokenResponse)
84
+ coEvery { profileRepository.getMyWorkerProfile() } returns Result .success(workerProfile)
72
85
73
86
// When
74
87
val result = authRepository.signUpWorker(" name" , 1990 , " male" , " 01012345678" , " road" , " lot" )
@@ -81,23 +94,6 @@ class AuthRepositoryImplTest {
81
94
coVerify { tokenRepository.postDeviceToken(" testToken" , " CARER" ) }
82
95
}
83
96
84
- @Test
85
- fun `요양보호사가 로그인했을 경우 토큰을 저장하고 디바이스 토큰을 서버로 보낸다` () = runTest {
86
- // Given
87
- val tokenResponse = TokenResponse (" accessToken" , " refreshToken" )
88
- coEvery { authDataSource.signInWorker(any()) } returns Result .success(tokenResponse)
89
-
90
- // When
91
- val result = authRepository.signInWorker(" 01012345678" , " authCode" )
92
-
93
- // Then
94
- assertTrue(result.isSuccess)
95
- coVerify { tokenDataSource.setAccessToken(" accessToken" ) }
96
- coVerify { tokenDataSource.setRefreshToken(" refreshToken" ) }
97
- coVerify { userInfoDataSource.setUserType(UserType .WORKER .apiValue) }
98
- coVerify { tokenRepository.postDeviceToken(" testToken" , " CARER" ) }
99
- }
100
-
101
97
@Test
102
98
fun `요양보호사가 로그아웃했을 경우 토큰을 제거한다` () = runTest {
103
99
// Given
0 commit comments