@@ -12,38 +12,54 @@ func TestNewModel(t *testing.T) {
1212 require .Equal (t , 10 , len (model .rules ))
1313}
1414
15- func TestDecodedTokenToString (t * testing.T ) {
15+ func TestDecodeToken (t * testing.T ) {
1616 id2char := map [TokenID ]rune {1 : []rune ("a" )[0 ], 2 : []rune ("b" )[0 ], 3 : []rune ("c" )[0 ]}
1717 word , err := DecodeToken (EncodedToken {1 , 2 , 1 , 3 , 3 }, id2char )
1818 require .NoError (t , err )
1919 require .Equal (t , "abacc" , word )
2020}
2121
22- func TestSpecialTokensToBin (t * testing.T ) {
22+ func TestSpecialTokensToBinary (t * testing.T ) {
2323 specials := specialTokens {1 , 259 , 2 * 256 * 256 + 37 * 256 + 2 , - 256 * 256 * 256 * 127 }
2424 bytesArray := []byte {0 , 0 , 0 , 1 , 0 , 0 , 1 , 3 , 0 , 2 , 37 , 2 , 129 , 0 , 0 , 0 }
25- require .Equal (t , bytesArray , specialTokensToBin ( specials ))
25+ require .Equal (t , bytesArray , specials . toBinary ( ))
2626}
2727
28- func TestBinToSpecialTokens (t * testing.T ) {
28+ func TestBinaryToSpecialTokens (t * testing.T ) {
2929 bytesArray := []byte {0 , 0 , 0 , 1 , 0 , 0 , 1 , 3 , 0 , 2 , 37 , 2 , 129 , 0 , 0 , 0 }
30- specials := specialTokens {1 , 259 , 2 * 256 * 256 + 37 * 256 + 2 , - 256 * 256 * 256 * 127 }
31- require .Equal (t , specials , binToSpecialTokens (bytesArray ))
30+ expected := specialTokens {1 , 259 , 2 * 256 * 256 + 37 * 256 + 2 , - 256 * 256 * 256 * 127 }
31+ specials , err := binaryToSpecialTokens (bytesArray )
32+ require .NoError (t , err )
33+ require .Equal (t , expected , specials )
34+ bytesArray = []byte {0 , 0 , 0 , 1 , 0 , 0 , 1 , 3 , 0 , 2 , 37 , 2 , 129 , 0 , 0 }
35+ specials , err = binaryToSpecialTokens (bytesArray )
36+ require .Error (t , err )
37+ bytesArray = []byte {}
38+ specials , err = binaryToSpecialTokens (bytesArray )
39+ require .Error (t , err )
3240}
3341
34- func TestRuleToBin (t * testing.T ) {
42+ func TestRuleToBinary (t * testing.T ) {
3543 rule := rule {1 , 2 , 257 }
3644 bytesArray := []byte {0 , 0 , 0 , 1 , 0 , 0 , 0 , 2 , 0 , 0 , 1 , 1 }
37- require .Equal (t , bytesArray , ruleToBin ( rule ))
45+ require .Equal (t , bytesArray , rule . toBinary ( ))
3846}
3947
40- func TestBinToRule (t * testing.T ) {
41- rule := rule {1 , 2 , 257 }
48+ func TestBinaryToRule (t * testing.T ) {
49+ expected := rule {1 , 2 , 257 }
4250 bytesArray := []byte {0 , 0 , 0 , 1 , 0 , 0 , 0 , 2 , 0 , 0 , 1 , 1 }
43- require .Equal (t , rule , binToRule (bytesArray ))
51+ rule , err := binaryToRule (bytesArray )
52+ require .NoError (t , err )
53+ require .Equal (t , expected , rule )
54+ bytesArray = []byte {0 , 0 , 0 , 0 , 0 , 0 , 2 , 0 , 0 , 1 , 1 }
55+ rule , err = binaryToRule (bytesArray )
56+ require .Error (t , err )
57+ bytesArray = []byte {}
58+ rule , err = binaryToRule (bytesArray )
59+ require .Error (t , err )
4460}
4561
46- func TestReadModelFromBinary (t * testing.T ) {
62+ func TestReadModel (t * testing.T ) {
4763 reader := bytes .NewReader ([]byte {0 , 0 , 0 , 5 , 0 , 0 , 0 , 4 ,
4864 0 , 0 , 0 , 99 , 0 , 0 , 0 , 6 ,
4965 0 , 0 , 0 , 98 , 0 , 0 , 0 , 7 ,
@@ -64,7 +80,52 @@ func TestReadModelFromBinary(t *testing.T) {
6480 "_a" : 9 , "_b" : 12 , "_c" : 10 , "_d" : 11 },
6581 specialTokens {1 , 0 , 2 , 3 },
6682 }
67- model , err := ReadModelFromBinary (reader )
83+ model , err := ReadModel (reader )
6884 require .NoError (t , err )
6985 require .Equal (t , expected , * model )
86+
87+ reader = bytes .NewReader ([]byte {0 , 0 , 0 , 5 , 0 , 0 , 0 , 4 ,
88+ 0 , 0 , 0 , 99 , 0 , 0 , 0 , 6 ,
89+ 0 , 0 , 0 , 98 , 0 , 0 , 0 , 7 ,
90+ 0 , 0 , 0 , 95 , 0 , 0 , 0 , 4 ,
91+ 0 , 0 , 0 , 100 , 0 , 0 , 0 , 5 ,
92+ 0 , 0 , 0 , 97 , 0 , 0 , 0 , 8 ,
93+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 8 , 0 , 0 , 0 , 9 ,
94+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 6 , 0 , 0 , 0 , 10 ,
95+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 5 , 0 , 0 , 0 , 11 ,
96+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 7 , 0 , 0 , 0 , 12 ,
97+ 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 2 , 0 , 0 , 0 , 3 ,
98+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 5 , 0 , 0 , 0 , 11 ,
99+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 7 , 0 , 0 , 0 , 12 })
100+ model , err = ReadModel (reader )
101+ require .NoError (t , err )
102+ require .Equal (t , expected , * model )
103+
104+ reader = bytes .NewReader ([]byte {0 , 0 , 0 , 5 , 0 , 0 , 0 , 4 ,
105+ 0 , 0 , 0 , 99 , 0 , 0 , 0 , 6 ,
106+ 0 , 0 , 0 , 98 , 0 , 0 , 0 , 7 ,
107+ 0 , 0 , 0 , 95 , 0 , 0 , 0 , 4 ,
108+ 0 , 0 , 0 , 100 , 0 , 0 , 0 , 5 ,
109+ 0 , 0 , 0 , 97 , 0 , 0 , 0 , 8 ,
110+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 8 , 0 , 0 , 0 , 9 ,
111+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 6 , 0 , 0 , 0 , 10 ,
112+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 5 , 0 , 0 , 0 , 11 ,
113+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 7 , 0 , 0 , 0 , 12 ,
114+ 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 2 , 0 , 0 , 0 })
115+ model , err = ReadModel (reader )
116+ require .Error (t , err )
117+
118+ reader = bytes .NewReader ([]byte {0 , 0 , 0 , 5 , 0 , 0 , 0 , 4 ,
119+ 0 , 0 , 0 , 99 , 0 , 0 , 0 , 6 ,
120+ 0 , 0 , 0 , 98 , 0 , 0 , 0 , 7 ,
121+ 0 , 0 , 0 , 95 , 0 , 0 , 0 , 4 ,
122+ 0 , 0 , 0 , 100 , 0 , 0 , 0 , 5 ,
123+ 0 , 0 , 0 , 97 , 0 , 0 , 0 , 8 ,
124+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 20 , 0 , 0 , 0 , 9 ,
125+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 6 , 0 , 0 , 0 , 10 ,
126+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 5 , 0 , 0 , 0 , 11 ,
127+ 0 , 0 , 0 , 4 , 0 , 0 , 0 , 7 , 0 , 0 , 0 , 12 ,
128+ 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 2 , 0 , 0 , 0 , 3 })
129+ model , err = ReadModel (reader )
130+ require .Error (t , err )
70131}
0 commit comments