common/tools/ats/wshTestRunX.vbs
author Shabe Razvi <shaber@symbian.org>
Tue, 12 May 2009 14:47:47 +0100
changeset 91 786a0a00701e
permissions -rw-r--r--
1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
91
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     1
'
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     2
' WScript that will invoke the test run execute functionality at ATS3 web server without installing any ATS3
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     3
' specific programs on the local PC.
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     4
'
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     5
' Password must be given in encrypted format and the path to test drop must be in URLEncoded
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     6
'
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     7
' Usage cscript wshRunX.vbs <username> <password> <server hostname> <path to testDrop.zip>
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     8
'
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     9
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    10
' Get the command line arguments
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    11
set args = WScript.Arguments
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    12
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    13
' Check that all arguments have been specified
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    14
Set objShell = WScript.CreateObject("WScript.Shell")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    15
Set env = objShell.Environment("Process")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    16
checkEnvVars(env)
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    17
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    18
' Invoke the web application and write the result to stdOut
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    19
WScript.StdOut.Write doTestRunX(env("ats3.username"), env("ats3.password"), env("ats3.host"), URLEncode( env("ats3.pathToDrop") ), URLEncode( env("ats3.schedule") ))
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    20
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    21
' Quit the script
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    22
Wscript.Quit
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    23
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    24
Function checkEnvVars(env)
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    25
	if env("ats3.username") = "" then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    26
		WScript.Echo "Environment variable ats3.username not specified"
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    27
		WScript.Quit 1
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    28
	elseif env("ats3.password") = "" then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    29
		WScript.Echo "Environment variable ats3.password not specified"
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    30
		WScript.Quit 1
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    31
	elseif env("ats3.host") = "" then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    32
		WScript.Echo "Environment variable ats3.host not specified"
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    33
		WScript.Quit 1		
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    34
	elseif env("ats3.pathToDrop") = "" then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    35
		WScript.Echo "Environment variable ats3.pathToDrop not specified"
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    36
		WScript.Quit 1	
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    37
	end if
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    38
End Function
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    39
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    40
' Invoke the ATS3 web application in given host with the specified username, password and file path
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    41
Function doTestRunX(uname, password, hostName, pathToDrop, schedule)
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    42
    On Error Resume Next
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    43
    
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    44
	'If the given hostname contain port, use it otherwise use the default 8080
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    45
        if(InStr(1, hostName, ":", VBTEXTCOMPARE) = 0) then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    46
        	hostName = hostName & ":8080"
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    47
        end if    
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    48
    
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    49
	Set objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    50
	Call objxmlHTTP.open("GET", "http://" & hostName & "/ats3/XTestRunExecute.do?username=" & uname & "&password=" & password & "&testrunpath=" & pathToDrop & "&schedule=" & schedule, False)
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    51
	objxmlHTTP.Send()
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    52
	If Err.Number <> 0 Then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    53
		WScript.Echo "Error sending data to server: " + hostName
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    54
    	WScript.Quit 1
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    55
	End if		
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    56
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    57
    if objxmlHTTP.status = 200 then
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    58
    	doTestRunX = objxmlHTTP.ResponseText
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    59
    else
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    60
        WScript.Echo "Error importing test run: " + objxmlHTTP.ResponseText
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    61
    	WScript.Quit 1
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    62
	end if
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    63
End Function
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    64
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    65
Function URLEncode(data)
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    66
	data = replace(data,"\","/")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    67
	data = replace(data,"$","%24")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    68
	data = replace(data,"&","%26")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    69
	data = replace(data,"+","%2B")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    70
	data = replace(data,",","%2C")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    71
	data = replace(data,"/","%2F")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    72
	data = replace(data,":","%3A")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    73
	data = replace(data,";","%3B")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    74
	data = replace(data,"=","%3D")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    75
	data = replace(data,"?","%3F")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    76
	data = replace(data,"@","%40")
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    77
	URLEncode = data
786a0a00701e 1) Update binary packaging solution to invoke 7za directly. 2) Add partially complete ATS sf-send-testpkg target and associated tools
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    78
End Function