22
22
23
23
var tape = require ( 'tape' ) ;
24
24
var isArray = require ( '@stdlib/assert/is-array' ) ;
25
+ var Complex64Array = require ( '@stdlib/array/complex64' ) ;
26
+ var realf = require ( '@stdlib/complex/realf' ) ;
27
+ var imagf = require ( '@stdlib/complex/imagf' ) ;
25
28
var ndarray2array = require ( './../lib' ) ;
26
29
27
30
@@ -71,6 +74,40 @@ tape( 'the function converts an ndarray buffer to a generic array (1d; order=row
71
74
t . end ( ) ;
72
75
} ) ;
73
76
77
+ tape ( 'the function converts an ndarray buffer to a generic array (1d; order=row-major; complex data type)' , function test ( t ) {
78
+ var strides ;
79
+ var offset ;
80
+ var buffer ;
81
+ var order ;
82
+ var shape ;
83
+ var out ;
84
+ var v ;
85
+
86
+ buffer = new Complex64Array ( [ 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 ] ) ;
87
+
88
+ shape = [ 3 ] ;
89
+ order = 'row-major' ;
90
+ strides = [ - 1 ] ;
91
+ offset = 2 ;
92
+
93
+ out = ndarray2array ( buffer , shape , strides , offset , order ) ;
94
+ t . strictEqual ( isArray ( out ) , true , 'returns an array' ) ;
95
+
96
+ v = out [ 0 ] ;
97
+ t . strictEqual ( realf ( v ) , 5.0 , 'returns expected value' ) ;
98
+ t . strictEqual ( imagf ( v ) , 6.0 , 'returns expected value' ) ;
99
+
100
+ v = out [ 1 ] ;
101
+ t . strictEqual ( realf ( v ) , 3.0 , 'returns expected value' ) ;
102
+ t . strictEqual ( imagf ( v ) , 4.0 , 'returns expected value' ) ;
103
+
104
+ v = out [ 2 ] ;
105
+ t . strictEqual ( realf ( v ) , 1.0 , 'returns expected value' ) ;
106
+ t . strictEqual ( imagf ( v ) , 2.0 , 'returns expected value' ) ;
107
+
108
+ t . end ( ) ;
109
+ } ) ;
110
+
74
111
tape ( 'the function converts an ndarray buffer to a generic array (1d; order=column-major)' , function test ( t ) {
75
112
var expected ;
76
113
var strides ;
@@ -95,6 +132,40 @@ tape( 'the function converts an ndarray buffer to a generic array (1d; order=col
95
132
t . end ( ) ;
96
133
} ) ;
97
134
135
+ tape ( 'the function converts an ndarray buffer to a generic array (1d; order=column-major; complex data type)' , function test ( t ) {
136
+ var strides ;
137
+ var offset ;
138
+ var buffer ;
139
+ var order ;
140
+ var shape ;
141
+ var out ;
142
+ var v ;
143
+
144
+ buffer = new Complex64Array ( [ 1.0 , 2.0 , 3.0 , 4.0 , 5.0 , 6.0 ] ) ;
145
+
146
+ shape = [ 3 ] ;
147
+ order = 'column-major' ;
148
+ strides = [ 1 ] ;
149
+ offset = 0 ;
150
+
151
+ out = ndarray2array ( buffer , shape , strides , offset , order ) ;
152
+ t . strictEqual ( isArray ( out ) , true , 'returns an array' ) ;
153
+
154
+ v = out [ 0 ] ;
155
+ t . strictEqual ( realf ( v ) , 1.0 , 'returns expected value' ) ;
156
+ t . strictEqual ( imagf ( v ) , 2.0 , 'returns expected value' ) ;
157
+
158
+ v = out [ 1 ] ;
159
+ t . strictEqual ( realf ( v ) , 3.0 , 'returns expected value' ) ;
160
+ t . strictEqual ( imagf ( v ) , 4.0 , 'returns expected value' ) ;
161
+
162
+ v = out [ 2 ] ;
163
+ t . strictEqual ( realf ( v ) , 5.0 , 'returns expected value' ) ;
164
+ t . strictEqual ( imagf ( v ) , 6.0 , 'returns expected value' ) ;
165
+
166
+ t . end ( ) ;
167
+ } ) ;
168
+
98
169
tape ( 'the function converts an ndarray buffer to a generic array (2d; order=row-major)' , function test ( t ) {
99
170
var expected ;
100
171
var strides ;
0 commit comments