package network; import network.MessageEncoders.RaceVisionByteEncoder; import network.Messages.Enums.XMLMessageType; import network.Messages.XMLMessage; import org.junit.Assert; import org.junit.Test; import shared.dataInput.XMLReader; import shared.exceptions.XMLReaderException; import javax.xml.transform.TransformerException; import java.nio.charset.StandardCharsets; import static org.junit.Assert.fail; /** * Created by hba56 on 19/04/17. */ public class XMLMessageEncoderTest { @Test public void getByteArrayTest() { try { String xmlString = XMLReader.readXMLFileToString("network/raceXML/Regatta.xml", StandardCharsets.UTF_8); XMLMessage message = new XMLMessage( (byte)1, 1, System.currentTimeMillis(), XMLMessageType.REGATTA, (short)1, xmlString ); int xmlMessageLength = xmlString.getBytes().length; byte[] encodedXML = RaceVisionByteEncoder.xmlMessage(message); //1 + 2 + 6 + 1 + 2 + 2 + xml.byteLength Assert.assertEquals(14 + xmlMessageLength, encodedXML.length); } catch (XMLReaderException | TransformerException e){ fail("couldn't read file" + e.getMessage()); } } }