Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 0 additions & 13 deletions src/test/java/study/StringTest.java

This file was deleted.

51 changes: 51 additions & 0 deletions src/test/java/study/mission0/SetTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
package study.mission0;


import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
import org.junit.jupiter.params.provider.ValueSource;

import java.util.HashSet;
import java.util.Set;

import static org.assertj.core.api.AssertionsForClassTypes.assertThat;

public class SetTest {
private Set<Integer> numbers;

@BeforeEach
void setUp(){
numbers = new HashSet<>();

numbers.add(1);
numbers.add(2);
numbers.add(3);
}


@Test
@DisplayName("요구사항 1: Set 의 크기를 확인한다.")
void checkSize(){
assertThat(numbers.size()).isEqualTo(4);
}


@ParameterizedTest
@ValueSource(ints = {1, 2, 3})
@DisplayName("요구사항 2: contains() 메소드를 활용해 값 존재하는지 확인하며 ParameterizedTest 를 이용해 중복코드를 제거한다.")
void isContainsNumber(int number){
assertThat(numbers.contains(number)).isTrue();
}


@ParameterizedTest
@CsvSource(value = {"1,true", "2,true", "3,true", "4,false", "5,false"})
@DisplayName("요구사항 3: contains() 메소드를 활용해 값 존재하는지 확인하며 입력값에 따라 true, false 를 반환한다.")
void isContains_expectedTrueOrFalse(int input, boolean expected){
assertThat(numbers.contains(input)).isEqualTo(expected);
}

}
41 changes: 41 additions & 0 deletions src/test/java/study/mission0/StringTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package study.mission0;

import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertThrows;

public class StringTest {
@Test
void replace() {
String actual = "abc".replace("b", "d");
assertThat(actual).isEqualTo("adc");
}


@Test
@DisplayName("요구사항 1 : split() 함수를 이용해 문자열을 분리시킨다.")
void split(){
String[] splitValues = "1,2".split(",");
assertThat(splitValues).contains("1");
assertThat(splitValues).containsExactly("1", "2"); // 원소가 정확히 일치하는지 확인
}


@Test
@DisplayName("요구사항 2 : substring() 함수를 이용해 괄호를 제거 시킨다.")
void substringParentheses(){
String value = "(1,2)";
String subValues = value.substring(1, value.length()-1);
assertThat(subValues).isEqualTo("1,2");
}


@Test
@DisplayName("요구사항 3 : chatAt() 메소드를 사용해 StringIndexOutOfBoundsException 을 발생시킨다.")
void chatAt_StringIndexOutOfBoundsException(){
String value = "abc";
assertThrows(StringIndexOutOfBoundsException.class, () -> value.charAt(value.length()+1));
}
}