Browse Source

EncoderAckPacketTest, EncoderJsonPacketTest added

master
Nikita 13 years ago
parent
commit
7dae8dc7dc
  1. 2
      src/main/java/com/corundumstudio/socketio/parser/Encoder.java
  2. 6
      src/main/java/com/corundumstudio/socketio/parser/Event.java
  3. 6
      src/main/java/com/corundumstudio/socketio/parser/Packet.java
  4. 32
      src/test/java/com/corundumstudio/socketio/parser/EncoderAckPacketTest.java
  5. 32
      src/test/java/com/corundumstudio/socketio/parser/EncoderJsonPacketTest.java

2
src/main/java/com/corundumstudio/socketio/parser/Encoder.java

@ -67,7 +67,7 @@ public class Encoder {
case ACK:
String dataStr = packet.getAckId();
if (packet.getArgs() != null) {
if (!packet.getArgs().isEmpty()) {
dataStr += "+" + objectMapper.writeValueAsString(packet.getArgs());
}
data = dataStr;

6
src/main/java/com/corundumstudio/socketio/parser/Event.java

@ -15,18 +15,18 @@ import java.util.List;
public class Event {
private String name;
private List<Object> args;
private List<?> args;
public Event() {
}
public Event(String name, List<Object> args) {
public Event(String name, List<?> args) {
super();
this.name = name;
this.args = args;
}
public List<Object> getArgs() {
public List<?> getArgs() {
return args;
}

6
src/main/java/com/corundumstudio/socketio/parser/Packet.java

@ -19,7 +19,7 @@ public class Packet {
public static final Packet NULL_INSTANCE = new Packet(null);
private final PacketType type;
private List<Object> args = Collections.emptyList();
private List<?> args = Collections.emptyList();
private String qs;
private Object ack;
private String ackId;
@ -75,10 +75,10 @@ public class Packet {
this.name = name;
}
public List<Object> getArgs() {
public List<?> getArgs() {
return args;
}
public void setArgs(List<Object> args) {
public void setArgs(List<?> args) {
this.args = args;
}

32
src/test/java/com/corundumstudio/socketio/parser/EncoderAckPacketTest.java

@ -0,0 +1,32 @@
package com.corundumstudio.socketio.parser;
import java.io.IOException;
import java.util.Arrays;
import org.codehaus.jackson.map.ObjectMapper;
import org.junit.Assert;
import org.junit.Test;
public class EncoderAckPacketTest {
private Encoder encoder = new Encoder(new ObjectMapper());
@Test
public void testEncode() throws IOException {
Packet packet = new Packet(PacketType.ACK);
packet.setAckId("140");
String result = encoder.encodePacket(packet);
Assert.assertEquals("6:::140", result);
}
@Test
public void testEncodeWithArgs() throws IOException {
Packet packet = new Packet(PacketType.ACK);
packet.setAckId("12");
packet.setArgs(Arrays.asList("woot", "wa"));
String result = encoder.encodePacket(packet);
Assert.assertEquals("6:::12+[\"woot\",\"wa\"]", result);
}
}

32
src/test/java/com/corundumstudio/socketio/parser/EncoderJsonPacketTest.java

@ -0,0 +1,32 @@
package com.corundumstudio.socketio.parser;
import java.io.IOException;
import java.util.Collections;
import org.codehaus.jackson.map.ObjectMapper;
import org.junit.Assert;
import org.junit.Test;
public class EncoderJsonPacketTest {
private Encoder encoder = new Encoder(new ObjectMapper());
@Test
public void testEncode() throws IOException {
Packet packet = new Packet(PacketType.JSON);
packet.setData("2");
String result = encoder.encodePacket(packet);
Assert.assertEquals("4:::\"2\"", result);
}
@Test
public void testEncodeWithMessageIdAndAckData() throws IOException {
Packet packet = new Packet(PacketType.JSON);
packet.setId("1");
packet.setAck("data");
packet.setData(Collections.singletonMap("a", "b"));
String result = encoder.encodePacket(packet);
Assert.assertEquals("4:1+::{\"a\":\"b\"}", result);
}
}
Loading…
Cancel
Save