저는 UserService 클래스 안에있는 메소드 (passwordComplexityCheck)를 조롱하려했습니다. 다음은Grails의 서비스 클래스 안에서 간단한 메소드를 조롱했습니다.
내가 내 테스트 클래스
def userService
controller.userService=new UserService()
controller.userService=[passwordComplexityCheck:{def k->
return true
}]
에 조롱 위해 한하지만이 작동하지 않는 것입니다.
다음은 UserService 클래스 및 메서드입니다.
class UserService {
//required declaration
........
public boolean passwordComplexityCheck(String password) {
log.debug("Enter(Method) - passwordComplexityCheck()")
if (password != null && password.trim() != "") {
if (password.length() < grailsApplication.config.user.password.min.length) {
return false
}
if (password == password.toLowerCase()) {
return false
}
if (password == password.toUpperCase()) {
return false
}
if (password.grep(~/\d+/).size == 0) {
return false
}
} else {
return false
}
return true
}
}
나는 true 또는 false를 반환 할 수있는 방식으로 조롱해야합니다. 메서드에 인수가 있으므로 조롱은 달라질 수 있습니까? 서비스에서 메소드를 조롱하는 일반적인 방법은 무엇입니까?
이 작동하지 않습니다? 오류가 있습니까? 또는 당신이 기대하는 행동을 얻지 못하고 있습니까? 어떤 예외 또는 동작을 알면 문제를 추적하는 데 도움이됩니다. – David
안녕하세요, 혼란에 드려 죄송합니다. UserService 클래스의 로그로 인해 오류가 발생했습니다. 로그를 서비스 클래스로 조롱하는 방법을 조언 해 주실 수 있습니까? –
log.debug ("Enter (Method) - passwordComplexityCheck()") –