Thomas Smits 2025-10-08 13:53:53 +02:00
parent 67b72ea8b8
commit dd9f967ebd
1 changed files with 0 additions and 159 deletions

View File

@ -1,159 +0,0 @@
package pr2.strukturierung.vektor;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
/**
* Test für die Klasse Vektor.
*/
class VektorTest {
@Test
void testCreation() {
Vektor vektor = new Vektor(3, 1, -5);
assertEquals(3, vektor.getX(), 0.01d);
assertEquals(1, vektor.getY(), 0.01d);
assertEquals(-5, vektor.getZ(), 0.01d);
}
@Test
void testEqualsAndHashCode() {
Vektor vektor1 = new Vektor(5, 7, 9);
Vektor vektor2 = new Vektor(5, 7, 9);
Vektor vektor3 = new Vektor(5, 7, 2);
Vektor vektor4 = new Vektor(5, 3, 9);
Vektor vektor5 = new Vektor(5, 7, 8);
assertEquals(vektor1, vektor2);
assertEquals(vektor2, vektor1);
assertEquals(vektor1, vektor1);
assertEquals(vektor2, vektor2);
assertNotEquals(vektor1, vektor3);
assertNotEquals(vektor1, vektor4);
assertNotEquals(vektor1, vektor5);
assertNotEquals(vektor3, vektor1);
assertNotEquals(vektor4, vektor1);
assertNotEquals(vektor5, vektor1);
assertNotEquals(null, vektor1);
assertNotEquals("Hello", vektor1);
assertEquals(vektor1.hashCode(), vektor2.hashCode());
}
@Test
void testSkalarMultiplikationSkalar() {
Vektor vektor1 = new Vektor(1, -5, 3);
Vektor ergebnis1 = new Vektor(6, -30, 18);
Vektor vektor2 = new Vektor(1, -5, 3);
Vektor ergebnis2 = new Vektor(-3, 15, -9);
assertEquals(ergebnis1, vektor1.multipliziere(6));
assertEquals(ergebnis2, vektor2.multipliziere(-3));
Vektor vektor3 = new Vektor(3, 4, 5);
assertEquals(1, vektor3.einheitsvektor().betrag(), 0.01d);
}
@Test
void testSkalarMultiplikationVektor() {
Vektor vektor1 = new Vektor(1, 2, 3);
Vektor vektor2 = new Vektor(-7, 8, 9);
double ergebnis = 36;
assertEquals(ergebnis, vektor1.multipliziere(vektor2), 0.0001);
Vektor vektor3 = new Vektor(-5, 9, 7);
Vektor vektor4 = new Vektor(10, 3, 8);
double ergebnis2 = 33;
assertEquals(ergebnis2, vektor3.multipliziere(vektor4), 0.0001);
}
@Test
void testAdditionUndSubtraktion() {
Vektor a = new Vektor(4, 0, 8);
Vektor b = new Vektor(-1, 4, 7);
Vektor c = new Vektor(3, 4, 15);
Vektor d = new Vektor(5, -4, 1);
assertEquals(c, a.addiere(b));
assertEquals(d, a.subtrahiere(b));
assertEquals(d, b.subtrahiere(a).multipliziere(-1));
assertEquals(a.addiere(b), b.addiere(a));
assertEquals(a, a.addiere(b).subtrahiere(b));
}
@Test
void testBetrag() {
Vektor a = new Vektor(1, 1, 1);
Vektor b = new Vektor(2, 0, 0);
Vektor c = new Vektor(3, 4, 5);
assertEquals(Math.sqrt(3), a.betrag(), 0.00001);
assertEquals(2, b.betrag(), 0.00001);
assertEquals(Math.sqrt(50), c.betrag(), 0.00001);
}
@Test
void testKreuzprodukt() {
Vektor a = new Vektor(1, 2, 3);
Vektor b = new Vektor(-7, 8, 9);
Vektor c = new Vektor(-6, -30, 22);
assertEquals(c, a.kreuzprodukt(b));
}
@Test
void testAufgabenStellung1() {
Vektor a = new Vektor(2, 0, 5);
Vektor b = new Vektor(-1, 5, -2);
Vektor c = new Vektor(2, 1, 2);
assertEquals(-31, b.kreuzprodukt(c).multipliziere(a), 0.001d);
}
@Test
void testAufgabenStellung2() {
Vektor a = new Vektor(1, 2, 8);
Vektor b = new Vektor(4, 3, 5);
Vektor e = new Vektor(-14, 27, -5);
assertEquals(e, a.kreuzprodukt(b));
}
@Test
void testAufgabenStellung3() {
Vektor a = new Vektor(1, -2, 2);
Vektor b = new Vektor(3, 2, -4);
assertEquals(-9, a.multipliziere(b), 0.001d);
}
@Test
void testKollinear() {
Vektor a = new Vektor(4, 5, 7);
Vektor b = new Vektor(16, 20, 28);
assertTrue(a.isKollinear(b));
Vektor c = new Vektor(16, 20, 21);
assertFalse(a.isKollinear(c));
}
@Test
void testWinkel() {
Vektor a = new Vektor(3, -1, 2);
Vektor b = new Vektor(1, 2, 4);
assertEquals(58.3, a.winkel(b), 0.1d);
}
}