示例#1
0
        public void copyTest()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.addPoint(TEST_POINT_1);
            pointlist.addPoint(TEST_POINT_2);
            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3, "Fehler beim einfügen der Testdaten");

            CTSPPointList copy = pointlist.copy();

            Assert.AreNotSame(pointlist, copy);
            Assert.IsTrue(pointlist.length() == copy.length());
        }
示例#2
0
        public void deleteAllTest()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.addPoint(TEST_POINT_1);
            pointlist.addPoint(TEST_POINT_2);
            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3, "Fehler beim einfügen der Testdaten");

            pointlist.removeAll();

            Assert.IsTrue(pointlist.length() == 0);

            // Testdaten löschen
            pointlist.removeAll();
        }
示例#3
0
        public void testDeleteSingleEntry()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.addPoint(TEST_POINT_1);
            pointlist.addPoint(TEST_POINT_2);
            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3, "Fehler beim einfügen der Testdaten");

            // ersten eintrag löschen, also ein Eintrag weniger
            pointlist.remove(0);
            Assert.IsTrue(pointlist.length() == 2);

            Assert.AreSame(pointlist.getPoint(0), TEST_POINT_2);
            Assert.AreSame(pointlist.getPoint(1), TEST_POINT_3);

            // Testdaten löschen
            pointlist.removeAll();
        }
示例#4
0
        public void testDeletePointNotExistent()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.addPoint(TEST_POINT_1);
            pointlist.addPoint(TEST_POINT_2);
            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3, "Fehler beim einfügen der Testdaten");

            // dieser Index sollte nicht vorhanden sein, es darf also nichts gelöscht werden
            pointlist.remove(100);
            Assert.IsTrue(pointlist.length() == 3);

            // löschen eines Punktes der nicht in der Liste ist
            pointlist.remove(new CTSPPoint());
            Assert.IsTrue(pointlist.length() == 3);

            // Testdaten löschen
            pointlist.removeAll();
        }
示例#5
0
        public void testDeleteSpecificPoint()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.addPoint(TEST_POINT_1);
            pointlist.addPoint(TEST_POINT_2);
            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3, "Fehler beim einfügen der Testdaten");

            // den Punkt2 aus der Liste löschen
            pointlist.remove(TEST_POINT_2);
            Assert.IsTrue(pointlist.length() == 2);

            // Der Punkt 2 darf nicht mehr vorhanden sein
            foreach (CTSPPoint point in pointlist)
            {
                Assert.AreNotSame(point, TEST_POINT_2);
            }

            // Testdaten löschen
            pointlist.removeAll();
        }
示例#6
0
        public void insertTest()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            pointlist.removeAll();

            pointlist.addPoint(TEST_POINT_1);
            Assert.IsTrue(pointlist.length() == 1);

            pointlist.addPoint(TEST_POINT_2);
            Assert.IsTrue(pointlist.length() == 2);

            pointlist.addPoint(TEST_POINT_3);
            Assert.IsTrue(pointlist.length() == 3);

            Assert.AreSame(pointlist.getPoint(0), TEST_POINT_1, "zuerste in die Liste eingefügter Punkt entsprecht nicht dem eingefügten Objekt");
            Assert.AreSame(pointlist.getPoint(1), TEST_POINT_2, "zuerste in die Liste eingefügter Punkt entsprecht nicht dem eingefügten Objekt");
            Assert.AreSame(pointlist.getPoint(2), TEST_POINT_3, "zuerste in die Liste eingefügter Punkt entsprecht nicht dem eingefügten Objekt");

            // Testdaten löschen
            pointlist.removeAll();
        }
示例#7
0
        public void lengthTest()
        {
            CTSPPointList pointlist = CTSPPointList.getInstance();

            for (int i = 0; i < 1000; i++)
            {
                pointlist.addPoint(new CTSPPoint());
                Assert.IsTrue(pointlist.length() == i + 1);
            }

            // Testdaten löschen
            pointlist.removeAll();
        }
        public void testGenerateConnections()
        {
            CTSPPointList   pointList = CTSPPointList.getInstance();
            CConnectionList connList  = CConnectionList.getInstance();

            // Testpunkte einfügen
            pointList.addPoint(TEST_POINT_A);
            pointList.addPoint(TEST_POINT_B);
            pointList.addPoint(TEST_POINT_C);

            // Wir verwenden hier der Einfachheit halber den Euklidischen 2D Algorithmus.
            // Die Berechnung selbst ist hier auch nicht relevant und wird in der CTestConnection
            // getestet. Hier wird nur überprüft ob überhaupt Verbindungen erzeugt und Werte ermittelt werden
            connList.generateFromPointList(CTSPLibFileParser.E_EDGE_WEIGHT_TYPE.E_EUC_2D);

            Assert.IsTrue(connList.length() == 3);
            foreach (CConnection connection in connList)
            {
                // es muss eine Distanz größer als 0 herauskommen
                // Wie groß die ist, ist in diesem Test nicht relevant
                Assert.IsTrue(connection.getDistance() > 0);
            }
        }