source: TI03-DataExtractor/branches/old_stuff/dx_source/for_usr_local/dx/testScripts/testMultiWS.py @ 793

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI03-DataExtractor/branches/old_stuff/dx_source/for_usr_local/dx/testScripts/testMultiWS.py@793
Revision 793, 22.4 KB checked in by astephen, 13 years ago (diff)

Put all the old code in the old_stuff branch.

  • Property svn:executable set to *
Line 
1#!/usr/bin/env python
2
3#   Copyright (C) 2004 CCLRC & NERC( Natural Environment Research Council ).
4#   This software may be distributed under the terms of the
5#   Q Public License, version 1.0 or later. http://ndg.nerc.ac.uk/public_docs/QPublic_license.txt
6
7def runTest1():
8    """Test 1 - 1 single time step dataset"""
9    from SOAPpy import SOAPProxy,Config
10    Config.debug=0
11    print "Connecting to the server..."
12    server = SOAPProxy("http://localhost:8444/") # port must be same as server
13    sessionID, secureToken=server.startSession(username=None, password=None)
14    print "\nRETURNED:",sessionID, secureToken
15    getter = SOAPProxy("http://localhost:8445/")   
16    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
17    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
18    print options[0][0]
19    selector = SOAPProxy("http://localhost:8446/") 
20    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
21                                                            datasetGroup_1=options[0][0])
22    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
23    print "SUMMARISE REQUEST..."
24    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
25    print summary 
26    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
27                                                            dataset_1=options[0][0])
28    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
29    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
30                                                            variable_1=options[0][0])
31    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
32    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
33                                                            horizontalDomain=options)
34    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
35    print "VERTICAL_DOMAIN", options[0][0][0]
36    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
37                                                            verticalDomain_1=options[0][0][0])
38    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
39    print "TEMPORAL OPTIONS", options[0]
40    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
41                                                            temporalDomain_1=options[0])
42    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
43    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
44                                                            outputFormat=options[0])
45    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
46    print "\nIS IT COMPLETE?"
47    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
48    print "\nGET XML..."
49    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
50    print "DOCUMENT:", dxrmlDoc
51    print "Writing XML doc to local file: hello.xml"
52    open("hello.xml", "w").write(dxrmlDoc)
53   
54    print "SUMMARISE REQUEST..."
55    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
56    print summary 
57   
58    print "Getting data written now"   
59    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
60    print pathList
61       
62def runTest2():
63    """Test 2 - 2 datasets"""
64    from SOAPpy import SOAPProxy,Config
65    Config.debug=0
66    print "Connecting to the server..."
67    server = SOAPProxy("http://localhost:8444/") # port must be same as server
68    sessionID, secureToken=server.startSession(username=None, password=None)
69    print "\nRETURNED:",sessionID, secureToken
70   
71    print "selecting 2 datasets"
72    SOAPProxy("http://localhost:8447/").numberOfDatasets(sessionID, 2, secureToken=secureToken)
73   
74    getter = SOAPProxy("http://localhost:8445/")   
75    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
76    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
77    print "OOOOOOOOOOOOOOOOOOO:", options, options[0]
78    selector = SOAPProxy("http://localhost:8446/") 
79    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
80                                              datasetGroup_1=options[0][0], datasetGroup_2=options[1][0])
81    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
82    print "SUMMARISE REQUEST..."
83    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
84    print summary 
85    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
86                                             dataset_1=options[0][0], dataset_2=options[1][0])
87    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
88    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
89                                             variable_1=options[0][0], variable_2=options[1][0])
90    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
91    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
92                                              horizontalDomain=options)
93    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
94    print "VERTICAL_DOMAIN", options
95    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
96                                               verticalDomain_1=options[0][0][0], verticalDomain_2=options[1][0][0])
97    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
98    print "TEMPORAL OPTIONS", options
99    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
100                                             temporalDomain_1=options[0], temporalDomain_2=options[1])
101    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
102    print "OUTPUT:", options
103    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
104                                              outputFormat=options[0])
105    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
106    print "\nIS IT COMPLETE?"
107    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
108    print "\nGET XML..."
109    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
110    print "DOCUMENT:", dxrmlDoc
111    print "Writing XML doc to local file: hello.xml"
112    open("hello.xml", "w").write(dxrmlDoc)
113   
114    print "SUMMARISE REQUEST..."
115    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
116    print summary 
117   
118    print "Getting data written now"   
119    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
120    print pathList
121
122def runTest3():
123    """FOR THE ECMWF data test"""   
124    from SOAPpy import SOAPProxy,Config
125    Config.debug=0
126    print "Connecting to the server..."
127    server = SOAPProxy("http://localhost:8444/") # port must be same as server
128    sessionID, secureToken=server.startSession(username=None, password=None)
129    print "\nRETURNED:",sessionID, secureToken
130     
131    print "selecting 2 datasets"
132    SOAPProxy("http://localhost:8447/").numberOfDatasets(sessionID, 2, secureToken=secureToken)
133       
134    getter = SOAPProxy("http://localhost:8445/")   
135    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
136    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
137    print options
138    #import sys ; sys.exit()   
139    selector = SOAPProxy("http://localhost:8446/") 
140    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
141                                              datasetGroup_1=options[0][0], datasetGroup_2=options[0][0])
142    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
143    print "SUMMARISE REQUEST..."
144    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
145    print summary 
146    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
147                                             dataset_1=options[0][0], dataset_2=options[1][0])
148    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
149    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
150                                             variable_1=options[1][0], variable_2=options[0][0])
151    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
152    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
153                                              horizontalDomain=options)
154    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
155    print "VERTICAL_DOMAIN", options[1][0][0]
156    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
157                                               verticalDomain_1=options[0][0][0], verticalDomain_2=options[1][0][0])
158    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
159    print "TEMPORAL OPTIONS", options
160    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
161                                              temporalDomain_1=("1999-01-01T00:00:00", "1999-01-01T00:00:00", (6, "hour")),
162                                              temporalDomain_2=("1999-01-01T00:00:00", "1999-01-01T00:00:00", (6, "hour")))                                           
163#                                             temporalDomain_1=options[0][0], temporalDomain_2=options[1][0])
164    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
165    print "OUTPUT:", options
166    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
167                                              outputFormat=options[0])
168    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
169    print "\nIS IT COMPLETE?"
170    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
171    print "\nGET XML..."
172    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
173    print "DOCUMENT:", dxrmlDoc
174    print "Writing XML doc to local file: hello.xml"
175    open("hello.xml", "w").write(dxrmlDoc)
176   
177    print "SUMMARISE REQUEST..."
178    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
179    print summary 
180   
181    print "Getting data written now"   
182    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
183    print pathList
184
185def runTest4():
186    """NetCDF output - ECMWF dataset"""   
187    from SOAPpy import SOAPProxy,Config
188    Config.debug=0
189    print "Connecting to the server..."
190    server = SOAPProxy("http://localhost:8444/") # port must be same as server
191    sessionID, secureToken=server.startSession(username=None, password=None)
192    print "\nRETURNED:",sessionID, secureToken
193    getter = SOAPProxy("http://localhost:8445/")   
194    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
195    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
196    print options
197    selector = SOAPProxy("http://localhost:8446/") 
198    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
199                                              datasetGroup_1=options[0][0])
200    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
201    print "SUMMARISE REQUEST..."
202    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
203    print summary 
204    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
205                                             dataset_1=options[0][0])
206    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
207    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
208                                             variable_1=options[0][0])
209    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
210    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
211                                              horizontalDomain=options)
212    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
213    print "VERTICAL_DOMAIN", options[0][0][0]
214    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
215                                               verticalDomain_1=options[0][0][0])
216    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
217    print "TEMPORAL OPTIONS", options[0]
218    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
219                                             temporalDomain_1=options[0])
220    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
221    print "OUTPUT:", options
222    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
223                                              outputFormat=options[0])
224    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
225    print "\nIS IT COMPLETE?"
226    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
227    print "\nGET XML..."
228    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
229    print "DOCUMENT:", dxrmlDoc
230    print "Writing XML doc to local file: hello.xml"
231    open("hello.xml", "w").write(dxrmlDoc)
232   
233    print "SUMMARISE REQUEST..."
234    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
235    print summary 
236   
237    print "Getting data written now"   
238    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
239    print pathList 
240 
241   
242def runTest5():
243    """NASA Ames output"""   
244    from SOAPpy import SOAPProxy,Config
245    Config.debug=0
246    print "Connecting to the server..."
247    server = SOAPProxy("http://localhost:8444/") # port must be same as server
248    sessionID, secureToken=server.startSession(username=None, password=None)
249    print "\nRETURNED:",sessionID, secureToken
250    getter = SOAPProxy("http://localhost:8445/")   
251    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
252    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
253    print options
254    selector = SOAPProxy("http://localhost:8446/") 
255    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
256                                              datasetGroup_1=options[0][0])
257    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
258    print "SUMMARISE REQUEST..."
259    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
260    print summary 
261    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
262                                             dataset_1=options[0][0])
263    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
264    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
265                                             variable_1=options[0][0])
266    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
267    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
268                                              horizontalDomain=options)
269    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
270    print "VERTICAL_DOMAIN", options[0][0][0]
271    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
272                                               verticalDomain_1=options[0][0][0])
273    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
274    print "TEMPORAL OPTIONS", options
275    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
276                                             temporalDomain_1=options[0])
277    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
278    print "OUTPUT:", options
279    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
280                                              outputFormat=options[1])
281    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
282    print "\nIS IT COMPLETE?"
283    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
284    print "\nGET XML..."
285    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
286    print "DOCUMENT:", dxrmlDoc
287    print "Writing XML doc to local file: hello.xml"
288    open("hello.xml", "w").write(dxrmlDoc)
289   
290    print "SUMMARISE REQUEST..."
291    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
292    print summary 
293   
294    print "Getting data written now"   
295    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
296    print pathList
297 
298def runTest6():
299    """NetCDF equivalent to test4"""   
300    from SOAPpy import SOAPProxy,Config
301    Config.debug=0
302    print "Connecting to the server..."
303    server = SOAPProxy("http://localhost:8444/") # port must be same as server
304    sessionID, secureToken=server.startSession(username=None, password=None)
305    print "\nRETURNED:",sessionID, secureToken
306    getter = SOAPProxy("http://localhost:8445/")   
307    (optionCategories, options, optionStrings, secureToken)=getter.getOptions(sessionID, secureToken=secureToken)
308    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
309    print options
310    selector = SOAPProxy("http://localhost:8446/") 
311    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
312                                              datasetGroup_1=options[0][0])
313    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
314    print "SUMMARISE REQUEST..."
315    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
316    print summary 
317    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
318                                             dataset_1=options[0][0])
319    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken
320    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
321                                             variable_1=options[0][0])
322    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
323    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
324                                              horizontalDomain=options)
325    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
326    print "VERTICAL_DOMAIN", options[0][0][0]
327    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
328                                               verticalDomain_1=options[0][0][0])
329    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
330    print "TEMPORAL OPTIONS", options
331    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
332                                             temporalDomain_1=options[0])
333    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken   
334    print "OUTPUT:", options
335    (optionCategories, options, optionStrings, secureToken)=selector.selectOptions(sessionID, secureToken=secureToken, 
336                                              outputFormat=options[0])
337    print "\nRETURNED:",optionCategories, options, optionStrings, secureToken     
338    print "\nIS IT COMPLETE?"
339    print SOAPProxy("http://localhost:8449/").isComplete(sessionID, secureToken)[0]
340    print "\nGET XML..."
341    dxrmlDoc=SOAPProxy("http://localhost:8450/").getDataSubsetSpecifier(sessionID, secureToken)[0]
342    print "DOCUMENT:", dxrmlDoc
343    print "Writing XML doc to local file: hello.xml"
344    open("hello.xml", "w").write(dxrmlDoc)
345   
346    print "SUMMARISE REQUEST..."
347    (summary, secureToken) = SOAPProxy("http://localhost:8448/").summariseRequest(sessionID, secureToken=secureToken)
348    print summary 
349   
350    print "Getting data written now"   
351    pathList, secureToken = SOAPProxy("http://localhost:8451/").extractData(sessionID, secureToken)
352    print pathList           
353   
354if __name__=="__main__":
355    runTest1()
356    runTest2()
357    runTest3()
358    runTest4()
359    runTest5()
360    runTest6()
Note: See TracBrowser for help on using the repository browser.