@@ -127,6 +127,17 @@ describe('Rclnodejs message translation: complex types', function() {
127127 } ,
128128 data : [ 1.0 , 2.0 , 3.0 , 8.5 , 6.75 , 0.5 , - 0.25 ] ,
129129 } ,
130+ {
131+ layout : {
132+ dim : [
133+ { label : 'height' , size : 480 , stride : 921600 } ,
134+ { label : 'width' , size : 640 , stride : 1920 } ,
135+ { label : 'channel' , size : 3 , stride : 8 } ,
136+ ] ,
137+ data_offset : 1024 ,
138+ } ,
139+ data : Float32Array . from ( [ 1.0 , 2.0 , 3.0 , 8.5 , 6.75 , 0.5 , - 0.25 ] ) ,
140+ } ,
130141 ]
131142 } ,
132143 {
@@ -141,7 +152,72 @@ describe('Rclnodejs message translation: complex types', function() {
141152 ] ,
142153 data_offset : 0 ,
143154 } ,
144- data : [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] ,
155+ data : [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] , // Provide data via Array
156+ } ,
157+ {
158+ layout : {
159+ dim : [
160+ { label : 'height' , size : 10 , stride : 600 } ,
161+ { label : 'width' , size : 20 , stride : 60 } ,
162+ { label : 'channel' , size : 3 , stride : 4 } ,
163+ ] ,
164+ data_offset : 0 ,
165+ } ,
166+ data : Int32Array . from ( [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] ) , // Provide data via TypedArray
167+ } ,
168+ ]
169+ } ,
170+ {
171+ pkg : 'std_msgs' , type : 'Int16MultiArray' ,
172+ values : [
173+ {
174+ layout : {
175+ dim : [
176+ { label : 'height' , size : 10 , stride : 600 } ,
177+ { label : 'width' , size : 20 , stride : 60 } ,
178+ { label : 'channel' , size : 3 , stride : 4 } ,
179+ ] ,
180+ data_offset : 0 ,
181+ } ,
182+ data : [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] , // Provide data via Array
183+ } ,
184+ {
185+ layout : {
186+ dim : [
187+ { label : 'height' , size : 10 , stride : 600 } ,
188+ { label : 'width' , size : 20 , stride : 60 } ,
189+ { label : 'channel' , size : 3 , stride : 4 } ,
190+ ] ,
191+ data_offset : 0 ,
192+ } ,
193+ data : Int16Array . from ( [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] ) , // Provide data via TypedArray
194+ } ,
195+ ]
196+ } ,
197+ {
198+ pkg : 'std_msgs' , type : 'Int8MultiArray' ,
199+ values : [
200+ {
201+ layout : {
202+ dim : [
203+ { label : 'height' , size : 10 , stride : 600 } ,
204+ { label : 'width' , size : 20 , stride : 60 } ,
205+ { label : 'channel' , size : 3 , stride : 4 } ,
206+ ] ,
207+ data_offset : 0 ,
208+ } ,
209+ data : [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] , // Provide data via Array
210+ } ,
211+ {
212+ layout : {
213+ dim : [
214+ { label : 'height' , size : 10 , stride : 600 } ,
215+ { label : 'width' , size : 20 , stride : 60 } ,
216+ { label : 'channel' , size : 3 , stride : 4 } ,
217+ ] ,
218+ data_offset : 0 ,
219+ } ,
220+ data : Int8Array . from ( [ - 10 , 1 , 2 , 3 , 8 , 6 , 0 , - 25 ] ) , // Provide data via TypedArray
145221 } ,
146222 ]
147223 } ,
@@ -185,6 +261,8 @@ describe('Rclnodejs message translation: complex types', function() {
185261 node . destroy ( ) ;
186262 resolve ( ) ;
187263 } else {
264+ console . log ( 'got' , value ) ;
265+ console . log ( 'expected' , v ) ;
188266 reject ( 'case ' + i + '. Expected: ' + v + ', Got: ' + value ) ;
189267 }
190268 } ) ;
0 commit comments