Skip to content

Commit 691d11d

Browse files
committed
테스트 환경 PasswordEncoder 빈 등록
1 parent b2cfe68 commit 691d11d

File tree

3 files changed

+41
-1
lines changed

3 files changed

+41
-1
lines changed

src/test/java/test/commerce/CommerceApiApp_specs.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,24 @@
22

33
import commerce.CommerceApiApp;
44
import org.junit.jupiter.api.Test;
5+
import org.springframework.beans.factory.annotation.Autowired;
56
import org.springframework.boot.test.context.SpringBootTest;
7+
import org.springframework.security.crypto.password.PasswordEncoder;
8+
import org.springframework.security.crypto.password.Pbkdf2PasswordEncoder;
9+
10+
import static org.assertj.core.api.Assertions.assertThat;
611

712
@SpringBootTest(classes = CommerceApiApp.class)
813
public class CommerceApiApp_specs {
914

1015
@Test
1116
void 컨텍스트가_초기화된다() {
1217
}
18+
19+
@Test
20+
void PasswordEncoder_빈이_올바르게_설정된다(
21+
@Autowired PasswordEncoder actual
22+
) {
23+
assertThat(actual).isInstanceOf(Pbkdf2PasswordEncoder.class);
24+
}
1325
}

src/test/java/test/commerce/api/CommerceApiTest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,11 @@
1111
@Target(ElementType.TYPE)
1212
@Retention(RetentionPolicy.RUNTIME)
1313
@SpringBootTest(
14-
classes = { CommerceApiApp.class, TestFixtureConfiguration.class },
14+
classes = {
15+
CommerceApiApp.class,
16+
TestFixtureConfiguration.class,
17+
PasswordEncoderConfiguration.class,
18+
},
1519
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT
1620
)
1721
public @interface CommerceApiTest {
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package test.commerce.api;
2+
3+
import org.springframework.context.annotation.Bean;
4+
import org.springframework.context.annotation.Primary;
5+
import org.springframework.security.crypto.password.Pbkdf2PasswordEncoder;
6+
7+
import static org.springframework.security.crypto.password.Pbkdf2PasswordEncoder.SecretKeyFactoryAlgorithm.PBKDF2WithHmacSHA256;
8+
9+
public class PasswordEncoderConfiguration {
10+
11+
public static final int SALT_LENGTH = 16;
12+
public static final int ITERATIONS = 10;
13+
14+
@Bean
15+
@Primary
16+
Pbkdf2PasswordEncoder testPasswordEncoder() {
17+
return new Pbkdf2PasswordEncoder(
18+
"",
19+
SALT_LENGTH,
20+
ITERATIONS,
21+
PBKDF2WithHmacSHA256
22+
);
23+
}
24+
}

0 commit comments

Comments
 (0)