Java tutorial
/** * Copyright 2013 Th. K. Walter, Nrnberg. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package de.thkwalter.et.ortskurve; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; import org.apache.commons.math3.geometry.euclidean.twod.Vector2D; import org.junit.Before; import org.junit.Test; import de.thkwalter.koordinatensystem.Koordinatenachsen; /** * Diese Klasse enthlt Tests fr die Klasse {@link OrtskurveModell}. * * @author Th. K. Walter * @version 1.0 */ public class OrtskurveModellTest { /** * Ein Objekt der zu testenden Klasse {@link OrtskurveModell}. */ private OrtskurveModell ortskurveModell; /** * Die im Test verwendeten Messpunkte */ private Vector2D[] test_messpunkte; /** * Die im Test verwendete Ortskurve */ private Ortskurve ortskurve; /** * Die im Test verwendete Ortskurve der 2d-Ausgleichsrechnung */ private Ortskurve ortskurve2d; // ===================================================================================================================== // ===================================================================================================================== /** * Diese Methode initialisiert die Tests. * * @throws java.lang.Exception */ @Before public void setUp() throws Exception { // Ein Objekt der zu testenden Klasse OrtskurveModell wird initialisiert. this.ortskurveModell = new OrtskurveModell(); // Die im Test verwendeten Messpunkte werden erzeugt. this.test_messpunkte = new Vector2D[] { new Vector2D(2.0, 0.0), new Vector2D(1.0, 1.0) }; // Der im Test verwendete Ortskurve wird erzeugt. this.ortskurve = new Ortskurve(new Vector2D(1.0, 0.0), 1.0); // Die im Test verwendete Ortskurve der 2d-Ausgleichsrechnung wird erzeugt. this.ortskurve2d = new Ortskurve(new Vector2D(1.0, -0.5), 1.0); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getYPixelGrafik()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetYPixelGrafik() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Anzahl der Pixel der Grafik in x-Richtung wird gelesen. Field yPixelGrafikFeld = OrtskurveModell.class.getDeclaredField("yPixelGrafik"); yPixelGrafikFeld.setAccessible(true); int yPixelGrafik = yPixelGrafikFeld.getInt(this.ortskurveModell); // Es wird berprft, ob die korrekte Anzahl der Pixel der Grafik in x-Richtung zurckgegeben wird. assertEquals(yPixelGrafik, this.ortskurveModell.getyPixelGrafik()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getXPixelGrafik()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetXPixelGrafik() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Anzahl der Pixel der Grafik in x-Richtung wird gelesen. Field xPixelGrafikFeld = OrtskurveModell.class.getDeclaredField("xPixelGrafik"); xPixelGrafikFeld.setAccessible(true); int xPixelGrafik = xPixelGrafikFeld.getInt(this.ortskurveModell); // Es wird berprft, ob die korrekte Anzahl der Pixel der Grafik in x-Richtung zurckgegeben wird. assertEquals(xPixelGrafik, this.ortskurveModell.getxPixelGrafik()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getOrtskurve()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetOrtskurve() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Ortskuve wird im Objekt der zu testenden Klasse OrtskurveModell gespeichert. Field ortskurveFeld = OrtskurveModell.class.getDeclaredField("ortskurve"); ortskurveFeld.setAccessible(true); ortskurveFeld.set(this.ortskurveModell, this.ortskurve); // Es wird berprft, ob der Mittelpunkt der Ortskurve korrekt zurckgegeben wird. assertEquals(this.ortskurve, this.ortskurveModell.getOrtskurve()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#setOrtskurve(Ortskurve)}. */ @Test public void testSetOrtskurve() { // Die zu testende Methode wird ausgefhrt. this.ortskurveModell.setOrtskurve(this.ortskurve); // Es wird berprft, ob die Ortskurve korrekt im Objekt der zu testenden Klasse gespeichert worden ist. assertEquals(this.ortskurve, this.ortskurveModell.getOrtskurve()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#randpunkteZusammenstellen(Vector2D[])}. * * @throws NoSuchMethodException * @throws SecurityException * @throws InvocationTargetException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testRandpunkteZusammenstellen1() throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAccessException, InvocationTargetException { // Das Modell wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(this.ortskurve2d); this.ortskurveModell.setOptimalerAusgleichskreis(this.ortskurve); // Die zu testende Methode wird ausgefhrt. Method method = OrtskurveModell.class.getDeclaredMethod("randpunkteZusammenstellen", (Class[]) null); method.setAccessible(true); Vector2D[] randpunkte = (Vector2D[]) method.invoke(this.ortskurveModell, (Object[]) null); // Es wird berprft, ob die Anzahl der zusammengestellten Randpunkte korrekt ist. assertEquals(this.test_messpunkte.length + 8, randpunkte.length); // Es wird berprft, ob die Randpunkte korrekt zusammengestellt worden sind. assertEquals(this.test_messpunkte[0], randpunkte[0]); assertEquals(this.test_messpunkte[1], randpunkte[1]); assertEquals(new Vector2D(0, -0.5), randpunkte[2]); assertEquals(new Vector2D(2, -0.5), randpunkte[3]); assertEquals(new Vector2D(1, 0.5), randpunkte[4]); assertEquals(new Vector2D(1, -1.5), randpunkte[5]); assertEquals(new Vector2D(0, 0), randpunkte[6]); assertEquals(new Vector2D(2, 0), randpunkte[7]); assertEquals(new Vector2D(1, 1), randpunkte[8]); assertEquals(new Vector2D(1, -1), randpunkte[9]); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#randpunkteZusammenstellen(Vector2D[])}. * * @throws NoSuchMethodException * @throws SecurityException * @throws InvocationTargetException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testRandpunkteZusammenstellen2() throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAccessException, InvocationTargetException { // Das Modell wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(this.ortskurve); // Die zu testende Methode wird ausgefhrt. Method method = OrtskurveModell.class.getDeclaredMethod("randpunkteZusammenstellen", (Class[]) null); method.setAccessible(true); Vector2D[] randpunkte = (Vector2D[]) method.invoke(this.ortskurveModell, (Object[]) null); // Es wird berprft, ob die Anzahl der zusammengestellten Randpunkte korrekt ist. assertEquals(this.test_messpunkte.length + 4, randpunkte.length); // Es wird berprft, ob die Randpunkte korrekt zusammengestellt worden sind. assertEquals(this.test_messpunkte[0], randpunkte[0]); assertEquals(this.test_messpunkte[1], randpunkte[1]); assertEquals(new Vector2D(0, 0), randpunkte[2]); assertEquals(new Vector2D(2, 0), randpunkte[3]); assertEquals(new Vector2D(1, 1), randpunkte[4]); assertEquals(new Vector2D(1, -1), randpunkte[5]); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#grafikdatenBerechnen(Vector2D[])}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGrafikdatenBerechnen1() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Messpunkte werden im Objekt der zu testenden Klasse gespeichert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); // Die Ortskurve wird im Objekt der zu testenden Klasse gespeichert. this.ortskurveModell.setOrtskurve(this.ortskurve); // Die zu testende Methode wird ausgefhrt. this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung der Ortskurve wird gelesen. Field ortskurveGrafikFeld = OrtskurveModell.class.getDeclaredField("ortskurveGrafik"); ortskurveGrafikFeld.setAccessible(true); OrtskurveGrafik ortskurveGrafik = (OrtskurveGrafik) ortskurveGrafikFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Ortskurve korrekt berechnet worden ist. assertEquals(275.0, ortskurveGrafik.getMittelpunktInPixeln().getX(), 275.0 / 1000); assertEquals(137.5, ortskurveGrafik.getMittelpunktInPixeln().getY(), 137.5 / 1000); assertEquals(114.58, ortskurveGrafik.getRadiusInPixeln(), 114.58 / 1000); // Die Grafikdarstellung der Messpunkte wird gelesen. Field messpunkteGrafikFeld = OrtskurveModell.class.getDeclaredField("messpunkteGrafik"); messpunkteGrafikFeld.setAccessible(true); MesspunkteGrafik messpunkteGrafik = (MesspunkteGrafik) messpunkteGrafikFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Messpunkte korrekt berechnet worden ist. assertEquals(389.6, messpunkteGrafik.getMesspunkteInPixeln()[0].getX(), 389.6 / 1000); assertEquals(137.5, messpunkteGrafik.getMesspunkteInPixeln()[0].getY(), 137.5 / 1000); assertEquals(275.0, messpunkteGrafik.getMesspunkteInPixeln()[1].getX(), 275.0 / 1000); assertEquals(22.92, messpunkteGrafik.getMesspunkteInPixeln()[1].getY(), 22.92 / 1000); // Die Koordinatenachsen wird gelesen. Field koordinatenachsenFeld = OrtskurveModell.class.getDeclaredField("koordinatenachsen"); koordinatenachsenFeld.setAccessible(true); Koordinatenachsen koordinatenachsen = (Koordinatenachsen) koordinatenachsenFeld.get(this.ortskurveModell); // Es wird berprft, ob die Koordinatenachsen korrekt berechnet worden sind. assertEquals(137.5, koordinatenachsen.getStartPunktXAchse().getX(), 137.5 / 1000); assertEquals(137.5, koordinatenachsen.getStartPunktXAchse().getY(), 137.5 / 1000); assertEquals(412.5, koordinatenachsen.getEndPunktXAchse().getX(), 412.5 / 1000); assertEquals(137.5, koordinatenachsen.getEndPunktXAchse().getY(), 137.5 / 1000); assertEquals(160.4, koordinatenachsen.getStartPunktYAchse().getX(), 160.4 / 1000); assertEquals(275.0, koordinatenachsen.getStartPunktYAchse().getY(), 275.0 / 1000); assertEquals(160.4, koordinatenachsen.getEndPunktYAchse().getX(), 160.4 / 1000); assertEquals(0.0, koordinatenachsen.getEndPunktYAchse().getY(), 0.0); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#grafikdatenBerechnen(Vector2D[])}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGrafikdatenBerechnen2() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Messpunkte werden im Objekt der zu testenden Klasse gespeichert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); // Die Ortskurve wird im Objekt der zu testenden Klasse gespeichert. this.ortskurveModell.setOrtskurve(this.ortskurve2d); // Die Ortskurve der 2d-Ausgleichsrechnung wird im Objekt der zu testenden Klasse gespeichert. this.ortskurveModell.setOptimalerAusgleichskreis(this.ortskurve); // Die zu testende Methode wird ausgefhrt. this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung des optimalen Ausgleichskreises wird gelesen. Field feld = OrtskurveModell.class.getDeclaredField("optimalerAusgleichskreisGrafik"); feld.setAccessible(true); OrtskurveGrafik optimalerAusgleichskreisGrafik = (OrtskurveGrafik) feld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung des optimalen Ausgleichskreises korrekt berechnet worden ist. assertEquals(275.0, optimalerAusgleichskreisGrafik.getMittelpunktInPixeln().getX(), 275.0 / 1000); assertEquals(114.6, optimalerAusgleichskreisGrafik.getMittelpunktInPixeln().getY(), 114.6 / 1000); assertEquals(91.67, optimalerAusgleichskreisGrafik.getRadiusInPixeln(), 91.67 / 1000); // Die Grafikdarstellung der Ortskurve der 2d-Ausgleichsrechnung wird gelesen. feld = OrtskurveModell.class.getDeclaredField("ortskurveGrafik"); feld.setAccessible(true); OrtskurveGrafik ortskurveGrafik = (OrtskurveGrafik) feld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Ortskurve der 2d-Ausgleichsrechnung korrekt berechnet worden ist. assertEquals(275.0, ortskurveGrafik.getMittelpunktInPixeln().getX(), 275.0 / 1000); assertEquals(160.4, ortskurveGrafik.getMittelpunktInPixeln().getY(), 160.4 / 1000); assertEquals(91.67, ortskurveGrafik.getRadiusInPixeln(), 91.67 / 1000); // Die Grafikdarstellung der Messpunkte wird gelesen. Field messpunkteGrafikFeld = OrtskurveModell.class.getDeclaredField("messpunkteGrafik"); messpunkteGrafikFeld.setAccessible(true); MesspunkteGrafik messpunkteGrafik = (MesspunkteGrafik) messpunkteGrafikFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Messpunkte korrekt berechnet worden ist. assertEquals(366.7, messpunkteGrafik.getMesspunkteInPixeln()[0].getX(), 366.7 / 1000); assertEquals(114.6, messpunkteGrafik.getMesspunkteInPixeln()[0].getY(), 114.6 / 1000); assertEquals(275.0, messpunkteGrafik.getMesspunkteInPixeln()[1].getX(), 275.0 / 1000); assertEquals(22.92, messpunkteGrafik.getMesspunkteInPixeln()[1].getY(), 22.92 / 1000); // Die Koordinatenachsen wird gelesen. Field koordinatenachsenFeld = OrtskurveModell.class.getDeclaredField("koordinatenachsen"); koordinatenachsenFeld.setAccessible(true); Koordinatenachsen koordinatenachsen = (Koordinatenachsen) koordinatenachsenFeld.get(this.ortskurveModell); // Es wird berprft, ob die Koordinatenachsen korrekt berechnet worden sind. assertEquals(165.0, koordinatenachsen.getStartPunktXAchse().getX(), 165.0 / 1000); assertEquals(114.6, koordinatenachsen.getStartPunktXAchse().getY(), 114.6 / 1000); assertEquals(385.0, koordinatenachsen.getEndPunktXAchse().getX(), 385.0 / 1000); assertEquals(114.6, koordinatenachsen.getEndPunktXAchse().getY(), 114.6 / 1000); assertEquals(183.3, koordinatenachsen.getStartPunktYAchse().getX(), 183.3 / 1000); assertEquals(275.0, koordinatenachsen.getStartPunktYAchse().getY(), 275.0 / 1000); assertEquals(183.3, koordinatenachsen.getEndPunktYAchse().getX(), 183.3 / 1000); assertEquals(0.0, koordinatenachsen.getEndPunktYAchse().getY(), 0.0); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getMesspunkteGrafik()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetMesspunkteGrafik() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Grafikdarstellung der Ortskurve wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(ortskurve); this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung der Messpunkte wird gelesen. Field messpunkteGrafikFeld = OrtskurveModell.class.getDeclaredField("messpunkteGrafik"); messpunkteGrafikFeld.setAccessible(true); MesspunkteGrafik messpunkteGrafik = (MesspunkteGrafik) messpunkteGrafikFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung des Messpunkte korrekt zurckgegeben wird. assertEquals(messpunkteGrafik, this.ortskurveModell.getMesspunkteGrafik()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getOrtskurveGrafik()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetOrtskurveGrafik() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Grafikdarstellung der Ortskurve wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(ortskurve); this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung der Ortskurve wird gelesen. Field ortskurveGrafikFeld = OrtskurveModell.class.getDeclaredField("ortskurveGrafik"); ortskurveGrafikFeld.setAccessible(true); OrtskurveGrafik ortskurveGrafik = (OrtskurveGrafik) ortskurveGrafikFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Ortskurve korrekt zurckgegeben wird. assertEquals(ortskurveGrafik, this.ortskurveModell.getOrtskurveGrafik()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getOptimalerAusgleichskreisGrafik()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetOptimalerAusgleichskreisGrafik() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Grafikdarstellung der Ortskurve wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(this.ortskurve2d); this.ortskurveModell.setOptimalerAusgleichskreis(this.ortskurve); this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung der Ortskurve wird gelesen. Field feld = OrtskurveModell.class.getDeclaredField("optimalerAusgleichskreisGrafik"); feld.setAccessible(true); OrtskurveGrafik optimalerAusgleichskreisGrafik = (OrtskurveGrafik) feld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Ortskurve korrekt zurckgegeben wird. assertEquals(optimalerAusgleichskreisGrafik, this.ortskurveModell.getOptimalerAusgleichskreisGrafik()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getKoordinatenachsen()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetKoordinatenachsen() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Grafikdarstellung der Ortskurve wird initialisiert. this.ortskurveModell.setMesspunkte(this.test_messpunkte); this.ortskurveModell.setOrtskurve(ortskurve); this.ortskurveModell.grafikdatenBerechnen(); // Die Grafikdarstellung der Ortskurve wird gelesen. Field koordinatenachsenFeld = OrtskurveModell.class.getDeclaredField("koordinatenachsen"); koordinatenachsenFeld.setAccessible(true); Koordinatenachsen koordinatenachsen = (Koordinatenachsen) koordinatenachsenFeld.get(this.ortskurveModell); // Es wird berprft, ob die Grafikdarstellung der Ortskurve korrekt zurckgegeben wird. assertEquals(koordinatenachsen, this.ortskurveModell.getKoordinatenachsen()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getOptimalerAusgleichskreis()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetOptimalerAusgleichskreis() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Ortskurve der 2d-Berechnung wird im Testobjekt gespeichert. Field messpunkteFeld = OrtskurveModell.class.getDeclaredField("optimalerAusgleichskreis"); messpunkteFeld.setAccessible(true); messpunkteFeld.set(this.ortskurveModell, this.ortskurve); // Die zu testende Methode wird aufgerufen. Ortskurve optimalerAusgleichskreis = this.ortskurveModell.getOptimalerAusgleichskreis(); // Es wird berprft, ob die Messpunkte korrekt zurckgegeben werden. assertEquals(this.ortskurve, optimalerAusgleichskreis); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#setOptimalerAusgleichskreis(Ortskurve)}. */ @Test public void testSetOptimalerAusgleichskreis() { // Die zu testende Methode wird ausgefhrt. this.ortskurveModell.setOptimalerAusgleichskreis(this.ortskurve); // Es wird berprft, ob die Messpunkte korrekt im Objekt der zu testenden Klasse gespeichert worden sind. assertEquals(this.ortskurve, this.ortskurveModell.getOptimalerAusgleichskreis()); } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#getMesspunkte()}. * * @throws NoSuchFieldException * @throws SecurityException * @throws IllegalAccessException * @throws IllegalArgumentException */ @Test public void testGetMesspunkte() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { // Die Messpunkte werden im Objekt der zu testenden Klasse gespeichert. Field messpunkteFeld = OrtskurveModell.class.getDeclaredField("messpunkte"); messpunkteFeld.setAccessible(true); messpunkteFeld.set(this.ortskurveModell, this.test_messpunkte); // Die zu testende Methode wird aufgerufen. Vector2D[] messpunkte = this.ortskurveModell.getMesspunkte(); // Es wird berprft, ob die Messpunkte korrekt zurckgegeben werden. assertEquals(this.test_messpunkte.length, messpunkte.length); for (int i = 0; i < this.test_messpunkte.length; i++) { assertEquals(this.test_messpunkte[i], messpunkte[i]); } } // ===================================================================================================================== // ===================================================================================================================== /** * Test fr die Methode {@link OrtskurveModell#setMesspunkte(Vector2D[])}. */ @Test public void testSetMesspunkte() { // Die zu testende Methode wird ausgefhrt. this.ortskurveModell.setMesspunkte(this.test_messpunkte); // Es wird berprft, ob die Messpunkte korrekt im Objekt der zu testenden Klasse gespeichert worden sind. Vector2D[] messpunkte = this.ortskurveModell.getMesspunkte(); assertEquals(this.test_messpunkte.length, messpunkte.length); for (int i = 0; i < this.test_messpunkte.length; i++) { assertEquals(this.test_messpunkte[i], messpunkte[i]); } } // ===================================================================================================================== // ===================================================================================================================== /** * Test der Methode {@link OrtskurveModell#randpunkteOrtskurveZusammenstellen(Ortskurve)}. * * @throws SecurityException * @throws NoSuchMethodException * @throws InvocationTargetException * @throws IllegalArgumentException * @throws IllegalAccessException */ @Test public void testRandpunkteOrtskurveZusammenstellen() throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { // Die zu testende Methode wird ausgefhrt. Method methode = OrtskurveModell.class.getDeclaredMethod("randpunkteOrtskurveZusammenstellen", Ortskurve.class); methode.setAccessible(true); @SuppressWarnings("unchecked") ArrayList<Vector2D> randpunkteOrtskurve = (ArrayList<Vector2D>) methode.invoke(this.ortskurveModell, this.ortskurve); // Es wird berprft, ob die Liste die korrekten Randpunkte enthlt. assertEquals(4, randpunkteOrtskurve.size()); assertTrue(randpunkteOrtskurve.contains(new Vector2D(0, 0))); assertTrue(randpunkteOrtskurve.contains(new Vector2D(2, 0))); assertTrue(randpunkteOrtskurve.contains(new Vector2D(1, 1))); assertTrue(randpunkteOrtskurve.contains(new Vector2D(1, -1))); } }