1 Star 0 Fork 0

hchengmx/junit5-samples

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
NestedSampleTest.java 3.56 KB
一键复制 编辑 原始数据 按行查看 历史
hchengmx 提交于 2021-08-18 20:26 . feat: add nested sample test
package com.hchengmx.nested;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
public class NestedSampleTest {
@Nested
class InitList{
@Test
void init_with_new_ArrayList() {
List<String> list = new ArrayList<>();
list.add("String A");
list.add("String B");
list.add("String C");
}
@Test
void init_with_AsList() {
List<String> list2 = Arrays.asList("String A", "String B", "String C");
System.out.println();
}
}
@Nested
class WhenNew {
List<String> list = new ArrayList<>();
@Test
void is_empty() {
assertTrue(list.isEmpty());
}
@Test
void size_is_0_when_init() {
assertEquals(0, list.size());
}
@Test
void throws_IndexOutOfBoundsException_when_removed_index_is_greater_than_size(){
assertThrows(IndexOutOfBoundsException.class, () -> list.remove(0));
}
}
@Nested
class WhenAddingElement {
List<String> list = new ArrayList<>();
String anElementA = "String A";
String anElementB = "String B";
@Test
void add_element_without_index(){
list.add(anElementA);
assertEquals(anElementA, list.get(0));
}
@Test
void add_element_with_index(){
list.add(anElementA);
list.add(0, anElementB);
assertEquals(anElementB, list.get(0));
assertEquals(anElementA, list.get(1));
}
@Test
void addAll_list(){
list.add("String C");
List<String> copiedList = Arrays.asList(anElementA, anElementB);
list.addAll(copiedList);
assertEquals(3,list.size());
}
@AfterEach
void println(){
System.out.println(list);
}
}
@Nested
class AfterAddElement {
String anElement = "String A";
List<String> list = new ArrayList<>();
@BeforeEach
void beforeEach(){
list.add(anElement);
}
@Test
void is_not_empty(){
assertFalse(list.isEmpty());
}
@Test
void return_element_when_remove(){
assertEquals(anElement, list.remove(0));
}
@Test
void size_minus_1_when_remove(){
int originalSize = list.size();
list.remove(0);
assertEquals(originalSize-1, list.size());
}
@Nested
class traversal{
String anElementB = "String B";
@BeforeEach
void addElementB(){
list.add(anElementB);
}
@Test
void for_method_traversal(){
for(String value: list){
System.out.println(value);
}
}
@Test
void iterator_traversal(){
Iterator iterator = list.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/hchengmx/junit5-samples.git
git@gitee.com:hchengmx/junit5-samples.git
hchengmx
junit5-samples
junit5-samples
master

搜索帮助