Completed COPS Message refactoring. Was planning on one additional patch starting...
[packetcable.git] / packetcable-driver / src / test / java / org / umu / cops / stack / COPSHeaderTest.java
1 package org.umu.cops.stack;
2
3 import org.junit.Assert;
4 import org.junit.Test;
5 import org.umu.cops.stack.COPSHeader.ClientType;
6 import org.umu.cops.stack.COPSHeader.Flag;
7 import org.umu.cops.stack.COPSHeader.OPCode;
8
9 /**
10  * Tests the construction of the COPSHeader class
11  */
12 public class COPSHeaderTest {
13
14     @Test(expected = IllegalArgumentException.class)
15     public void nullOPCode1() {
16         new COPSHeader(null, ClientType.TYPE_1);
17     }
18
19     @Test(expected = IllegalArgumentException.class)
20     public void nullClientType1() {
21         new COPSHeader(OPCode.CAT, null);
22     }
23
24     @Test(expected = IllegalArgumentException.class)
25     public void zeroVersion() {
26         new COPSHeader(0, Flag.UNSOLICITED, OPCode.CAT, ClientType.TYPE_1);
27     }
28
29     @Test(expected = IllegalArgumentException.class)
30     public void nullFlags() {
31         new COPSHeader(1, null, OPCode.CAT, ClientType.TYPE_1);
32     }
33
34     @Test(expected = IllegalArgumentException.class)
35     public void nullOPCode2() {
36         new COPSHeader(1, Flag.UNSOLICITED, null, ClientType.TYPE_1);
37     }
38
39     @Test(expected = IllegalArgumentException.class)
40     public void nullClientType2() {
41         new COPSHeader(1, Flag.UNSOLICITED, OPCode.CAT, null);
42     }
43
44     @Test
45     public void validConstructor1() {
46         final COPSHeader header = new COPSHeader(OPCode.CAT, ClientType.TYPE_1);
47         Assert.assertEquals(1, header.getPcmmVersion());
48         Assert.assertEquals(Flag.UNSOLICITED, header.getFlag());
49         Assert.assertEquals(OPCode.CAT, header.getOpCode());
50         Assert.assertEquals(ClientType.TYPE_1, header.getClientType());
51     }
52
53     @Test
54     public void validConstructor2() {
55         final COPSHeader header = new COPSHeader(2, Flag.SOLICITED, OPCode.DEC, ClientType.TYPE_2);
56         Assert.assertEquals(2, header.getPcmmVersion());
57         Assert.assertEquals(Flag.SOLICITED, header.getFlag());
58         Assert.assertEquals(OPCode.DEC, header.getOpCode());
59         Assert.assertEquals(ClientType.TYPE_2, header.getClientType());
60     }
61
62     // writeData() will be tested implicitly via the COPSMsg tests
63 }