@@ -22,15 +22,17 @@ function setup_file(tc)
22
22
A3 = A2(: ,1 : 3 ,1 );
23
23
A3(: ,: ,2 ) = 2 * A3 ;
24
24
A4(: ,: ,: ,5 ) = A3 ;
25
- utf = ' Hello There 😄' ;
26
- utf2 = [utf ; " ☎" ];
25
+ utf0 = ' Hello There 😄' ;
26
+ utf1 = [utf0 ; " ☎" ];
27
+ utf2 = [utf0 , " ☎" ; " 📞" , " 👋" ];
27
28
28
29
tc.TestData.A0 = A0 ;
29
30
tc.TestData.A1 = A1 ;
30
31
tc.TestData.A2 = A2 ;
31
32
tc.TestData.A3 = A3 ;
32
33
tc.TestData.A4 = A4 ;
33
- tc.TestData.utf = utf ;
34
+ tc.TestData.utf0 = utf0 ;
35
+ tc.TestData.utf1 = utf1 ;
34
36
tc.TestData.utf2 = utf2 ;
35
37
36
38
basic = tempname + " .nc" ;
@@ -42,7 +44,8 @@ function setup_file(tc)
42
44
ncsave(basic , ' A2' , A2 , " dims" , {' x2' , size(A2 ,1 ), ' y2' , size(A2 ,2 )})
43
45
ncsave(basic , ' A3' , A3 , " dims" , {' x3' , size(A3 ,1 ), ' y3' , size(A3 ,2 ), ' z3' , size(A3 ,3 )})
44
46
ncsave(basic , ' A4' , A4 , " dims" , {' x4' , size(A4 ,1 ), ' y4' , size(A4 ,2 ), ' z4' , size(A4 ,3 ), ' w4' , size(A4 ,4 )})
45
- ncsave(basic , " utf" , utf )
47
+ ncsave(basic , " utf0" , utf0 )
48
+ ncsave(basic , " utf1" , utf1 )
46
49
ncsave(basic , " utf2" , utf2 )
47
50
48
51
tc .assumeThat(basic , IsFile )
@@ -62,7 +65,7 @@ function test_get_variables(tc)
62
65
import stdlib .hdf5nc .ncvariables
63
66
basic = tc .TestData .basic ;
64
67
65
- tc .verifyEqual(sort(ncvariables(basic )), [" A0" , " A1" , " A2" , " A3" , " A4" , " utf " , " utf2" ])
68
+ tc .verifyEqual(sort(ncvariables(basic )), [" A0" , " A1" , " A2" , " A3" , " A4" , " utf0 " , " utf1 " , " utf2" ])
66
69
end
67
70
68
71
@@ -118,48 +121,56 @@ function test_size(tc)
118
121
tc .verifyEqual(s , [4 ,3 ,2 ,5 ])
119
122
tc .verifyEqual(r , 4 )
120
123
121
- r = ncndims(basic , ' utf ' );
122
- s = ncsize(basic , ' utf ' );
124
+ r = ncndims(basic , ' utf0 ' );
125
+ s = ncsize(basic , ' utf0 ' );
123
126
tc .verifyEmpty(s )
124
127
tc .verifyEqual(r , 0 )
125
128
126
- r = ncndims(basic , ' utf2 ' );
127
- s = ncsize(basic , ' utf2 ' );
129
+ r = ncndims(basic , ' utf1 ' );
130
+ s = ncsize(basic , ' utf1 ' );
128
131
tc .verifyEqual(s , 2 )
129
132
tc .verifyEqual(r , 1 )
130
133
134
+ r = ncndims(basic , ' utf2' );
135
+ s = ncsize(basic , ' utf2' );
136
+ tc .verifyEqual(s , [2 , 2 ])
137
+ tc .verifyEqual(r , 2 )
131
138
end
132
139
133
140
134
141
function test_read(tc )
135
142
import matlab .unittest .constraints .IsScalar
136
143
basic = tc .TestData .basic ;
137
144
138
- s = ncread(basic , ' / A0' );
145
+ s = ncread(basic , ' A0' );
139
146
tc .verifyThat(s , IsScalar )
140
147
tc .verifyEqual(s , 42 )
141
148
142
- s = ncread(basic , ' / A1' );
149
+ s = ncread(basic , ' A1' );
143
150
tc .verifyTrue(isvector(s ))
144
151
tc .verifyEqual(s , tc .TestData .A1 )
145
152
146
- s = ncread(basic , ' / A2' );
153
+ s = ncread(basic , ' A2' );
147
154
tc .verifyTrue(ismatrix(s ))
148
155
tc .verifyEqual(s , tc .TestData .A2 )
149
156
150
- s = ncread(basic , ' / A3' );
157
+ s = ncread(basic , ' A3' );
151
158
tc .verifyEqual(ndims(s ), 3 )
152
159
tc .verifyEqual(s , tc .TestData .A3 )
153
160
154
- s = ncread(basic , ' / A4' );
161
+ s = ncread(basic , ' A4' );
155
162
tc .verifyEqual(ndims(s ), 4 )
156
163
tc .verifyEqual(s , tc .TestData .A4 )
157
164
158
- s = ncread(basic , ' /utf' );
165
+ s = ncread(basic , ' utf0' );
166
+ tc .verifyTrue(isstring(s ))
167
+ tc .verifyEqual(s , string(tc .TestData .utf0 ))
168
+
169
+ s = ncread(basic , ' utf1' );
159
170
tc .verifyTrue(isstring(s ))
160
- tc .verifyEqual(s , string( tc .TestData .utf ) )
171
+ tc .verifyEqual(s , tc .TestData .utf1 )
161
172
162
- s = ncread(basic , ' / utf2' );
173
+ s = ncread(basic , ' utf2' );
163
174
tc .verifyTrue(isstring(s ))
164
175
tc .verifyEqual(s , tc .TestData .utf2 )
165
176
end
0 commit comments