/
NikolayVasiljev
/
java-reboot
Обзор
Документация
Войти
/
NikolayVasiljev
/
java-reboot
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
lesson03/src/test/java/CustomArrayImplTest.java
198 строк
7 KB
VasiljevNik
Lesson 8.3
24 июн 2025, 05:51
24 июн 2025, 05:51
de12765
Код
Авторство
О чём код?
import ru.sberbank.jd.lesson03.CustomArrayImpl; import org.junit.Assert; import org.junit.Test; import java.util.*; public class CustomArrayImplTest { CustomArrayImpl<Object> customArrayImpl= new CustomArrayImpl<>(); /** * Тестируем методы size() */ @Test public void sizeTest() { customArrayImpl.addAll(Arrays.asList(1,2,3)); Assert.assertEquals(3, customArrayImpl.size()); customArrayImpl.remove((Integer) 1); customArrayImpl.remove(0); customArrayImpl.remove((Integer) 3); Assert.assertEquals(0, customArrayImpl.size());} /** * Тестируем метод isEmpty() */ @Test public void isEmptyTest() { customArrayImpl.addAll(Arrays.asList(1,2,3)); Assert.assertFalse(customArrayImpl.isEmpty()); customArrayImpl.remove((Integer) 1); customArrayImpl.remove(0); customArrayImpl.remove((Integer) 3); Assert.assertTrue(customArrayImpl.isEmpty());} /** * Тестируем метод add(T item) */ @Test public void isAddTitemTest1() { Assert.assertTrue(customArrayImpl.add(1)); Assert.assertEquals(1, customArrayImpl.get(0)); } /** * Тестируем метод boolean addAll(T[] items) и Object[] toArray() */ @Test public void isAddTitemTest2() { Object[] list1={1,2,3}; Object[] list2={}; Assert.assertTrue(customArrayImpl.addAll(list1)); Assert.assertArrayEquals(list1,customArrayImpl.toArray()); Assert.assertThrows(IllegalArgumentException.class,() -> customArrayImpl.addAll(list2)); } /** *Тестируем метод addAll(Collection<T> items) */ @Test public void isAddTitemTest3() { Collection<Object> collection1= Arrays.asList(4,5); Collection<Object> collection2=null; Object[] list={4,5}; Assert.assertTrue(customArrayImpl.addAll(collection1)); Assert.assertArrayEquals(list,customArrayImpl.toArray()); Assert.assertThrows(IllegalArgumentException.class,() -> customArrayImpl.addAll(collection2));} /** * Тестируем метод addAll(int index, T[] items) */ @Test public void isAddTitemTest4() { Object[] list1={1,2,3}; Object[] list2={12,14}; Object[] list3={1,12,14,2,3}; Object[] list4={}; Assert.assertTrue(customArrayImpl.addAll(list1)); Assert.assertTrue(customArrayImpl.addAll(1,list2)); Assert.assertArrayEquals(list3,customArrayImpl.toArray()); Assert.assertThrows(IllegalArgumentException.class,() -> customArrayImpl.addAll(list4)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.addAll(-1,list2)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.addAll(25,list2)); } /** * Тестируем метод T get(int index) */ @Test public void isTgetTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Assert.assertEquals(12,customArrayImpl.get(1)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(-3)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(15)); } /** * Тестируем метод T set(int index, T item) */ @Test public void isTsetTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Object a=9; Object[] list={1,12,9,2,3}; customArrayImpl.set(2,a); Assert.assertArrayEquals(list,customArrayImpl.toArray()); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(-3)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(5)); } /** * Тестируем метод void remove(int index) */ @Test public void isRemoveIndexTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Object[] list={1,14,2,3}; customArrayImpl.remove(1); Assert.assertArrayEquals(list,customArrayImpl.toArray()); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(-3)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(4)); } /** * Тестируем метод boolean remove (T item) */ @Test public void isRemoveTitemTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Object[] list={1,14,2,3}; Assert.assertTrue(customArrayImpl.remove((Integer)12)); Assert.assertArrayEquals(list,customArrayImpl.toArray()); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(-3)); Assert.assertThrows(ArrayIndexOutOfBoundsException.class,() -> customArrayImpl.get(4)); } /** * Тестируем boolean contains(T item) */ @Test public void isContainTitemTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Assert.assertTrue(customArrayImpl.contains(12)); } /** * Тестируем int indexOf(T item) */ @Test public void isIndexofTitemTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Assert.assertEquals(1,customArrayImpl.indexOf(12)); } /** * Тестируем метод int getCapacity() */ @Test public void isGetcapacityTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Assert.assertEquals(5,customArrayImpl.getCapacity()); } /** * Тестируем метод void reverse() */ @Test public void isReverseTest() { Collection<Object> collection=Arrays.asList(1,12,14,2,3); customArrayImpl.addAll(collection); Object[] list={3,2,14,12,1}; customArrayImpl.reverse(); Assert.assertArrayEquals(list,customArrayImpl.toArray()); } /** * Тестируем метод toString */ @Test public void isTostringTest() { Collection<Object> collection=Arrays.asList(1,2,3); customArrayImpl.addAll(collection); String a=customArrayImpl.toString(); String b=collection.toString(); Assert.assertEquals(a,b); } }