Я хочу смоделировать класс Service с зависимостями в другом классе обслуживания Mockito.
Класс обслуживания пользователей
@Service
class UserService(
val userRepository: UserRepository,
val userRoleRepository: UserRoleRepository,
val jwtGenerator: JwtGenerator,
val emailService: EmailService
)
Класс AdminService
@Service
class AdminService(
val userService: UserService,
val userRepository: UserRepository,
val adminRepository: AdminRepository
)
Теперь я пытаюсь написать модульный тест с этими классами следующим образом
@RunWith(MockitoJUnitRunner::class)
class AdminServiceTests {
private lateinit var createAdmin: CreateAdmin
@Mock
lateinit var userRepository: UserRepository
@Mock
lateinit var userRoleRepository: UserRoleRepository
@Mock
lateinit var jwtGenerator: JwtGenerator
@Mock
lateinit var emailService: EmailService
@InjectMocks
lateinit var userService: UserService
@Mock
lateinit var userRepository: UserRepository // Conflicting declarations
@Mock
lateinit var adminRepository: AdminRepository
@InjectMocks
lateinit var adminService: AdminService
@Before
fun setup() {
this.createAdmin = CreateAdmin().apply {
email = "admin@gmail.com"
name = "admin"
password = "qwerty"
phone = 9873555555555
}
}
@Test
fun testCreateAdmin() {
val result = adminService.createAdmin(createAdmin)
Assert.assertEquals(true, result)
}
}
Посоветуйте, пожалуйста, как смоделировать userService внутри AdminService со всеми введенными четырьмя зависимостями