use of com.solinia.solinia.Exceptions.InvalidPacketException in project solinia3-core by mixxit.
the class PacketTrackingChoices method fromPacketData.
public void fromPacketData(String data) throws InvalidPacketException {
if (data == null)
throw new InvalidPacketException("Packet data is empty");
if (!data.contains("^"))
throw new InvalidPacketException("Packet data is wrong format");
List<TrackingChoice> trackingChoices = new ArrayList<TrackingChoice>();
String[] dataArray = data.split("\\^");
for (int i = 0; i < dataArray.length; i++) {
String[] trackingArray = dataArray[i].split("\\|", -1);
TrackingChoice trackingChoice = new TrackingChoice();
trackingChoice.Distance = Integer.parseInt(trackingArray[0]);
trackingChoice.Color = trackingArray[1];
trackingChoice.Name = trackingArray[2];
trackingChoice.Id = trackingArray[3];
trackingChoices.add(trackingChoice);
}
this.trackingChoices = trackingChoices;
}
use of com.solinia.solinia.Exceptions.InvalidPacketException in project solinia3-core by mixxit.
the class PacketEffectsTest method WhenGivenPacketDataReturnExpectedFormat.
@Test
public void WhenGivenPacketDataReturnExpectedFormat() {
String testForPacketData = "1|1|1|1|Name";
String foundPacketData = "";
try {
PacketEffects vitals = new PacketEffects();
vitals.fromPacketData(testForPacketData);
foundPacketData = vitals.toPacketData();
} catch (InvalidPacketException e) {
e.printStackTrace();
}
assertEquals(testForPacketData, foundPacketData);
}
use of com.solinia.solinia.Exceptions.InvalidPacketException in project solinia3-core by mixxit.
the class PacketMemorisedSpellsTest method WhenGivenPacketDataReturnExpectedFormat.
@Test
public void WhenGivenPacketDataReturnExpectedFormat() {
String testForPacketData = "1|1|1|1|1|Name";
String foundPacketData = "";
try {
PacketMemorisedSpells vitals = new PacketMemorisedSpells();
vitals.fromPacketData(testForPacketData);
foundPacketData = vitals.toPacketData();
} catch (InvalidPacketException e) {
e.printStackTrace();
}
assertEquals(testForPacketData, foundPacketData);
}
use of com.solinia.solinia.Exceptions.InvalidPacketException in project solinia3-core by mixxit.
the class PacketOpenCharacterCreationTest method WhenGivenPacketDataReturnsAllValues.
@Test
public void WhenGivenPacketDataReturnsAllValues() {
String testPacketData = "";
boolean first = true;
List<String> races = new ArrayList<String>();
races.add("Meroei");
races.add("Caerthain");
List<String> classes = new ArrayList<String>();
classes.add("Druid");
classes.add("Paladin");
for (int i = 1; i <= races.size(); i++) {
for (int i2 = 1; i2 <= classes.size(); i2++) {
if (first)
first = false;
else
testPacketData += "^";
String raceName = races.get(i - 1);
String className = classes.get(i2 - 1);
testPacketData += i + "|" + i2 + "|" + raceName + "|" + className + "|" + raceName.substring(0, 3) + "|" + className.substring(0, 3) + "|raceDesc|classDesc|" + "1|2|3|4|5|6|7";
}
}
try {
PacketOpenCharacterCreation vitals = new PacketOpenCharacterCreation();
vitals.fromPacketData(testPacketData);
for (Map.Entry<String, RaceChoice> entry : vitals.getCharacterCreation().raceChoices.entrySet()) {
assertEquals(true, entry.getValue().RaceId > 0);
assertEquals(true, entry.getValue().ClassId > 0);
assertEquals(true, entry.getValue().RaceName.length() > 0);
assertEquals(true, entry.getValue().ClassName.length() > 0);
assertEquals(true, entry.getValue().RaceShort.length() > 0);
assertEquals(true, entry.getValue().ClassShort.length() > 0);
assertEquals(true, entry.getValue().RaceDescription.length() > 0);
assertEquals(true, entry.getValue().ClassDescription.length() > 0);
assertEquals(true, entry.getValue().STR > 0);
assertEquals(true, entry.getValue().STA > 0);
assertEquals(true, entry.getValue().AGI > 0);
assertEquals(true, entry.getValue().DEX > 0);
assertEquals(true, entry.getValue().INT > 0);
assertEquals(true, entry.getValue().WIS > 0);
assertEquals(true, entry.getValue().CHA > 0);
}
} catch (InvalidPacketException e) {
e.printStackTrace();
}
}
use of com.solinia.solinia.Exceptions.InvalidPacketException in project solinia3-core by mixxit.
the class PacketTrackingChoicesTest method WhenGivenMultiplePacketDataReturnExpectedFormat.
@Test
public void WhenGivenMultiplePacketDataReturnExpectedFormat() {
String testForPacketData = "1|RED|Name|NPCID_333^2|GREEN|Ted|NPCID_334^";
String foundPacketData = "";
try {
PacketTrackingChoices vitals = new PacketTrackingChoices();
vitals.fromPacketData(testForPacketData);
foundPacketData = vitals.toPacketData();
} catch (InvalidPacketException e) {
e.printStackTrace();
}
assertEquals(testForPacketData, foundPacketData);
}
Aggregations