Skip to content

Commit

Permalink
정적인 메서드로 인해 힘든 경우 - #79
Browse files Browse the repository at this point in the history
1. https://unabated.tistory.com/1041 - java에서 static을 지양해야하는 이유
	- 테스트 중 static한 field 또는 method를 사용할 경우 모든
	클래스는 예상되는 상태에서 시작되어야하며 매우 까다로워질 수 있다.
2. AuthUtil 클래스가 어떠한 인증 서버와 통신하는 경우 동작하고 있는 인증
서버가 필요하며, 통신할 인증 서버 정보를 시스템 프로퍼티에서 가져온다면
그 정보 또한 테스트 환경에 맞게 설정해야 한다.
  • Loading branch information
hou27 committed Feb 16, 2023
1 parent ce7fac4 commit 6631623
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions 김정호/src/test/java/com/hou27/chap08/LoginService.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package com.hou27.chap08;

public class LoginService {

private String authKey = "some_key";
private CustomerRepository customerRepository;

public LoginService(CustomerRepository customerRepository) {
this.customerRepository = customerRepository;
}

public LoginResult login(String id, String password) {
int resp = 0;
boolean authorized = AuthUtil.authorize(authKey); // 정적 메서드를 사용
if (authorized) {
resp = AuthUtil.authenticate(id, password); // 정적 메서드를 사용
} else {
resp = -1;
}

if (resp == -1) {
return LoginResult.badAuthKey();
} else if (resp == 1) {
return LoginResult.success();
} else {
return LoginResult.fail();
}
}

}

0 comments on commit 6631623

Please sign in to comment.