1+ package com .yocto .yoclib .imap .tests .protocol ;
2+
3+ import com .yocto .yoclib .imap .protocol .ProtocolAtom ;
4+ import com .yocto .yoclib .imap .protocol .ProtocolLiteral ;
5+ import com .yocto .yoclib .imap .protocol .ProtocolObject ;
6+ import com .yocto .yoclib .imap .protocol .ProtocolQuoted ;
7+ import com .yocto .yoclib .imap .protocol .ProtocolSubordinate ;
8+
9+ import org .junit .jupiter .api .Test ;
10+
11+ import static org .junit .jupiter .api .Assertions .assertArrayEquals ;
12+ import static org .junit .jupiter .api .Assertions .assertEquals ;
13+
14+ public class ProtocolSubordinateTest {
15+
16+ @ Test
17+ public void testGetValue (){
18+ ProtocolAtom a = new ProtocolAtom ("a" );
19+ ProtocolQuoted ab = new ProtocolQuoted ("ab" );
20+ ProtocolLiteral abc = new ProtocolLiteral ("abc" );
21+
22+ assertArrayEquals (new ProtocolObject []{a },new ProtocolSubordinate (new ProtocolObject []{a }).getObjects ());
23+ assertArrayEquals (new ProtocolObject []{a ,ab },new ProtocolSubordinate (new ProtocolObject []{a ,ab }).getObjects ());
24+ assertArrayEquals (new ProtocolObject []{a ,ab ,abc },new ProtocolSubordinate (new ProtocolObject []{a ,ab ,abc }).getObjects ());
25+ }
26+
27+ @ Test
28+ public void testToProtocolString (){
29+ ProtocolAtom a = new ProtocolAtom ("a" );
30+ ProtocolQuoted ab = new ProtocolQuoted ("ab" );
31+ ProtocolLiteral abc = new ProtocolLiteral ("abc" );
32+
33+ assertEquals ("[a]" ,new ProtocolSubordinate (new ProtocolObject []{a }).toProtocolString ());
34+ assertEquals ("[a \" ab\" ]" ,new ProtocolSubordinate (new ProtocolObject []{a ,ab }).toProtocolString ());
35+ assertEquals ("[a \" ab\" {3}\r \n abc]" ,new ProtocolSubordinate (new ProtocolObject []{a ,ab ,abc }).toProtocolString ());
36+ }
37+
38+ @ Test
39+ public void testToString (){
40+ ProtocolAtom a = new ProtocolAtom ("a" );
41+ ProtocolQuoted ab = new ProtocolQuoted ("ab" );
42+ ProtocolLiteral abc = new ProtocolLiteral ("abc" );
43+
44+ assertEquals ("ProtocolSubordinate{objects=[ProtocolAtom{value='a'}]}" ,new ProtocolSubordinate (new ProtocolObject []{a }).toString ());
45+ assertEquals ("ProtocolSubordinate{objects=[ProtocolAtom{value='a'}, ProtocolQuoted{value='ab'}]}" ,new ProtocolSubordinate (new ProtocolObject []{a ,ab }).toString ());
46+ assertEquals ("ProtocolSubordinate{objects=[ProtocolAtom{value='a'}, ProtocolQuoted{value='ab'}, ProtocolLiteral{value='abc'}]}" ,new ProtocolSubordinate (new ProtocolObject []{a ,ab ,abc }).toString ());
47+ }
48+
49+ }
0 commit comments