diff --git a/racevisionGame/src/main/java/mock/app/Event.java b/racevisionGame/src/main/java/mock/app/Event.java index 48c72ccc..2af2fe46 100644 --- a/racevisionGame/src/main/java/mock/app/Event.java +++ b/racevisionGame/src/main/java/mock/app/Event.java @@ -8,6 +8,7 @@ import network.Messages.LatestMessages; import network.Messages.XMLMessage; import org.xml.sax.SAXException; import shared.dataInput.*; +import shared.enums.XMLFileType; import shared.exceptions.InvalidBoatDataException; import shared.exceptions.InvalidRaceDataException; import shared.exceptions.InvalidRegattaDataException; @@ -61,9 +62,9 @@ public class Event { sendXMLs(); //Parse the XML files into data sources. - RaceDataSource raceDataSource = new RaceXMLReader(this.raceXML); - BoatDataSource boatDataSource = new BoatXMLReader(this.boatXML); - RegattaDataSource regattaDataSource = new RegattaXMLReader(this.regattaXML); + RaceDataSource raceDataSource = new RaceXMLReader(this.raceXML, XMLFileType.ResourcePath); + BoatDataSource boatDataSource = new BoatXMLReader(this.boatXML, XMLFileType.ResourcePath); + RegattaDataSource regattaDataSource = new RegattaXMLReader(this.regattaXML, XMLFileType.ResourcePath); //Create and start race. MockRace newRace = new MockRace(boatDataSource, raceDataSource, regattaDataSource, this.latestMessages, this.boatPolars, Constants.RaceTimeScale); diff --git a/racevisionGame/src/main/java/shared/dataInput/BoatXMLReader.java b/racevisionGame/src/main/java/shared/dataInput/BoatXMLReader.java index 893eeb01..925e3a0c 100644 --- a/racevisionGame/src/main/java/shared/dataInput/BoatXMLReader.java +++ b/racevisionGame/src/main/java/shared/dataInput/BoatXMLReader.java @@ -2,6 +2,7 @@ package shared.dataInput; import org.w3c.dom.Element; import org.w3c.dom.Node; +import shared.enums.XMLFileType; import shared.exceptions.InvalidBoatDataException; import shared.exceptions.XMLReaderException; import shared.model.Boat; @@ -32,11 +33,12 @@ public class BoatXMLReader extends XMLReader implements BoatDataSource { * Constructor for Boat XML using a file read as a resource. * * @param fileContents Contents of xml file. + * @param type How to read the file - e.g., load as resource. * @throws XMLReaderException Thrown if the file cannot be parsed. * @throws InvalidBoatDataException Thrown if the file cannot be parsed correctly. */ - public BoatXMLReader(String fileContents) throws XMLReaderException, InvalidBoatDataException { - super(fileContents); + public BoatXMLReader(String fileContents, XMLFileType type) throws XMLReaderException, InvalidBoatDataException { + super(fileContents, type); //Attempt to read boat xml file. try { diff --git a/racevisionGame/src/main/java/shared/dataInput/RaceXMLReader.java b/racevisionGame/src/main/java/shared/dataInput/RaceXMLReader.java index 3606443a..9f2aacad 100644 --- a/racevisionGame/src/main/java/shared/dataInput/RaceXMLReader.java +++ b/racevisionGame/src/main/java/shared/dataInput/RaceXMLReader.java @@ -5,6 +5,7 @@ import org.w3c.dom.Element; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Node; import org.w3c.dom.NodeList; +import shared.enums.XMLFileType; import shared.exceptions.InvalidRaceDataException; import shared.exceptions.XMLReaderException; import shared.model.*; @@ -83,12 +84,13 @@ public class RaceXMLReader extends XMLReader implements RaceDataSource { /** * Constructor for Streamed Race XML * @param fileContents Contents of xml file. + * @param type How to read the file - e.g., load as resource. * @throws XMLReaderException Thrown if an XML reader cannot be constructed for the given file. * @throws InvalidRaceDataException Thrown if the XML file is invalid in some way. */ - public RaceXMLReader(String fileContents) throws XMLReaderException, InvalidRaceDataException { + public RaceXMLReader(String fileContents, XMLFileType type) throws XMLReaderException, InvalidRaceDataException { - super(fileContents); + super(fileContents, type); //Attempt to read race xml file. diff --git a/racevisionGame/src/main/java/shared/dataInput/RegattaXMLReader.java b/racevisionGame/src/main/java/shared/dataInput/RegattaXMLReader.java index af5242d8..aafd85a3 100644 --- a/racevisionGame/src/main/java/shared/dataInput/RegattaXMLReader.java +++ b/racevisionGame/src/main/java/shared/dataInput/RegattaXMLReader.java @@ -4,6 +4,7 @@ import org.w3c.dom.Element; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; import shared.dataInput.XMLReader; +import shared.enums.XMLFileType; import shared.exceptions.InvalidRegattaDataException; import shared.exceptions.XMLReaderException; import shared.model.GPSCoordinate; @@ -67,11 +68,12 @@ public class RegattaXMLReader extends XMLReader implements RegattaDataSource { * Constructor for Regatta XML using a file read as a resource. * * @param fileContents Contents of xml file. + * @param type How to read the file - e.g., load as resource. * @throws XMLReaderException Thrown if the file cannot be parsed. * @throws InvalidRegattaDataException Thrown if the file cannot be parsed correctly. */ - public RegattaXMLReader(String fileContents) throws XMLReaderException, InvalidRegattaDataException { - super(fileContents); + public RegattaXMLReader(String fileContents, XMLFileType type) throws XMLReaderException, InvalidRegattaDataException { + super(fileContents, type); //Attempt to read boat xml file. try { diff --git a/racevisionGame/src/main/java/shared/dataInput/XMLReader.java b/racevisionGame/src/main/java/shared/dataInput/XMLReader.java index 657f67cb..aad71240 100644 --- a/racevisionGame/src/main/java/shared/dataInput/XMLReader.java +++ b/racevisionGame/src/main/java/shared/dataInput/XMLReader.java @@ -5,6 +5,7 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.xml.sax.InputSource; import org.xml.sax.SAXException; +import shared.enums.XMLFileType; import shared.exceptions.XMLReaderException; import javax.xml.parsers.DocumentBuilder; @@ -27,20 +28,43 @@ public abstract class XMLReader { protected Document doc; + /** - * Read an XML file. - * @param fileContents Contents of the xml file. - * @throws XMLReaderException Thrown if the file cannot be parsed. + * Reads an XML file. + * @param file The file to read. + * @param type How to read the file - e.g., load as resource. + * @throws XMLReaderException Throw if the file cannot be parsed. */ - public XMLReader(String fileContents) throws XMLReaderException { + public XMLReader(String file, XMLFileType type) throws XMLReaderException { + + + InputStream xmlInputStream = null; + + //Create an input stream. Method depends on type parameter. + + if (type == XMLFileType.Contents) { + //Wrap file contents in input stream. + xmlInputStream = new ByteArrayInputStream(file.getBytes(StandardCharsets.UTF_8)); + + } else if (type == XMLFileType.ResourcePath) { + xmlInputStream = XMLReader.class.getClassLoader().getResourceAsStream(file); + + } else if (type == XMLFileType.FilePath) { + try { + xmlInputStream = new FileInputStream(file); + } catch (FileNotFoundException e) { + throw new XMLReaderException("Could not open file " + file, e); + } + + } + - //Wrap file contents in input stream. - InputStream xmlInputStream = new ByteArrayInputStream(fileContents.getBytes(StandardCharsets.UTF_8)); this.doc = parseInputStream(xmlInputStream); } + /** * Reads an XML file from an input stream. * @param xmlInputStream The input stream to parse. @@ -58,7 +82,7 @@ public abstract class XMLReader { * @return The parsed document. * @throws XMLReaderException Thrown when a document builder cannot be constructed, or the stream cannot be parsed. */ - private Document parseInputStream(InputStream inputStream) throws XMLReaderException { + private static Document parseInputStream(InputStream inputStream) throws XMLReaderException { //Create document builder. DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); @@ -142,18 +166,15 @@ public abstract class XMLReader { * @param path path of the XML * @param encoding encoding of the xml * @return A string containing the contents of the specified file. - * @throws IOException No file etc - * @throws ParserConfigurationException Issue with the XML formatting - * @throws SAXException Issue with XML formatting * @throws TransformerException Issue with the XML format + * @throws XMLReaderException Thrown if file cannot be read for some reason. */ - public static String readXMLFileToString(String path, Charset encoding) throws IOException, ParserConfigurationException, SAXException, TransformerException { + public static String readXMLFileToString(String path, Charset encoding) throws TransformerException, XMLReaderException { - InputSource fileSource = new InputSource(XMLReader.class.getClassLoader().getResourceAsStream(path)); + InputStream fileStream = XMLReader.class.getClassLoader().getResourceAsStream(path); + + Document doc = XMLReader.parseInputStream(fileStream); - DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); - DocumentBuilder dBuilder = dbFactory.newDocumentBuilder(); - Document doc = dBuilder.parse(fileSource); doc.getDocumentElement().normalize(); return XMLReader.getContents(doc); diff --git a/racevisionGame/src/main/java/shared/enums/XMLFileType.java b/racevisionGame/src/main/java/shared/enums/XMLFileType.java new file mode 100644 index 00000000..6578fb0b --- /dev/null +++ b/racevisionGame/src/main/java/shared/enums/XMLFileType.java @@ -0,0 +1,24 @@ +package shared.enums; + +/** + * Represents the various ways in which we want to open/read an xml file - e.g., a string may contain the file contents, or the file path. + */ +public enum XMLFileType { + + /** + * This means that a provided string contains the contents of an XML file. + */ + Contents, + + /** + * This means that a provided string contains the path to an XML file. + */ + FilePath, + + /** + * This means that a provided string contains the path, to be loaded as a resource, of an XML file. + */ + ResourcePath; + + +} diff --git a/racevisionGame/src/main/java/visualiser/Controllers/StartController.java b/racevisionGame/src/main/java/visualiser/Controllers/StartController.java index fa7dc3f6..c69b498d 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/StartController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/StartController.java @@ -13,6 +13,7 @@ import javafx.scene.paint.Color; import network.Messages.Enums.RaceStatusEnum; import network.Messages.LatestMessages; import shared.dataInput.*; +import shared.enums.XMLFileType; import shared.exceptions.InvalidBoatDataException; import shared.exceptions.InvalidRaceDataException; import shared.exceptions.InvalidRegattaDataException; @@ -115,9 +116,9 @@ public class StartController extends Controller implements Observer { private void startRace(LatestMessages latestMessages) throws XMLReaderException, InvalidRaceDataException, InvalidBoatDataException, InvalidRegattaDataException { //Create data sources from latest messages for the race. - RaceDataSource raceDataSource = new RaceXMLReader(latestMessages.getRaceXMLMessage().getXmlMessage()); - BoatDataSource boatDataSource = new BoatXMLReader(latestMessages.getBoatXMLMessage().getXmlMessage()); - RegattaDataSource regattaDataSource = new RegattaXMLReader(latestMessages.getRegattaXMLMessage().getXmlMessage()); + RaceDataSource raceDataSource = new RaceXMLReader(latestMessages.getRaceXMLMessage().getXmlMessage(), XMLFileType.ResourcePath); + BoatDataSource boatDataSource = new BoatXMLReader(latestMessages.getBoatXMLMessage().getXmlMessage(), XMLFileType.ResourcePath); + RegattaDataSource regattaDataSource = new RegattaXMLReader(latestMessages.getRegattaXMLMessage().getXmlMessage(), XMLFileType.ResourcePath); //Create race. this.visualiserRace = new VisualiserRace(boatDataSource, raceDataSource, regattaDataSource, latestMessages, this.colors); diff --git a/network/src/main/resources/dataDumps/ac35.bin b/racevisionGame/src/main/resources/network/dataDumps/ac35.bin similarity index 100% rename from network/src/main/resources/dataDumps/ac35.bin rename to racevisionGame/src/main/resources/network/dataDumps/ac35.bin diff --git a/network/src/main/resources/raceXML/Boats.xml b/racevisionGame/src/main/resources/network/raceXML/Boats.xml similarity index 100% rename from network/src/main/resources/raceXML/Boats.xml rename to racevisionGame/src/main/resources/network/raceXML/Boats.xml diff --git a/network/src/main/resources/raceXML/Race.xml b/racevisionGame/src/main/resources/network/raceXML/Race.xml similarity index 100% rename from network/src/main/resources/raceXML/Race.xml rename to racevisionGame/src/main/resources/network/raceXML/Race.xml diff --git a/network/src/main/resources/raceXML/Regatta.xml b/racevisionGame/src/main/resources/network/raceXML/Regatta.xml similarity index 100% rename from network/src/main/resources/raceXML/Regatta.xml rename to racevisionGame/src/main/resources/network/raceXML/Regatta.xml diff --git a/network/src/test_old/java/seng302/Networking/AC35UnitConverter.java b/racevisionGame/src/test/java/network/AC35UnitConverter.java similarity index 96% rename from network/src/test_old/java/seng302/Networking/AC35UnitConverter.java rename to racevisionGame/src/test/java/network/AC35UnitConverter.java index 0471c8f2..d6941c5e 100644 --- a/network/src/test_old/java/seng302/Networking/AC35UnitConverter.java +++ b/racevisionGame/src/test/java/network/AC35UnitConverter.java @@ -1,4 +1,4 @@ -package seng302.Networking; +package network; import org.junit.Test; diff --git a/network/src/test_old/java/seng302/Networking/BinaryMessageDecoderTest.java b/racevisionGame/src/test/java/network/BinaryMessageDecoderTest.java similarity index 96% rename from network/src/test_old/java/seng302/Networking/BinaryMessageDecoderTest.java rename to racevisionGame/src/test/java/network/BinaryMessageDecoderTest.java index 6877d180..f9122e4c 100644 --- a/network/src/test_old/java/seng302/Networking/BinaryMessageDecoderTest.java +++ b/racevisionGame/src/test/java/network/BinaryMessageDecoderTest.java @@ -1,4 +1,4 @@ -package seng302.Networking; +package network; import org.junit.Assert; import org.junit.Test; @@ -9,7 +9,9 @@ import seng302.Networking.Messages.AC35Data; import seng302.Networking.Messages.Enums.MessageType; import seng302.Networking.Messages.XMLMessage; -import java.io.*; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; /** * Created by hba56 on 21/04/17. diff --git a/network/src/test_old/java/seng302/Networking/ByteConverterTest.java b/racevisionGame/src/test/java/network/ByteConverterTest.java similarity index 99% rename from network/src/test_old/java/seng302/Networking/ByteConverterTest.java rename to racevisionGame/src/test/java/network/ByteConverterTest.java index fc59cc87..9c64fea9 100644 --- a/network/src/test_old/java/seng302/Networking/ByteConverterTest.java +++ b/racevisionGame/src/test/java/network/ByteConverterTest.java @@ -1,4 +1,4 @@ -package seng302.Networking; +package network; import org.junit.Test; import seng302.Networking.Utils.ByteConverter; diff --git a/network/src/test_old/java/seng302/Networking/MessageDecoders/BoatLocationDecoderTest.java b/racevisionGame/src/test/java/network/MessageDecoders/BoatLocationDecoderTest.java similarity index 98% rename from network/src/test_old/java/seng302/Networking/MessageDecoders/BoatLocationDecoderTest.java rename to racevisionGame/src/test/java/network/MessageDecoders/BoatLocationDecoderTest.java index fb1cc529..96068417 100644 --- a/network/src/test_old/java/seng302/Networking/MessageDecoders/BoatLocationDecoderTest.java +++ b/racevisionGame/src/test/java/network/MessageDecoders/BoatLocationDecoderTest.java @@ -1,9 +1,9 @@ -package seng302.Networking.MessageDecoders; +package network.MessageDecoders; import org.junit.Assert; import org.junit.Test; -import seng302.Networking.Messages.BoatLocation; import seng302.Networking.MessageEncoders.RaceVisionByteEncoder; +import seng302.Networking.Messages.BoatLocation; /** diff --git a/network/src/test_old/java/seng302/Networking/MessageDecoders/CourseWindDecoderTest.java b/racevisionGame/src/test/java/network/MessageDecoders/CourseWindDecoderTest.java similarity index 98% rename from network/src/test_old/java/seng302/Networking/MessageDecoders/CourseWindDecoderTest.java rename to racevisionGame/src/test/java/network/MessageDecoders/CourseWindDecoderTest.java index 837c4ff4..a447b26a 100644 --- a/network/src/test_old/java/seng302/Networking/MessageDecoders/CourseWindDecoderTest.java +++ b/racevisionGame/src/test/java/network/MessageDecoders/CourseWindDecoderTest.java @@ -1,9 +1,9 @@ -package seng302.Networking.MessageDecoders; +package network.MessageDecoders; import org.junit.Assert; import org.junit.Test; -import seng302.Networking.Messages.CourseWind; import seng302.Networking.MessageEncoders.RaceVisionByteEncoder; +import seng302.Networking.Messages.CourseWind; import java.util.ArrayList; diff --git a/network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStartStatusDecoderTest.java b/racevisionGame/src/test/java/network/MessageDecoders/RaceStartStatusDecoderTest.java similarity index 95% rename from network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStartStatusDecoderTest.java rename to racevisionGame/src/test/java/network/MessageDecoders/RaceStartStatusDecoderTest.java index 1dad9635..9e43a010 100644 --- a/network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStartStatusDecoderTest.java +++ b/racevisionGame/src/test/java/network/MessageDecoders/RaceStartStatusDecoderTest.java @@ -1,4 +1,4 @@ -package seng302.Networking.MessageDecoders; +package network.MessageDecoders; import org.junit.Assert; import org.junit.Test; diff --git a/network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStatusDecoderTest.java b/racevisionGame/src/test/java/network/MessageDecoders/RaceStatusDecoderTest.java similarity index 98% rename from network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStatusDecoderTest.java rename to racevisionGame/src/test/java/network/MessageDecoders/RaceStatusDecoderTest.java index 51a17ebb..d9ea0481 100644 --- a/network/src/test_old/java/seng302/Networking/MessageDecoders/RaceStatusDecoderTest.java +++ b/racevisionGame/src/test/java/network/MessageDecoders/RaceStatusDecoderTest.java @@ -1,4 +1,4 @@ -package seng302.Networking.MessageDecoders; +package network.MessageDecoders; import org.junit.Assert; import org.junit.Test; diff --git a/network/src/test_old/java/seng302/Networking/MessageDecoders/XMLMessageDecoderTest.java b/racevisionGame/src/test/java/network/MessageDecoders/XMLMessageDecoderTest.java similarity index 97% rename from network/src/test_old/java/seng302/Networking/MessageDecoders/XMLMessageDecoderTest.java rename to racevisionGame/src/test/java/network/MessageDecoders/XMLMessageDecoderTest.java index 1b0a572e..35883de9 100644 --- a/network/src/test_old/java/seng302/Networking/MessageDecoders/XMLMessageDecoderTest.java +++ b/racevisionGame/src/test/java/network/MessageDecoders/XMLMessageDecoderTest.java @@ -1,4 +1,4 @@ -package seng302.Networking.MessageDecoders; +package network.MessageDecoders; import org.junit.Assert; import org.junit.Test; diff --git a/network/src/test_old/java/seng302/Networking/XMLMessageEncoderTest.java b/racevisionGame/src/test/java/network/XMLMessageEncoderTest.java similarity index 94% rename from network/src/test_old/java/seng302/Networking/XMLMessageEncoderTest.java rename to racevisionGame/src/test/java/network/XMLMessageEncoderTest.java index 38e7f6e9..67855bf3 100644 --- a/network/src/test_old/java/seng302/Networking/XMLMessageEncoderTest.java +++ b/racevisionGame/src/test/java/network/XMLMessageEncoderTest.java @@ -1,10 +1,12 @@ -package seng302.Networking; +package network; import org.junit.Assert; import org.junit.Test; import seng302.Networking.MessageEncoders.XMLMessageEncoder; -import java.io.*; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; /** * Created by hba56 on 19/04/17. diff --git a/visualiser/src/test_old/java/seng302/Mock/BoatsXMLTest.java b/racevisionGame/src/test/java/shared/dataInput/BoatsXMLTest.java similarity index 100% rename from visualiser/src/test_old/java/seng302/Mock/BoatsXMLTest.java rename to racevisionGame/src/test/java/shared/dataInput/BoatsXMLTest.java diff --git a/visualiser/src/test_old/java/seng302/Mock/FailBoatXMLTest.java b/racevisionGame/src/test/java/shared/dataInput/FailBoatXMLTest.java similarity index 100% rename from visualiser/src/test_old/java/seng302/Mock/FailBoatXMLTest.java rename to racevisionGame/src/test/java/shared/dataInput/FailBoatXMLTest.java diff --git a/racevisionGame/src/test/java/shared/dataInput/RaceXMLReaderTest.java b/racevisionGame/src/test/java/shared/dataInput/RaceXMLReaderTest.java new file mode 100644 index 00000000..0539a990 --- /dev/null +++ b/racevisionGame/src/test/java/shared/dataInput/RaceXMLReaderTest.java @@ -0,0 +1,5 @@ +package shared.dataInput; + +public class RaceXMLReaderTest { +//TODO +} diff --git a/visualiser/src/test_old/java/seng302/Mock/RegattaXMLTest.java b/racevisionGame/src/test/java/shared/dataInput/RegattaXMLReaderTest.java similarity index 94% rename from visualiser/src/test_old/java/seng302/Mock/RegattaXMLTest.java rename to racevisionGame/src/test/java/shared/dataInput/RegattaXMLReaderTest.java index c8cadb39..1ffc1c4a 100644 --- a/visualiser/src/test_old/java/seng302/Mock/RegattaXMLTest.java +++ b/racevisionGame/src/test/java/shared/dataInput/RegattaXMLReaderTest.java @@ -1,4 +1,4 @@ -package seng302.Mock; +package shared.dataInput; import org.junit.Before; import org.junit.Test; @@ -10,7 +10,7 @@ import static org.junit.Assert.fail; * Created by jjg64 on 19/04/17. * Tests RegattaXMLReader */ -public class RegattaXMLTest { +public class RegattaXMLReaderTest { private RegattaXMLReader regatta; @Before diff --git a/racevisionGame/src/test/java/shared/dataInput/XMLReaderTest.java b/racevisionGame/src/test/java/shared/dataInput/XMLReaderTest.java new file mode 100644 index 00000000..9fbb3421 --- /dev/null +++ b/racevisionGame/src/test/java/shared/dataInput/XMLReaderTest.java @@ -0,0 +1,5 @@ +package shared.dataInput; + +public class XMLReaderTest { +//TODO +} diff --git a/racevisionGame/src/test/java/visualiser/model/GraphCoordinateTest.java b/racevisionGame/src/test/java/visualiser/model/GraphCoordinateTest.java new file mode 100644 index 00000000..b4c0d61d --- /dev/null +++ b/racevisionGame/src/test/java/visualiser/model/GraphCoordinateTest.java @@ -0,0 +1,5 @@ +package visualiser.model; + +public class GraphCoordinateTest { +//TODO +} diff --git a/visualiser/src/test_old/java/seng302/RaceConnectionTest.java b/racevisionGame/src/test/java/visualiser/model/RaceConnectionTest.java similarity index 96% rename from visualiser/src/test_old/java/seng302/RaceConnectionTest.java rename to racevisionGame/src/test/java/visualiser/model/RaceConnectionTest.java index 47b3cdae..8e38f2ee 100644 --- a/visualiser/src/test_old/java/seng302/RaceConnectionTest.java +++ b/racevisionGame/src/test/java/visualiser/model/RaceConnectionTest.java @@ -1,4 +1,4 @@ -package seng302; +package visualiser.model; import org.junit.Before; import org.junit.Ignore; @@ -34,4 +34,4 @@ public class RaceConnectionTest { public void offlineConnectionStatusOffline() { assertFalse(offlineConnection.check()); } -} \ No newline at end of file +} diff --git a/racevisionGame/src/test/java/visualiser/model/RaceMapTest.java b/racevisionGame/src/test/java/visualiser/model/RaceMapTest.java new file mode 100644 index 00000000..170024dd --- /dev/null +++ b/racevisionGame/src/test/java/visualiser/model/RaceMapTest.java @@ -0,0 +1,5 @@ +package visualiser.model; + +public class RaceMapTest { +//TODO +} diff --git a/racevisionGame/src/test/java/visualiser/model/TrackPointTest.java b/racevisionGame/src/test/java/visualiser/model/TrackPointTest.java new file mode 100644 index 00000000..db577d71 --- /dev/null +++ b/racevisionGame/src/test/java/visualiser/model/TrackPointTest.java @@ -0,0 +1,5 @@ +package visualiser.model; + +public class TrackPointTest { +//TODO +} diff --git a/racevisionGame/src/test/java/visualiser/model/VisualiserBoatTest.java b/racevisionGame/src/test/java/visualiser/model/VisualiserBoatTest.java new file mode 100644 index 00000000..db2093c9 --- /dev/null +++ b/racevisionGame/src/test/java/visualiser/model/VisualiserBoatTest.java @@ -0,0 +1,5 @@ +package visualiser.model; + +public class VisualiserBoatTest { +//TODO +} diff --git a/racevisionGame/src/test/java/visualiser/model/VisualiserRaceTest.java b/racevisionGame/src/test/java/visualiser/model/VisualiserRaceTest.java new file mode 100644 index 00000000..ef5e691a --- /dev/null +++ b/racevisionGame/src/test/java/visualiser/model/VisualiserRaceTest.java @@ -0,0 +1,100 @@ +//package visualiser.model; +// +// +//import org.junit.Before; +//import org.junit.Test; +//import shared.dataInput.RaceXMLReader; +//import shared.dataInput.XMLReader; +//import shared.exceptions.InvalidRaceDataException; +//import shared.model.GPSCoordinate; +// +//import java.nio.charset.StandardCharsets; +//import java.util.List; +// +//import static org.junit.Assert.assertEquals; +//import static org.junit.Assert.fail; +// +///** +// * Tests only work on the current version of mockXML/raceXML/raceTest.xml +// */ +//public class VisualiserRaceTest { +// private RaceXMLReader streamedCourseXMLReader; +// private List boundary; +// +// @Before +// public void setup() { +// try { +// streamedCourseXMLReader = new RaceXMLReader(XMLReader.readXMLFileToString("mockXML/raceXML/raceTest.xml", StandardCharsets.UTF_8)); +// boundary = streamedCourseXMLReader.getBoundary(); +// } catch (InvalidRaceDataException e) { +// e.printStackTrace(); +// fail("Cannot find mockXML/raceXML/raceTest.xml in the resources folder"); +// } +// } +// +// @Test +// public void testAllBoundaryPointsRead() { +// assertEquals(boundary.size(), 10); +// } +// +// @Test +// public void testBoundaryPointData() { +// // First point +// assertEquals(boundary.get(0).getLatitude(), -36.8325, 1e-6); +// assertEquals(boundary.get(0).getLongitude(), 174.8325, 1e-6); +// +// // Last point +// assertEquals(boundary.get(boundary.size() - 1).getLatitude(), -36.83417, 1e-6); +// assertEquals(boundary.get(boundary.size() - 1).getLongitude(), 174.84767, 1e-6); +// } +// +// @Test +// public void testMapEdges() { +// double maxLatitude = streamedCourseXMLReader.getMapBottomRight().getLatitude() - streamedCourseXMLReader.getPadding(); +// double maxLongitude = streamedCourseXMLReader.getMapBottomRight().getLongitude() - streamedCourseXMLReader.getPadding(); +// double minLatitude = streamedCourseXMLReader.getMapTopLeft().getLatitude() - streamedCourseXMLReader.getPadding(); +// double minLongitude = streamedCourseXMLReader.getMapTopLeft().getLongitude() - streamedCourseXMLReader.getPadding(); +// +// assertEquals(maxLatitude, -36.81033, 1e-6); +// assertEquals(maxLongitude, 174.88217, 1e-6); +// assertEquals(minLatitude, -36.83417, 1e-6); +// assertEquals(minLongitude, 174.81983, 1e-6); +// } +// +// @Test +// public void testRaceSettings() { +// +// } +// +// @Test +// public void correctLegSequence() { +// List legs = streamedCourseXMLReader.getLegs(); +// String[] expectedNames = { +// "StartLine", +// "M1", +// "M2", +// "Gate" +// }; +// for(int i = 0; i < legs.size(); i++) { +// assertEquals(expectedNames[i], legs.get(i).getName()); +// } +// } +// +// /** +// * raceTest.xml is not compliant with this test. Markers are positioned far out of bounds. +// */ +// @Test +// @Ignore +// public void markersWithinRaceBoundaries() { +// GPSCoordinate topLeft = streamedCourseXMLReader.getMapTopLeft(); +// GPSCoordinate bottomRight = streamedCourseXMLReader.getMapBottomRight(); +// +// for(Marker compoundMark : streamedCourseXMLReader.getMarkers()) { +// GPSCoordinate centre = compoundMark.getAverageGPSCoordinate(); +// assertTrue(centre.getLatitude() < bottomRight.getLatitude()); +// assertTrue(centre.getLatitude() > topLeft.getLatitude()); +// assertTrue(centre.getLongitude() > bottomRight.getLongitude()); +// assertTrue(centre.getLongitude() < topLeft.getLongitude()); +// } +// } +//} diff --git a/network/src/test_old/resources/raceXML/Regatta.xml b/racevisionGame/src/test/resources/network/raceXML/Regatta.xml similarity index 100% rename from network/src/test_old/resources/raceXML/Regatta.xml rename to racevisionGame/src/test/resources/network/raceXML/Regatta.xml diff --git a/visualiser/src/test_old/resources/mockXML/boatXML/boatTest.xml b/racevisionGame/src/test/resources/visualiser/mockXML/boatXML/boatTest.xml similarity index 100% rename from visualiser/src/test_old/resources/mockXML/boatXML/boatTest.xml rename to racevisionGame/src/test/resources/visualiser/mockXML/boatXML/boatTest.xml diff --git a/visualiser/src/test_old/resources/mockXML/boatXML/insufficientInformation.xml b/racevisionGame/src/test/resources/visualiser/mockXML/boatXML/insufficientInformation.xml similarity index 100% rename from visualiser/src/test_old/resources/mockXML/boatXML/insufficientInformation.xml rename to racevisionGame/src/test/resources/visualiser/mockXML/boatXML/insufficientInformation.xml diff --git a/visualiser/src/test_old/resources/mockXML/boatXML/invalidSourceID.xml b/racevisionGame/src/test/resources/visualiser/mockXML/boatXML/invalidSourceID.xml similarity index 100% rename from visualiser/src/test_old/resources/mockXML/boatXML/invalidSourceID.xml rename to racevisionGame/src/test/resources/visualiser/mockXML/boatXML/invalidSourceID.xml diff --git a/visualiser/src/test_old/resources/mockXML/raceXML/raceTest.xml b/racevisionGame/src/test/resources/visualiser/mockXML/raceXML/raceTest.xml similarity index 100% rename from visualiser/src/test_old/resources/mockXML/raceXML/raceTest.xml rename to racevisionGame/src/test/resources/visualiser/mockXML/raceXML/raceTest.xml diff --git a/visualiser/src/test_old/resources/mockXML/regattaXML/regattaTest.xml b/racevisionGame/src/test/resources/visualiser/mockXML/regattaXML/regattaTest.xml similarity index 100% rename from visualiser/src/test_old/resources/mockXML/regattaXML/regattaTest.xml rename to racevisionGame/src/test/resources/visualiser/mockXML/regattaXML/regattaTest.xml diff --git a/visualiser/src/test_old/resources/raceXML/bermuda_AC35.xml b/racevisionGame/src/test/resources/visualiser/raceXML/bermuda_AC35.xml similarity index 100% rename from visualiser/src/test_old/resources/raceXML/bermuda_AC35.xml rename to racevisionGame/src/test/resources/visualiser/raceXML/bermuda_AC35.xml diff --git a/visualiser/src/test_old/java/seng302/Mock/StreamedRaceTest.java b/visualiser/src/test_old/java/seng302/Mock/StreamedRaceTest.java deleted file mode 100644 index bca938c7..00000000 --- a/visualiser/src/test_old/java/seng302/Mock/StreamedRaceTest.java +++ /dev/null @@ -1,98 +0,0 @@ -package seng302.Mock; - -import org.junit.Before; -import org.junit.Ignore; -import org.junit.Test; -import seng302.GPSCoordinate; -import seng302.Model.Leg; -import seng302.Model.Marker; - -import java.util.List; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -/** - * Tests only work on the current version of mockXML/raceXML/raceTest.xml - */ -public class StreamedRaceTest { - private StreamedCourseXMLReader streamedCourseXMLReader; - private List boundary; - - @Before - public void setup() { - try { - streamedCourseXMLReader = new StreamedCourseXMLReader("mockXML/raceXML/raceTest.xml", true); - boundary = streamedCourseXMLReader.getBoundary(); - } catch (Exception | StreamedCourseXMLException e) { - e.printStackTrace(); - //fail("Cannot find mockXML/raceXML/raceTest.xml in the resources folder"); - } - } - - @Test - public void testAllBoundaryPointsRead() { - assertEquals(boundary.size(), 10); - } - - @Test - public void testBoundaryPointData() { - // First point - assertEquals(boundary.get(0).getLatitude(), -36.8325, 1e-6); - assertEquals(boundary.get(0).getLongitude(), 174.8325, 1e-6); - - // Last point - assertEquals(boundary.get(boundary.size() - 1).getLatitude(), -36.83417, 1e-6); - assertEquals(boundary.get(boundary.size() - 1).getLongitude(), 174.84767, 1e-6); - } - - @Test - public void testMapEdges() { - double maxLatitude = streamedCourseXMLReader.getMapBottomRight().getLatitude() - streamedCourseXMLReader.getPadding(); - double maxLongitude = streamedCourseXMLReader.getMapBottomRight().getLongitude() - streamedCourseXMLReader.getPadding(); - double minLatitude = streamedCourseXMLReader.getMapTopLeft().getLatitude() - streamedCourseXMLReader.getPadding(); - double minLongitude = streamedCourseXMLReader.getMapTopLeft().getLongitude() - streamedCourseXMLReader.getPadding(); - - assertEquals(maxLatitude, -36.81033, 1e-6); - assertEquals(maxLongitude, 174.88217, 1e-6); - assertEquals(minLatitude, -36.83417, 1e-6); - assertEquals(minLongitude, 174.81983, 1e-6); - } - - @Test - public void testRaceSettings() { - - } - - @Test - public void correctLegSequence() { - List legs = streamedCourseXMLReader.getLegs(); - String[] expectedNames = { - "StartLine", - "M1", - "M2", - "Gate" - }; - for(int i = 0; i < legs.size(); i++) { - assertEquals(expectedNames[i], legs.get(i).getName()); - } - } - - /** - * raceTest.xml is not compliant with this test. Markers are positioned far out of bounds. - */ - @Test - @Ignore - public void markersWithinRaceBoundaries() { - GPSCoordinate topLeft = streamedCourseXMLReader.getMapTopLeft(); - GPSCoordinate bottomRight = streamedCourseXMLReader.getMapBottomRight(); - - for(Marker compoundMark : streamedCourseXMLReader.getMarkers()) { - GPSCoordinate centre = compoundMark.getAverageGPSCoordinate(); - assertTrue(centre.getLatitude() < bottomRight.getLatitude()); - assertTrue(centre.getLatitude() > topLeft.getLatitude()); - assertTrue(centre.getLongitude() > bottomRight.getLongitude()); - assertTrue(centre.getLongitude() < topLeft.getLongitude()); - } - } -} diff --git a/visualiser/src/test_old/java/seng302/Model/BoatInRaceTest.java b/visualiser/src/test_old/java/seng302/Model/BoatInRaceTest.java deleted file mode 100644 index 22c2caaf..00000000 --- a/visualiser/src/test_old/java/seng302/Model/BoatInRaceTest.java +++ /dev/null @@ -1,149 +0,0 @@ -package seng302.Model; - -/** - * Tests various aspects of a boat in race perform correctly. - */ -public class BoatInRaceTest { - // TODO change this test to use Boat and not BoatInRace ?? - // TODO delete BoatInRace class - -// private final GPSCoordinate ORIGIN_COORDS = new GPSCoordinate(0, 0); -// private final BoatInRace TEST_BOAT = new BoatInRace("Test", 1, Color.ALICEBLUE, "tt"); -// -// -// @Test -// public void calculateDueNorthAzimuthReturns0() { -// -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(50, 0)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateAzimuth(), 0, 1e-8); -// } -// -// @Test -// public void calculateDueSouthAzimuthReturns180() { -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(-50, 0)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateAzimuth(), 180, 1e-8); -// } -// -// -// @Test -// public void calculateDueEastAzimuthReturns90() { -// -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(0, 50)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateAzimuth(), 90, 1e-8); -// } -// -// -// @Test -// public void calculateDueWestAzimuthReturnsNegative90() { -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(0, -50)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateAzimuth(), -90, 1e-8); -// -// } -// -// @Test -// public void calculateDueNorthHeadingReturns0() { -// -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(50, 0)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateHeading(), 0, 1e-8); -// } -// -// -// @Test -// public void calculateDueEastHeadingReturns90() { -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(0, 50)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateHeading(), 90, 1e-8); -// } -// -// @Test -// public void calculateDueSouthHeadingReturns180() { -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(-50, 0)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateHeading(), 180, 1e-8); -// } -// -// @Test -// public void calculateDueWestHeadingReturns270() { -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(0, -50)); -// Leg start = new Leg("Start", startMarker, endMarker, 0); -// TEST_BOAT.setCurrentLeg(start); -// assertEquals(TEST_BOAT.calculateHeading(), 270, 1e-8); -// } -// -// @Test -// public void createNewBoatCratesInstanceOfSuperClass() { -// -// BoatInRace testBoat = new BoatInRace("Boat", 20, Color.ALICEBLUE, "tt"); -// testBoat.setName("Name can change"); -// assertTrue(testBoat instanceof Boat); -// assertTrue(testBoat.getCurrentLeg() == null); -// assertTrue(testBoat.getCurrentPosition() == null); -// assertTrue(testBoat.toString().contains("Name can change")); -// assertEquals(testBoat.getVelocity(), 20.0); -// assertTrue(testBoat.getVelocityProp().toString().contains("20")); -// assertTrue(testBoat.getAbbrev().equals("tt")); -// assertTrue(testBoat.getColour().equals(Color.ALICEBLUE)); -// assertFalse(testBoat.isFinished()); -// } -// -// -// @Test -// public void getWakeAtProperHeading() throws Exception { -// BoatInRace boat = new BoatInRace("Test", 1, Color.ALICEBLUE, "tt"); -// -// // Construct leg of 0 degrees -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(50, 0)); -// Leg leg0deg = new Leg("Start", startMarker, endMarker, 0); -// boat.setCurrentLeg(leg0deg); -// boat.setCurrentPosition(new GPSCoordinate(0, 0)); -// -// assertEquals(0, boat.calculateHeading(), 1e-8); -// -// // Construct leg from wake - heading should be 180 degrees -// Leg leg180deg = new Leg("Start", startMarker, new Marker(boat.getWake()), 0); -// boat.setCurrentLeg(leg180deg); -// -// assertEquals(180, boat.calculateHeading(), 1e-8); -// } -// -// -// @Test -// public void getWakeProportionalToVelocity() throws Exception { -// BoatInRace boat = new BoatInRace("Test", 10, Color.ALICEBLUE, "tt"); -// -// // Construct leg of 0 degrees at 0 N -// Marker startMarker = new Marker(ORIGIN_COORDS); -// Marker endMarker = new Marker(new GPSCoordinate(50, 0)); -// Leg leg0deg = new Leg("Start", startMarker, endMarker, 0); -// boat.setCurrentLeg(leg0deg); -// boat.setCurrentPosition(new GPSCoordinate(0, 0)); -// -// // Get latitude of endpoint of wake at 10 kn (longitude is 0) -// double endpointAt10Kn = boat.getWake().getLatitude(); -// -// // Latitude of endpoint at 20 kn should be twice endpoint at 10 kn -// boat.setVelocity(20); -// assertEquals(2 * endpointAt10Kn, boat.getWake().getLatitude(), 1e-8); -// } -} \ No newline at end of file diff --git a/visualiser/src/test_old/java/seng302/Model/ConstantVelocityRaceTest.java b/visualiser/src/test_old/java/seng302/Model/ConstantVelocityRaceTest.java deleted file mode 100644 index 4985c69f..00000000 --- a/visualiser/src/test_old/java/seng302/Model/ConstantVelocityRaceTest.java +++ /dev/null @@ -1,140 +0,0 @@ -//package seng302.Model; -// -// -//import javafx.scene.paint.Color; -//import org.geotools.referencing.GeodeticCalculator; -//import org.junit.Test; -//import seng302.Constants; -//import seng302.GPSCoordinate; -// -//import java.lang.reflect.Array; -//import java.util.ArrayList; -// -//import static org.junit.Assert.assertEquals; -// -///** -// * Created by esa46 on 16/03/17. -// */ -//public class ConstantVelocityRaceTest { -// -// CompoundMark START_MARKER = new CompoundMark(new GPSCoordinate(0, 0)); -// CompoundMark END_MARKER = new CompoundMark(new GPSCoordinate(10, 10)); -// Leg START_LEG = new Leg("Start", START_MARKER, END_MARKER, 0); -// -// int ONE_HOUR = 3600000; //1 hour in milliseconds -// -// -// private ArrayList generateLegsArray() { -// ArrayList legs = new ArrayList<>(); -// legs.add(START_LEG); -// return legs; -// } -// -// @Test -// public void updatePositionChangesDistanceTravelled() { -// ArrayList legs = generateLegsArray(); -// BoatInRace boat = new BoatInRace("Test", 1, Color.ALICEBLUE, "tt"); -// boat.setCurrentLeg(legs.get(0)); -// boat.setDistanceTravelledInLeg(0); -// BoatInRace[] boats = new BoatInRace[]{boat}; -// -// ConstantVelocityRace race = new ConstantVelocityRace(boats, legs, null, 1); -// -// race.updatePosition(boat, ONE_HOUR); -// assertEquals(boat.getDistanceTravelledInLeg(), boat.getVelocity(), 1e-8); -// } -// -// -// @Test -// public void updatePositionHandlesNoChangeToDistanceTravelled() { -// -// ArrayList legs = generateLegsArray(); -// BoatInRace boat = new BoatInRace("Test", 0, Color.ALICEBLUE, "tt"); -// boat.setCurrentLeg(legs.get(0)); -// boat.setDistanceTravelledInLeg(0); -// BoatInRace[] boats = new BoatInRace[]{boat}; -// -// ConstantVelocityRace race = new ConstantVelocityRace(boats, legs, null, 1); -// -// race.updatePosition(boat, ONE_HOUR); -// assertEquals(boat.getDistanceTravelledInLeg(), 0, 1e-8); -// } -// -// @Test -// public void changesToDistanceTravelledAreAdditive() { -// -// ArrayList legs = generateLegsArray(); -// BoatInRace boat = new BoatInRace("Test", 5, Color.ALICEBLUE, "tt"); -// boat.setCurrentLeg(legs.get(0)); -// boat.setDistanceTravelledInLeg(50); -// BoatInRace[] boats = new BoatInRace[]{boat}; -// -// ConstantVelocityRace race = new ConstantVelocityRace(boats, legs, null, 1); -// -// race.updatePosition(boat, ONE_HOUR); -// assertEquals(boat.getDistanceTravelledInLeg(), boat.getVelocity() + 50, 1e-8); -// } -// -// @Test -// public void travelling10nmNorthGivesCorrectNewCoordinates() { -// GPSCoordinate oldPos = new GPSCoordinate(0, 0); -// GPSCoordinate newPos = ConstantVelocityRace.calculatePosition(oldPos, 10, 0); -// -// GeodeticCalculator calc = new GeodeticCalculator(); -// calc.setStartingGeographicPoint(0, 0); -// calc.setDirection(0, 10 * Constants.NMToMetersConversion); -// -// assertEquals(newPos.getLongitude(), 0, 1e-8); -// assertEquals(newPos.getLatitude(), calc.getDestinationGeographicPoint().getY(), 1e-8); -// assertEquals(newPos.getLongitude(), calc.getDestinationGeographicPoint().getX(), 1e-8); -// } -// -// -// @Test -// public void travelling10nmEastGivesCorrectNewCoordinates() { -// GPSCoordinate oldPos = new GPSCoordinate(0, 0); -// GPSCoordinate newPos = ConstantVelocityRace.calculatePosition(oldPos, 10, 90); -// -// GeodeticCalculator calc = new GeodeticCalculator(); -// calc.setStartingGeographicPoint(0, 0); -// calc.setDirection(90, 10 * Constants.NMToMetersConversion); -// -// -// assertEquals(newPos.getLatitude(), 0, 1e-8); -// assertEquals(newPos.getLatitude(), calc.getDestinationGeographicPoint().getY(), 1e-8); -// assertEquals(newPos.getLongitude(), calc.getDestinationGeographicPoint().getX(), 1e-8); -// } -// -// -// @Test -// public void travelling10nmWestGivesCorrectNewCoordinates() { -// GPSCoordinate oldPos = new GPSCoordinate(0, 0); -// GPSCoordinate newPos = ConstantVelocityRace.calculatePosition(oldPos, 10, -90); -// -// GeodeticCalculator calc = new GeodeticCalculator(); -// calc.setStartingGeographicPoint(0, 0); -// calc.setDirection(-90, 10 * Constants.NMToMetersConversion); -// -// -// assertEquals(newPos.getLatitude(), 0, 1e-8); -// assertEquals(newPos.getLatitude(), calc.getDestinationGeographicPoint().getY(), 1e-8); -// assertEquals(newPos.getLongitude(), calc.getDestinationGeographicPoint().getX(), 1e-8); -// } -// -// -// @Test -// public void travelling10nmSouthGivesCorrectNewCoordinates() { -// GPSCoordinate oldPos = new GPSCoordinate(0, 0); -// GPSCoordinate newPos = ConstantVelocityRace.calculatePosition(oldPos, 10, 180); -// -// GeodeticCalculator calc = new GeodeticCalculator(); -// calc.setStartingGeographicPoint(0, 0); -// calc.setDirection(180, 10 * Constants.NMToMetersConversion); -// -// -// assertEquals(newPos.getLongitude(), 0, 1e-8); -// assertEquals(newPos.getLatitude(), calc.getDestinationGeographicPoint().getY(), 1e-8); -// assertEquals(newPos.getLongitude(), calc.getDestinationGeographicPoint().getX(), 1e-8); -// } -// -//} diff --git a/visualiser/src/test_old/java/seng302/Model/LegTest.java b/visualiser/src/test_old/java/seng302/Model/LegTest.java deleted file mode 100644 index 56176a61..00000000 --- a/visualiser/src/test_old/java/seng302/Model/LegTest.java +++ /dev/null @@ -1,78 +0,0 @@ -package seng302.Model; - -import org.geotools.referencing.GeodeticCalculator; -import org.junit.Test; -import seng302.GPSCoordinate; - -import java.awt.geom.Point2D; - -import static junit.framework.TestCase.assertEquals; -import static seng302.Model.Leg.NM_TO_METERS; - -/** - * Tests that using a start and end mark initialises the correct leg between - * the markers. - */ -public class LegTest { - - private final Marker ORIGIN_Marker = new Marker(new GPSCoordinate(0, 0)); - - @Test - public void calculateDistanceHandles5nmNorth() { - GeodeticCalculator calc = new GeodeticCalculator(); - calc.setStartingGeographicPoint(0, 0); - calc.setDirection(0, 5 * NM_TO_METERS); - - Marker endMarker = getEndMarker(calc.getDestinationGeographicPoint()); - Leg test = new Leg("Test", ORIGIN_Marker, endMarker, 0); - assertEquals(test.getDistance(), 5, 1e-8); - } - - @Test - public void calculateDistanceHandles12nmEast() { - GeodeticCalculator calc = new GeodeticCalculator(); - calc.setStartingGeographicPoint(0, 0); - calc.setDirection(90, 12 * NM_TO_METERS); - - Marker endMarker = getEndMarker(calc.getDestinationGeographicPoint()); - Leg test = new Leg("Test", ORIGIN_Marker, endMarker, 0); - assertEquals(test.getDistance(), 12, 1e-8); - } - - @Test - public void calculateDistanceHandlesHalfnmSouth() { - GeodeticCalculator calc = new GeodeticCalculator(); - calc.setStartingGeographicPoint(0, 0); - calc.setDirection(180, 0.5 * NM_TO_METERS); - - Marker endMarker = getEndMarker(calc.getDestinationGeographicPoint()); - Leg test = new Leg("Test", ORIGIN_Marker, endMarker, 0); - assertEquals(test.getDistance(), 0.5, 1e-8); - } - - @Test - public void calculateDistanceHandlesPoint1nmWest() { - GeodeticCalculator calc = new GeodeticCalculator(); - calc.setStartingGeographicPoint(0, 0); - calc.setDirection(-90, 0.1 * NM_TO_METERS); - - Marker endMarker = getEndMarker(calc.getDestinationGeographicPoint()); - Leg test = new Leg("Test", ORIGIN_Marker, endMarker, 0); - assertEquals(test.getDistance(), 0.1, 1e-8); - } - - @Test - public void calculateDistanceHandlesZeroDifference() { - - Leg test = new Leg("Test", ORIGIN_Marker, ORIGIN_Marker, 0); - assertEquals(test.getDistance(), 0, 1e-8); - } - - private Marker getEndMarker(Point2D point) { - - GPSCoordinate coords = new GPSCoordinate(point.getY(), point.getX()); - - return new Marker(coords); - - } -} diff --git a/visualiser/src/test_old/java/seng302/Model/MarkerTest.java b/visualiser/src/test_old/java/seng302/Model/MarkerTest.java deleted file mode 100644 index 420c5eff..00000000 --- a/visualiser/src/test_old/java/seng302/Model/MarkerTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package seng302.Model; - -import org.junit.Test; -import seng302.GPSCoordinate; - -import static org.junit.Assert.assertTrue; - -/** - * Created by esa46 on 29/03/17. - */ -public class MarkerTest { - - private final GPSCoordinate ORIGIN_COORD = new GPSCoordinate(0, 0); - - @Test - public void averageOfSingleMarkAtOriginIsSingleMark() { - - Marker testMark = new Marker(ORIGIN_COORD); - assertTrue(testMark.getAverageGPSCoordinate().equals(ORIGIN_COORD)); - - } - - @Test - public void averageOfSingleMarkIsSingleMark() { - - GPSCoordinate testCoord = new GPSCoordinate(20, 25); - Marker testMark = new Marker(testCoord); - assertTrue(testMark.getAverageGPSCoordinate().equals(testCoord)); - - } - - @Test - public void averageLatOfTwoMarksIsAccurate() { - - GPSCoordinate testCoord = new GPSCoordinate(10, 0); - Marker testMark = new Marker(ORIGIN_COORD, testCoord); - assertTrue(testMark.getAverageGPSCoordinate().equals(new GPSCoordinate(5, 0))); - } - - @Test - public void averageLongOfTwoMarksIsAccurate() { - - GPSCoordinate testCoord = new GPSCoordinate(0, 10); - Marker testMark = new Marker(ORIGIN_COORD, testCoord); - assertTrue(testMark.getAverageGPSCoordinate().equals(new GPSCoordinate(0, 5))); - } - - @Test - public void averageLatAndLongOfTwoMarksIsAccurate() { - - GPSCoordinate testCoord1 = new GPSCoordinate(10, 30); - GPSCoordinate testCoord2 = new GPSCoordinate(30, 60); - Marker testMark = new Marker(testCoord1, testCoord2); - assertTrue(testMark.getAverageGPSCoordinate().equals(new GPSCoordinate(020.644102, 44.014817))); - } - -} diff --git a/visualiser/src/test_old/java/seng302/Model/RaceTest.java b/visualiser/src/test_old/java/seng302/Model/RaceTest.java deleted file mode 100644 index 6f3a8911..00000000 --- a/visualiser/src/test_old/java/seng302/Model/RaceTest.java +++ /dev/null @@ -1,8 +0,0 @@ -package seng302.Model; - -/** - * Created by esa46 on 15/03/17. - */ -public class RaceTest { - -} diff --git a/visualiser/src/test_old/java/seng302/Model/RaceXMLTest.java b/visualiser/src/test_old/java/seng302/Model/RaceXMLTest.java deleted file mode 100644 index e69de29b..00000000