Skip to content

Commit 3143ccb

Browse files
author
周旭
committed
test: MsgCodec TestCases
1 parent ad0aa88 commit 3143ccb

2 files changed

Lines changed: 82 additions & 35 deletions

File tree

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
package com.ejlchina.stomp;
2+
3+
import com.ejlchina.okhttps.OnCallback;
4+
import com.ejlchina.okhttps.test.BaseTest;
5+
import org.junit.Assert;
6+
import org.junit.Test;
7+
8+
import com.ejlchina.okhttps.OkHttps;
9+
10+
import java.util.ArrayList;
11+
import java.util.List;
12+
import java.util.concurrent.CountDownLatch;
13+
14+
15+
public class MsgCodecTestCases {
16+
17+
static class DecodeCallback implements OnCallback<Message> {
18+
19+
private final List<Message> list = new ArrayList<>();
20+
21+
@Override
22+
public void on(Message data) {
23+
list.add(data);
24+
}
25+
26+
public List<Message> getList() {
27+
return list;
28+
}
29+
}
30+
31+
32+
@Test
33+
public void testMsgCodecImplDecode1() {
34+
MsgCodec msgCodec = new MsgCodecImpl();
35+
DecodeCallback callback = new DecodeCallback();
36+
msgCodec.decode("MESSAGE\nk1:v1\nk2:v2\n\n123456\u0000", callback);
37+
List<Message> list = callback.getList();
38+
Assert.assertEquals(1, list.size());
39+
Message message = list.get(0);
40+
Assert.assertEquals("MESSAGE", message.getCommand());
41+
Assert.assertEquals("123456", message.getPayload());
42+
Assert.assertEquals("v1", message.headerValue("k1"));
43+
Assert.assertEquals("v2", message.headerValue("k2"));
44+
}
45+
46+
@Test
47+
public void testMsgCodecImplDecode2() {
48+
MsgCodec msgCodec = new MsgCodecImpl();
49+
DecodeCallback callback = new DecodeCallback();
50+
msgCodec.decode(" \n MESSAGE\nk1:v1\nk2:v2\n\n123456\u0000", callback);
51+
List<Message> list = callback.getList();
52+
Assert.assertEquals(1, list.size());
53+
Message message = list.get(0);
54+
Assert.assertEquals("MESSAGE", message.getCommand());
55+
Assert.assertEquals("123456", message.getPayload());
56+
Assert.assertEquals("v1", message.headerValue("k1"));
57+
Assert.assertEquals("v2", message.headerValue("k2"));
58+
}
59+
60+
@Test
61+
public void testMsgCodecImplDecode3() {
62+
MsgCodec msgCodec = new MsgCodecImpl();
63+
DecodeCallback callback = new DecodeCallback();
64+
msgCodec.decode(" \n ", callback);
65+
msgCodec.decode(" MESSAGE\nk1:", callback);
66+
msgCodec.decode("v1\nk2:v2\n\n12345", callback);
67+
msgCodec.decode("6\u0000", callback);
68+
msgCodec.decode("\n\nMS", callback);
69+
msgCodec.decode("\n\nMES", callback);
70+
msgCodec.decode("SAGE\nk1:", callback);
71+
msgCodec.decode("v1\nk2:v2\n\n12345", callback);
72+
msgCodec.decode("6\u0000", callback);
73+
List<Message> list = callback.getList();
74+
Assert.assertEquals(2, list.size());
75+
Message message = list.get(1);
76+
Assert.assertEquals("MESSAGE", message.getCommand());
77+
Assert.assertEquals("123456", message.getPayload());
78+
Assert.assertEquals("v1", message.headerValue("k1"));
79+
Assert.assertEquals("v2", message.headerValue("k2"));
80+
}
81+
82+
}

okhttps-stomp/src/test/java/com/ejlchina/stomp/TestCases.java

Lines changed: 0 additions & 35 deletions
This file was deleted.

0 commit comments

Comments
 (0)