#This script will wait for 60 seconds for you to run the windows calculator #If you run the calculator within 60 seconds the script will close it. #If you do not the script will indicate a fail. #set if running on windows 7 default is_win7 = false default use_autoit3 = true if is_win7 then # Use AutoIt3 for Windos 7 Calculator use_autoit3 = true endif if use_autoit3 then if is_win7 then keys = "[ID:130]","[ID:131]","[ID:132]","[ID:133]","[ID:134]","[ID:135]","[ID:136]","[ID:137]","[ID:138]","[ID:139]" keyStar = "[ID:92]" keyEqual = "[ID:121]" keyC = "[ID:81]" keyDiv = "[ID:91]" keyMinus = "[ID:94]" else keys = "[TEXT:0]","[TEXT:1]","[TEXT:2]","[TEXT:3]","[TEXT:4]","[TEXT:5]","[TEXT:6]","[TEXT:7]","[TEXT:8]","[TEXT:9]" keyStar = "[TEXT:*]" keyEqual = "[TEXT:=]" keyC = "[TEXT:C]" keyDiv = "[TEXT:/]" keyMinus = "[TEXT:-]" endif win = new AutoIt3() win.winwait("Calculator","",60) win.ControlClick("Calculator","",keyC) win.ControlClick("Calculator","",keys[9]) win.ControlClick("Calculator","",keyStar) win.ControlClick("Calculator","",keys[8]) win.ControlClick("Calculator","",keyEqual) res = win.WinGetText("Calculator","") res = sscanf("%g",res) assert(res == 72,"9 * 8 = 72") sleep(10) win.ControlClick("Calculator","",keyC) win.ControlClick("Calculator","",keys[8]) win.ControlClick("Calculator","",keyDiv) win.ControlClick("Calculator","",keys[2]) win.ControlClick("Calculator","",keyEqual) res = win.WinGetText("Calculator","") res = sscanf("%g",res) assert(res == 4,"8 / 2 = 4") sleep(10) win.ControlClick("Calculator","",keyC) win.ControlClick("Calculator","",keys[6]) win.ControlClick("Calculator","",keys[4]) win.ControlClick("Calculator","",keyMinus) win.ControlClick("Calculator","",keys[3]) win.ControlClick("Calculator","",keys[2]) win.ControlClick("Calculator","",keyEqual) res = win.WinGetText("Calculator","") res = sscanf("%g",res) assert(res == 32,"64 - 32 = 32") sleep(10) #Close the calculator win.winclose("Calculator") delete win else win = new windows() hwnd = win.waitfor(60,"Calculator") win.press(hwnd,0x85) win.press(hwnd,"*") win.press(hwnd,"8") win.press(hwnd,"=") #The following action requires WindowsTesterPlugin V1.2 #The calculation edit box window of Calculator is 0x193 (use SPY++ to find out the ids if not known) val1 = win.compare(hwnd,0x193,72) sleep(10) win.press(hwnd,"C") win.press(hwnd,"8") win.press(hwnd,"/") win.press(hwnd,"2") win.press(hwnd,"=") val2 = win.compare(hwnd,0x193,4) sleep(10) win.press(hwnd,"C") win.press(hwnd,"6") win.press(hwnd,"4") win.press(hwnd,"-") win.press(hwnd,"3") win.press(hwnd,"2") win.press(hwnd,"=") val3 = win.readInt(hwnd,0x193) if (val3 != 32) then failed endif sleep(10) #Close the calculator win.sendmessage(hwnd,"WM_CLOSE",0,0) delete win endif