-
Notifications
You must be signed in to change notification settings - Fork 33
Expand file tree
/
Copy pathCarNameTest.java
More file actions
30 lines (25 loc) · 1.13 KB
/
CarNameTest.java
File metadata and controls
30 lines (25 loc) · 1.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package domain;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
import static org.assertj.core.api.AssertionsForClassTypes.assertThatCode;
import static org.assertj.core.api.AssertionsForClassTypes.assertThatThrownBy;
public class CarNameTest {
@DisplayName("차량 이름은 1~5자 사이여야 한다")
@ParameterizedTest
@CsvSource(value = {"'', 차량 이름이 존재해야 합니다.",
"123456, 차량 이름은 5글자 이하여야 합니다.",
"123456789, 이름은 5글자 이하여야 합니다."})
void 이름_예외_발생(String carName, String errorMessage) {
assertThatThrownBy(() -> new CarName(carName))
.isInstanceOf(IllegalArgumentException.class)
.hasMessage(errorMessage);
}
@DisplayName("1~5글자 이름은 유효")
@ParameterizedTest
@CsvSource(value = {"1", "123", "123", "1234"})
void 유효한_이름(String carName) {
assertThatCode(() -> new CarName(carName))
.doesNotThrowAnyException();
}
}