@@ -69,4 +69,134 @@ void swe() {
6969
7070 griddedData .done ();
7171 }
72+
73+ @ Test
74+ void snowDepth () {
75+ if (outFile == null ) Assertions .fail ();
76+ GriddedData griddedData = new GriddedData ();
77+ griddedData .setDSSFileName (outFile .getAbsolutePath ());
78+ griddedData .setPathname ("///SNOW DEPTH/31OCT2019:0600///" );
79+
80+ GridData gridData = new GridData ();
81+ int [] status = new int [1 ];
82+ griddedData .retrieveGriddedData (true , gridData , status );
83+ if (status [0 ] < 0 ) {
84+ Assertions .fail ();
85+ }
86+
87+ GridInfo gridInfo = gridData .getGridInfo ();
88+ Assertions .assertEquals ("MM" , gridInfo .getDataUnits ());
89+ Assertions .assertEquals (DssDataType .INST_VAL .value (), gridInfo .getDataType ());
90+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getStartTime ());
91+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getEndTime ());
92+ Assertions .assertEquals (-4257.028 , gridInfo .getMeanValue (), 1E-3 );
93+ Assertions .assertEquals (32767.0 , gridInfo .getMaxValue (), 1E-3 );
94+ Assertions .assertEquals (-9999.0 , gridInfo .getMinValue (), 1E-3 );
95+
96+ griddedData .done ();
97+ }
98+
99+ @ Test
100+ void snowMeltRunoff () {
101+ if (outFile == null ) Assertions .fail ();
102+ GriddedData griddedData = new GriddedData ();
103+ griddedData .setDSSFileName (outFile .getAbsolutePath ());
104+ griddedData .setPathname ("///LIQUID WATER/31OCT2019:0600/01NOV2019:0600//" );
105+
106+ GridData gridData = new GridData ();
107+ int [] status = new int [1 ];
108+ griddedData .retrieveGriddedData (true , gridData , status );
109+ if (status [0 ] < 0 ) {
110+ Assertions .fail ();
111+ }
112+
113+ GridInfo gridInfo = gridData .getGridInfo ();
114+ Assertions .assertEquals ("M" , gridInfo .getDataUnits ());
115+ Assertions .assertEquals (DssDataType .PER_CUM .value (), gridInfo .getDataType ());
116+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getStartTime ());
117+ Assertions .assertEquals ("1 November 2019, 06:00" , gridInfo .getEndTime ());
118+ Assertions .assertEquals (-0.090 , gridInfo .getMeanValue (), 1E-3 );
119+ Assertions .assertEquals (0.024 , gridInfo .getMaxValue (), 1E-3 );
120+ Assertions .assertEquals (-0.100 , gridInfo .getMinValue (), 1E-3 );
121+
122+ griddedData .done ();
123+ }
124+
125+ @ Test
126+ void snowSublimation () {
127+ if (outFile == null ) Assertions .fail ();
128+ GriddedData griddedData = new GriddedData ();
129+ griddedData .setDSSFileName (outFile .getAbsolutePath ());
130+ griddedData .setPathname ("///SNOW SUBLIMATION/31OCT2019:0600/01NOV2019:0600//" );
131+
132+ GridData gridData = new GridData ();
133+ int [] status = new int [1 ];
134+ griddedData .retrieveGriddedData (true , gridData , status );
135+ if (status [0 ] < 0 ) {
136+ Assertions .fail ();
137+ }
138+
139+ GridInfo gridInfo = gridData .getGridInfo ();
140+ Assertions .assertEquals ("M" , gridInfo .getDataUnits ());
141+ Assertions .assertEquals (DssDataType .PER_CUM .value (), gridInfo .getDataType ());
142+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getStartTime ());
143+ Assertions .assertEquals ("1 November 2019, 06:00" , gridInfo .getEndTime ());
144+ Assertions .assertEquals (-0.090 , gridInfo .getMeanValue (), 1E-3 );
145+ Assertions .assertEquals (0.001 , gridInfo .getMaxValue (), 1E-3 );
146+ Assertions .assertEquals (-0.100 , gridInfo .getMinValue (), 1E-3 );
147+
148+ griddedData .done ();
149+ }
150+
151+ @ Test
152+ void precipitation () {
153+ if (outFile == null ) Assertions .fail ();
154+ GriddedData griddedData = new GriddedData ();
155+ griddedData .setDSSFileName (outFile .getAbsolutePath ());
156+ griddedData .setPathname ("///PRECIPITATION/31OCT2019:0600/01NOV2019:0600//" );
157+
158+ GridData gridData = new GridData ();
159+ int [] status = new int [1 ];
160+ griddedData .retrieveGriddedData (true , gridData , status );
161+ if (status [0 ] < 0 ) {
162+ Assertions .fail ();
163+ }
164+
165+ GridInfo gridInfo = gridData .getGridInfo ();
166+ Assertions .assertEquals ("MM" , gridInfo .getDataUnits ());
167+ Assertions .assertEquals (DssDataType .PER_CUM .value (), gridInfo .getDataType ());
168+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getStartTime ());
169+ Assertions .assertEquals ("1 November 2019, 06:00" , gridInfo .getEndTime ());
170+ Assertions .assertEquals (-492.912 , gridInfo .getMeanValue (), 1E-3 );
171+ Assertions .assertEquals (311.8 , gridInfo .getMaxValue (), 1E-3 );
172+ Assertions .assertEquals (-999.9 , gridInfo .getMinValue (), 1E-3 );
173+
174+ griddedData .done ();
175+ }
176+
177+ @ Test
178+ void temperature () {
179+ if (outFile == null ) Assertions .fail ();
180+ GriddedData griddedData = new GriddedData ();
181+ griddedData .setDSSFileName (outFile .getAbsolutePath ());
182+ griddedData .setPathname ("///TEMPERATURE/31OCT2019:0600///" );
183+
184+ GridData gridData = new GridData ();
185+ int [] status = new int [1 ];
186+ griddedData .retrieveGriddedData (true , gridData , status );
187+ if (status [0 ] < 0 ) {
188+ Assertions .fail ();
189+ }
190+
191+ GridInfo gridInfo = gridData .getGridInfo ();
192+ Assertions .assertEquals ("DEG C" , gridInfo .getDataUnits ());
193+ Assertions .assertEquals (DssDataType .INST_VAL .value (), gridInfo .getDataType ());
194+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getStartTime ());
195+ Assertions .assertEquals ("31 October 2019, 06:00" , gridInfo .getEndTime ());
196+ Assertions .assertEquals (-9899.17 , gridInfo .getMeanValue (), 1E-3 );
197+ Assertions .assertEquals (-0.15 , gridInfo .getMaxValue (), 1E-3 );
198+ Assertions .assertEquals (-10272.15 , gridInfo .getMinValue (), 1E-3 );
199+
200+ griddedData .done ();
201+ }
72202}
0 commit comments