Skip to content
This repository was archived by the owner on Feb 25, 2024. It is now read-only.

Commit 363d210

Browse files
committed
Added Packet composition test
1 parent be50cf7 commit 363d210

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package de.kaleidox.test.vban.packet;
2+
3+
import de.kaleidox.vban.VBAN;
4+
import de.kaleidox.vban.exception.InvalidPacketAttributeException;
5+
import de.kaleidox.vban.packet.VBANPacket;
6+
import de.kaleidox.vban.packet.VBANPacketHead;
7+
8+
import org.junit.Before;
9+
import org.junit.Test;
10+
11+
import static org.junit.Assert.assertEquals;
12+
13+
public class VBANPacketTest {
14+
private VBANPacket.Factory factory;
15+
16+
@Before
17+
public void setUp() {
18+
VBANPacketHead.Factory headFactory = VBANPacketHead.Factory.builder(VBAN.Protocol.TEXT)
19+
.setSRValue(VBAN.BitsPerSecond.Bps150)
20+
.setFormatValue(VBAN.CommandFormat.UTF8)
21+
.setChannel((byte) 5)
22+
.setSamples((byte) 8)
23+
.setCodec(VBAN.Codec.VBCA)
24+
.setStreamName("Textstream")
25+
.build();
26+
27+
factory = VBANPacket.Factory.builder(VBAN.Protocol.TEXT)
28+
.setHeadFactory(headFactory)
29+
.build();
30+
}
31+
32+
@Test
33+
public void testHeadValidity() {
34+
byte[] bytes = factory.create().getBytes();
35+
36+
assertEquals(bytes[0], 'V');
37+
assertEquals(bytes[1], 'B');
38+
assertEquals(bytes[2], 'A');
39+
assertEquals(bytes[3], 'N');
40+
}
41+
42+
@Test
43+
public void testHeaderSize() {
44+
byte[] bytes = new byte[VBANPacket.MAX_SIZE_WITHOUT_HEAD];
45+
46+
VBANPacket vbanPacket = factory.create();
47+
vbanPacket.setData(bytes);
48+
49+
assertEquals(VBANPacket.MAX_SIZE, vbanPacket.getBytes().length);
50+
}
51+
52+
@Test
53+
public void testHeadDecomposing() throws InvalidPacketAttributeException {
54+
byte[] bytes = new byte[VBANPacket.MAX_SIZE_WITHOUT_HEAD];
55+
56+
VBANPacket generated = factory.create();
57+
generated.setData(bytes);
58+
59+
VBANPacket.Decoded decoded = VBANPacket.decode(generated.getBytes());
60+
VBANPacketHead.Decoded decodedHead = decoded.getHead();
61+
62+
assertEquals(VBAN.BitsPerSecond.Bps150, decodedHead.getDataRateValue());
63+
assertEquals(VBAN.CommandFormat.UTF8, decodedHead.getFormat());
64+
assertEquals(5, decodedHead.getChannel());
65+
assertEquals(8, decodedHead.getSamples());
66+
assertEquals(VBAN.Codec.VBCA, decodedHead.getCodec());
67+
assertEquals("Textstream", decodedHead.getStreamName());
68+
}
69+
}

0 commit comments

Comments
 (0)