@@ -30,49 +30,56 @@ public void EstimateLength()
3030 public void EncodeNull ( )
3131 {
3232 var buffer = new byte [ 10 ] ;
33- long size = Encoder . EncodeNull ( buffer , 3L ) ;
34- Assert . Equal ( 1L , size ) ;
33+ long offset = 3L ;
34+ Encoder . EncodeNull ( buffer , ref offset ) ;
35+ Assert . Equal ( 3L + 1L , offset ) ;
3536 AssertEqual ( new byte [ ] { 0 , 0 , 0 , 0x6e , 0 , 0 , 0 , 0 , 0 , 0 } , buffer ) ;
3637 }
3738
3839 [ Fact ]
3940 public void EncodeBoolean ( )
4041 {
4142 var buffer = new byte [ 10 ] ;
42- long size = Encoder . EncodeBoolean ( new Boolean ( true ) , buffer , 2L ) ;
43- Assert . Equal ( 1L , size ) ;
43+ long offset = 2L ;
44+ Encoder . EncodeBoolean ( new Boolean ( true ) , buffer , ref offset ) ;
45+ Assert . Equal ( 2L + 1L , offset ) ;
4446 AssertEqual ( new byte [ ] { 0 , 0 , 0x74 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , buffer ) ;
4547
46- size = Encoder . EncodeBoolean ( new Boolean ( false ) , buffer , 5L ) ;
47- Assert . Equal ( 1L , size ) ;
48+ offset = 5L ;
49+ Encoder . EncodeBoolean ( new Boolean ( false ) , buffer , ref offset ) ;
50+ Assert . Equal ( 5L + 1L , offset ) ;
4851 AssertEqual ( new byte [ ] { 0 , 0 , 0x74 , 0 , 0 , 0x66 , 0 , 0 , 0 , 0 } , buffer ) ;
4952 }
5053
5154 [ Fact ]
5255 public void EncodeInteger ( )
5356 {
5457 var buffer = new byte [ 10 ] ;
55- long size = Encoder . EncodeInteger ( 0 , buffer , 2L ) ;
56- Assert . Equal ( 3L , size ) ;
58+ long offset = 2L ;
59+ Encoder . EncodeInteger ( 0 , buffer , ref offset ) ;
60+ Assert . Equal ( 2L + 3L , offset ) ;
5761 AssertEqual ( new byte [ ] { 0 , 0 , 0x69 , 0x30 , 0x65 , 0 , 0 , 0 , 0 , 0 } , buffer ) ;
5862
5963 Clear ( buffer , 0 , buffer . Length ) ;
60- size = Encoder . EncodeInteger ( - 123 , buffer , 1L ) ;
61- Assert . Equal ( 6L , size ) ;
64+ offset = 1L ;
65+ Encoder . EncodeInteger ( - 123 , buffer , ref offset ) ;
66+ Assert . Equal ( 1L + 6L , offset ) ;
6267 AssertEqual ( new byte [ ] { 0 , 0x69 , 0x2d , 0x31 , 0x32 , 0x33 , 0x65 , 0 , 0 , 0 } , buffer ) ;
6368
6469 Clear ( buffer , 0 , buffer . Length ) ;
65- size = Encoder . EncodeInteger ( 456 , buffer , 4L ) ;
66- Assert . Equal ( 5L , size ) ;
70+ offset = 4L ;
71+ Encoder . EncodeInteger ( 456 , buffer , ref offset ) ;
72+ Assert . Equal ( 4L + 5L , offset ) ;
6773 AssertEqual ( new byte [ ] { 0 , 0 , 0 , 0 , 0x69 , 0x34 , 0x35 , 0x36 , 0x65 , 0 } , buffer ) ;
6874 }
6975
7076 [ Fact ]
7177 public void EncodeBinary ( )
7278 {
7379 var buffer = new byte [ 20 ] ;
74- long size = Encoder . EncodeBinary ( new Binary ( "hello world" , Encoding . ASCII ) , buffer , 2L ) ;
75- Assert . Equal ( 14L , size ) ;
80+ long offset = 2L ;
81+ Encoder . EncodeBinary ( new Binary ( "hello world" , Encoding . ASCII ) , buffer , ref offset ) ;
82+ Assert . Equal ( 2L + 14L , offset ) ;
7683 AssertEqual (
7784 new byte [ 20 ]
7885 {
@@ -90,8 +97,9 @@ public void EncodeBinary()
9097 public void EncodeText ( )
9198 {
9299 var buffer = new byte [ 20 ] ;
93- long size = Encoder . EncodeText ( "한글" , buffer , 5L ) ;
94- Assert . Equal ( 9L , size ) ;
100+ long offset = 5L ;
101+ Encoder . EncodeText ( "한글" , buffer , ref offset ) ;
102+ Assert . Equal ( 5L + 9L , offset ) ;
95103 AssertEqual (
96104 new byte [ 20 ]
97105 {
@@ -130,28 +138,33 @@ public void CountDecimalDigits()
130138 public void EncodeDigits ( )
131139 {
132140 var buffer = new byte [ 10 ] ;
133- long size = Encoder . EncodeDigits ( 0L , buffer , 2L ) ;
134- Assert . Equal ( 1L , size ) ;
141+ long offset = 2L ;
142+ Encoder . EncodeDigits ( 0L , buffer , ref offset ) ;
143+ Assert . Equal ( 2L + 1L , offset ) ;
135144 AssertEqual ( new byte [ ] { 0 , 0 , 0x30 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , buffer ) ;
136145
137146 Clear ( buffer , 0 , buffer . Length ) ;
138- size = Encoder . EncodeDigits ( 5L , buffer , 0L ) ;
139- Assert . Equal ( 1L , size ) ;
147+ offset = 0L ;
148+ Encoder . EncodeDigits ( 5L , buffer , ref offset ) ;
149+ Assert . Equal ( 0L + 1L , offset ) ;
140150 AssertEqual ( new byte [ ] { 0x35 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 } , buffer ) ;
141151
142152 Clear ( buffer , 0 , buffer . Length ) ;
143- size = Encoder . EncodeDigits ( 10L , buffer , 5L ) ;
144- Assert . Equal ( 2L , size ) ;
153+ offset = 5L ;
154+ Encoder . EncodeDigits ( 10L , buffer , ref offset ) ;
155+ Assert . Equal ( 5L + 2L , offset ) ;
145156 AssertEqual ( new byte [ ] { 0 , 0 , 0 , 0 , 0 , 0x31 , 0x30 , 0 , 0 , 0 } , buffer ) ;
146157
147158 Clear ( buffer , 0 , buffer . Length ) ;
148- size = Encoder . EncodeDigits ( 123L , buffer , 6L ) ;
149- Assert . Equal ( 3L , size ) ;
159+ offset = 6L ;
160+ Encoder . EncodeDigits ( 123L , buffer , ref offset ) ;
161+ Assert . Equal ( 6L + 3L , offset ) ;
150162 AssertEqual ( new byte [ ] { 0 , 0 , 0 , 0 , 0 , 0 , 0x31 , 0x32 , 0x33 , 0 } , buffer ) ;
151163
152164 Clear ( buffer , 0 , buffer . Length ) ;
153- size = Encoder . EncodeDigits ( 9876543210L , buffer , 0L ) ;
154- Assert . Equal ( 10L , size ) ;
165+ offset = 0L ;
166+ Encoder . EncodeDigits ( 9876543210L , buffer , ref offset ) ;
167+ Assert . Equal ( 0L + 10L , offset ) ;
155168 AssertEqual (
156169 new byte [ ] { 0x39 , 0x38 , 0x37 , 0x36 , 0x35 , 0x34 , 0x33 , 0x32 , 0x31 , 0x30 } ,
157170 buffer
0 commit comments