Info10Rep/ArrayExperimenteTest.java

207 lines
6.0 KiB
Java

import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.Arrays;
/**
* The test class ArrayExperimenteTest.
*
* @author Urs Lautebach
* überarbeitet Ho, 24
* @version 2017-10
*/
public class ArrayExperimenteTest
{
/**
* Sets up the test fixture.
*
* Called before every test case method.
*/
@Before
public void setUp()
{
}
/**
* Tears down the test fixture.
*
* Called after every test case method.
*/
@After
public void tearDown()
{
}
@Test
public void testistEnthalten()
{
int[] testArray = new int[] {1, -43, 1000, 1000, 3, 4, 13, 1000, 70, -41};
assertTrue(ArrayExperimente.istEnthalten(1000, testArray));
assertTrue(ArrayExperimente.istEnthalten(-41, testArray));
assertTrue(ArrayExperimente.istEnthalten(1, testArray));
assertFalse(ArrayExperimente.istEnthalten(77, testArray));
testArray = new int[] {66};
assertTrue(ArrayExperimente.istEnthalten(66, testArray));
assertFalse(ArrayExperimente.istEnthalten(77, testArray));
testArray = new int[] {};
assertFalse(ArrayExperimente.istEnthalten(77, testArray));
}
@Test
public void testindexVon()
{
int[] testArray = new int[] {1, -43, 1000, 1000, 3, 4, 13, 1000, 70, -41};
assertEquals(0, ArrayExperimente.indexVon(1, testArray));
assertEquals(1, ArrayExperimente.indexVon(-43, testArray));
assertEquals(9, ArrayExperimente.indexVon(-41, testArray));
assertEquals(-1, ArrayExperimente.indexVon(1231, testArray));
testArray = new int[] {66};
assertEquals(-1, ArrayExperimente.indexVon(1231, testArray));
assertEquals(0, ArrayExperimente.indexVon(66, testArray));
testArray = new int[] {};
assertEquals(-1, ArrayExperimente.indexVon(1231, testArray));
}
@Test
public void testmaxWert()
{
int[] testArray = new int[] {1, -43, 1000, 1000, 3, 4, 13, 1000, 70, -41};
assertEquals(1000, ArrayExperimente.maxWert(testArray));
testArray = new int[] {0, -43, -41};
assertEquals(0, ArrayExperimente.maxWert(testArray));
testArray = new int[] {-43, -41};
assertEquals(-41, ArrayExperimente.maxWert(testArray));
testArray = new int[] {66};
assertEquals(66, ArrayExperimente.maxWert(testArray));
}
@Test
public void testmaxIndex()
{
int[] testArray = new int[] {1, -43, 1000, 3, 4, 13, 70, -41};
assertEquals(2, ArrayExperimente.maxIndex(testArray));
testArray = new int[] {1, -43, 1000, 3, 4, 13, 70, -41, 5367};
assertEquals(8, ArrayExperimente.maxIndex(testArray));
testArray = new int[] {0, -43, -41};
assertEquals(0, ArrayExperimente.maxIndex(testArray));
testArray = new int[] {-43, -41};
assertEquals(1, ArrayExperimente.maxIndex(testArray));
testArray = new int[] {-41};
assertEquals(0, ArrayExperimente.maxIndex(testArray));
}
@Test
public void testquersumme()
{
int[] testArray = new int[] {1, -43, 3, 4, 13, 70, -41};
assertEquals(7, ArrayExperimente.summe(testArray));
testArray = new int[] {0, -43, -41};
assertEquals(-84, ArrayExperimente.summe(testArray));
// einelementiges Array:
testArray = new int[] {51};
assertEquals(51, ArrayExperimente.summe(testArray));
}
@Test
public void testaddiereJeweilsEins()
{
int[] test = new int[] {1, -43, 3, 4, 13, 70, -41};
int[] ergebnis = new int[] {2, -42, 4, 5, 14, 71, -40};
ArrayExperimente.addiereJeweilsEins(test);
assertArrayEquals(ergebnis, test);
}
@Test
public void testaddiereJeweilsD()
{
int[] test = new int[] {1, -43, 3, 4, 13, 70};
int d = 5;
int[] ergebnis = new int[] {6, -38, 8, 9, 18, 75};
ArrayExperimente.addiereJeweilsD(test, d);
assertArrayEquals(ergebnis, test);
}
@Test
public void testarrayUmdrehen()
{
// Array mit ungerader Laenge:
int[] test = new int[] { 1, -43, 3, 4, 13, 70, -41 };
int[] umgedreht = ArrayExperimente.arrayUmdrehen(test);
int[] ergebnis = new int[] { -41, 70, 13, 4, 3, -43, 1 };
assertEquals(ergebnis.length, umgedreht.length);
assertArrayEquals(ergebnis, umgedreht);
// Array mit gerader Laenge:
test = new int[] { 1, -43, 3, 4, 70, -41 };
umgedreht = ArrayExperimente.arrayUmdrehen(test);
ergebnis = new int[] {-41, 70, 4, 3, -43, 1};
assertEquals(ergebnis.length, umgedreht.length);
assertArrayEquals(ergebnis, umgedreht);
// Array mit Laenge 1:
test = new int[] { 1 };
ergebnis = new int[] {1};
umgedreht = ArrayExperimente.arrayUmdrehen(test);
assertEquals(ergebnis.length, umgedreht.length);
assertArrayEquals(ergebnis, umgedreht);
}
@Test
public void testarrayUmdrehenInPlace()
{
// Array mit ungerader Laenge:
int[] test = new int[] { 1, -43, 3, 4, 13, 70, -41 };
ArrayExperimente.arrayUmdrehenInPlace(test); //test umdrehen
int[] ergebnis = new int[] { -41, 70, 13, 4, 3, -43, 1 };
assertEquals(ergebnis.length, test.length);
assertArrayEquals(ergebnis, test);
// Array mit gerader Laenge:
test = new int[] { 1, -43, 3, 4, 70, -41 };
ArrayExperimente.arrayUmdrehenInPlace(test);
ergebnis = new int[] {-41, 70, 4, 3, -43, 1};
assertEquals(ergebnis.length, test.length);
assertArrayEquals(ergebnis, test);
// Array mit Laenge 1:
test = new int[] { 1 };
ergebnis = new int[] {1};
ArrayExperimente.arrayUmdrehenInPlace(test);
assertEquals(ergebnis.length, test.length);
assertArrayEquals(ergebnis, test);
}
}