[AHK_OPERA]

Dirty ahk test for Opera 9.64. Dedicated to Amine.

svn path=/trunk/ahk_tests/; revision=1424
This commit is contained in:
Edijs Kolesnikovičs 2012-07-18 06:18:55 +00:00
parent 0a72fe79b8
commit df786f7fb7
8 changed files with 717 additions and 0 deletions

54
Opera/9.64/AddressBar.ahk Normal file
View File

@ -0,0 +1,54 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
; Test if we can enter URL
TestsTotal++
WinWaitActive, Welcome to Opera - Opera,, 15 ; Window caption might change?
if not ErrorLevel
{
Sleep, 1000
SendInput, {CTRLDOWN}l{CTRLUP} ; Toggle address bar
Sleep, 1000
SendInput, www{.}yahoo{.}com{ENTER}
Sleep, 5000 ; Let it to sleep, maybe it will crash ;)
WinWaitActive, Yahoo! - Opera,,25
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: Window caption is 'Yahoo! - Opera' that means we opened URL.`n
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Yahoo! - Opera' was NOT found. Failed to open URL. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}

View File

@ -0,0 +1,98 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
; Test if we can exit properly when download in progress. Bug #5651
TestsTotal++
WinWaitActive, Welcome to Opera - Opera,, 15
if not ErrorLevel
{
SendInput, {CTRLDOWN}t{CTRLUP}
WinWaitActive, Speed Dial - Opera,,15
if not ErrorLevel
{
IfExist, %A_MyDocuments%\bootcd-54727-dbgwin.7z
FileDelete, %A_MyDocuments%\bootcd-54727-dbgwin.7z
Sleep, 1000
SendInput, {CTRLDOWN}l{CTRLUP}
Sleep, 700
SendInput, http://iso.reactos.org/bootcd/bootcd-54727-dbgwin.7z{ENTER}
WinWaitActive, Downloading file bootcd-54727-dbgwin.7z,,15
if not ErrorLevel
{
Sleep, 1500
SendInput, {ENTER} ; Hit 'Save' in Opera
SetTitleMatchMode, 1
WinWaitActive, Save,, 15
if not ErrorLevel
{
Sleep, 2500
SendInput, {ALTDOWN}s{ALTUP} ; Hit 'Save' in 'Save as'
Sleep, 3500 ; Download for 3.5 sec before closing Opera
WinClose, Blank page - Opera,,5
SetTitleMatchMode, 1
WinWaitActive, Active,,7 ; ROS 'Active transfers', WinXP 'Active Transfers'
if not ErrorLevel
{
Sleep, 1500
SendInput, {ENTER} ; Hit 'OK'
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: Closing Opera while download is in progress.`n
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Active transfers' dialog failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Save as' dialog failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Downloading file bootcd-54727-dbgwin.7z' failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Speed Dial - Opera' was NOT found. Failed to open new tab. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}

34
Opera/9.64/DUMMY.ahk Normal file
View File

@ -0,0 +1,34 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
; Test if
TestsTotal++
WinWaitActive, Welcome to Opera - Opera,, 15
if not ErrorLevel
{
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}

93
Opera/9.64/Download.ahk Normal file
View File

@ -0,0 +1,93 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
; Test if we can download some file
TestsTotal++
WinWaitActive, Welcome to Opera - Opera,, 15
if not ErrorLevel
{
IfExist, %A_MyDocuments%\livecd-56407-dbg.7z
FileDelete, %A_MyDocuments%\livecd-56407-dbg.7z
SendInput, {CTRLDOWN}l{CTRLUP}
Sleep, 700
SendInput, http://iso.reactos.org/livecd/livecd-56407-dbg.7z{ENTER} ;Download some file
Sleep, 5000 ; Let it to respond
WinWaitActive, Downloading file livecd-56407-dbg.7z,,25
if not ErrorLevel
{
SendInput, {ENTER} ; Default option is 'Save' and Alt+S doesn't work here. :/
SetTitleMatchMode, 1 ; ReactOS 'Save as', WinXP 'Save As', so match if wnd starts with 'Save'
WinWaitActive, Save,, 15 ; FIXME: add WinText, so we really know it is right dialog
if not ErrorLevel
{
Sleep, 2500
SendInput, {ALTDOWN}s{ALTUP} ; Hit 'Save'
Sleep, 2500
SendInput, {CTRLDOWN}{TAB}{CTRLUP} ; Navigate thru tabs to 'Transfers' tab
WinWaitActive, Transfers - Opera,,60 ; 1 minute
if not ErrorLevel
{
Sleep, 1500
FileGetSize, DFileSize, %A_MyDocuments%\livecd-56407-dbg.7z
ExpectedSize = 23030114
if (InStr(%DFileSize%, %ExpectedSize%))
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: File downloaded. Size the same as expected.`n
bContinue := true
}
else
{
TestsFailed++
OutputDebug, FAILED: %Module%:%A_LineNumber%: Downloaded file size is NOT the same as expected [is %DFileSize% and should be %ExpectedSize%].`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Transfers - Opera' failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Save as' dialog failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Downloading file livecd-56407-dbg.7z' failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}

View File

@ -0,0 +1,73 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
; Test if can open flash
TestsTotal++
WinWaitActive, Welcome to Opera - Opera,, 15
if not ErrorLevel
{
Flash10Exe = %A_WinDir%\system32\Macromed\Flash\FlashUtil10t_Plugin.exe
IfExist, %Flash10Exe%
{
SendInput, {CTRLDOWN}t{CTRLUP} ; Open new tab
WinWaitActive, Speed Dial - Opera,, 15
if not ErrorLevel
{
SendInput, {CTRLDOWN}l{CTRLUP}
Sleep, 1500
SendInput, http://beastybombs.com/play.php{ENTER}
Sleep, 10000 ; Let it to fully load. Maybe it will crash
WinWaitActive, Beasty Bombs - Cats & Dogs Fights - Play - Opera,,20
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: Window caption is 'Beasty Bombs - Cats & Dogs Fights - Play - Opera' that means no crash while opening Flash Game.`n
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Yahoo! - Opera' failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Speed Dial - Opera' failed to appear. Active window caption: '%title%'`n
bContinue := false
}
}
else
{
TestsFailed++
OutputDebug, FAILED: %Module%:%A_LineNumber%: Can NOT find '%Flash10Exe%'. Install it first!`n
bContinue := false
}
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}

208
Opera/9.64/Install.ahk Normal file
View File

@ -0,0 +1,208 @@
/*
* Designed for Opera 9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
Module = Opera_9.64:%1%
bContinue := false
if StrLen(A_WorkingDir) = 3 ;No need percent sign here
SetupExe = %A_WorkingDir%Opera Setup.exe ;We are working in root dir, no need to append slash
else
SetupExe = %A_WorkingDir%\Opera Setup.exe
TestsFailed := 0
TestsOK := 0
TestsTotal := 0
; Test if Setup file exists
TestsTotal++
IfExist, %SetupExe%
{
TestsOK++
Run %SetupExe%
bContinue := true
}
else
{
TestsFailed++
OutputDebug, FAILED: %Module%:%A_LineNumber%: '%SetupExe%' not found.`n
bContinue := false
}
; Test if can start setup
TestsTotal++
if bContinue
{
WinWaitActive, Choose Setup Language, Select the language, 15 ; Wait 15 secs for window to appear
if not ErrorLevel ;Window is found and it is active
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Choose Setup Language' window appeared.`n
Sleep, 2500
SendInput, {ENTER} ;Hit 'OK' button in 'Choose Setup Language' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Choose Setup Language' window failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
; Test if window with 'Start Setup' button can appear
TestsTotal++
if bContinue
{
WinWaitActive, Opera 9.64 - InstallShield Wizard, Start, 25 ; Same exe: 'Start set-up' in ROS, 'Start Setup' in Windows
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Start Setup' button appeared.`n
Sleep, 2500 ; window flashes, so let it to appear correctly
SendInput, {ALTDOWN)
Sleep, 500 ; Opera setup requires those sleeps
SendInput, s
Sleep, 500
SendInput, {ALTUP} ;Hit 'Start Setup' button in 'Opera 9.64 - InstallShield Wizard' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Start Setup' button failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
; Test if 'Opera Browser Licence Agreement' window can appear
TestsTotal++
if bContinue
{
WinWaitActive, Opera 9.64 - InstallShield Wizard, Installation of Opera requires, 20
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' with 'Installation of Opera requires' appeared.`n
Sleep, 2500
SendInput, {ALTDOWN}a{ALTUP} ;Hit 'I Accept' button in 'Opera Browser Licence Agreement' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' with 'Installation of Opera requires' failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
; Test if 'Welcome to the Opera installer' can appear
TestsTotal++
if bContinue
{
WinWaitActive, Opera 9.64 - InstallShield Wizard, Welcome to the Opera, 15
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Welcome to the Opera' appeared.`n
SendInput, {ALDOWN}n{ALTUP} ;Hit 'Next' button in 'Welcome to the Opera installer' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Welcome to the Opera' failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
; Test if 'Ready to install the program' can appear
TestsTotal++
if bContinue
{
WinWaitActive, Opera 9.64 - InstallShield Wizard, Ready to install the program, 15
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Ready to install the program' appeared.`n
Sleep, 2500
SendInput, {ALTDOWN}i{ALTUP} ;Hit 'Install' button in 'Ready to install the program' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'Ready to install the program' failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
; Test if 'InstallShield Wizard Completed' can appear
TestsTotal++
if bContinue
{
WinWaitActive, Opera 9.64 - InstallShield Wizard, InstallShield Wizard Completed, 30
if not ErrorLevel
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'InstallShield Wizard Completed' appeared.`n
SendInput, {TAB} ;Focus 'Run Opera when I press Finish'
Sleep, 500
SendInput, {SPACE}
Sleep, 500
SendInput, {ALTDOWN}f{ALTUP} ;Hit 'Finish' button in 'InstallShield Wizard Completed' window
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A ;A is for the active window
OutputDebug, FAILED: %Module%:%A_LineNumber%: 'Opera 9.64 - InstallShield Wizard' window with 'InstallShield Wizard Completed' failed to appear. Active window caption: '%title%'.`n
bContinue := false
}
}
;Check if Opera.exe exists in program files
TestsTotal++
if bContinue
{
Sleep, 2500
IfExist, %A_ProgramFiles%\Opera\opera.exe
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: Should be installed, because '%A_ProgramFiles%\Opera\opera.exe' was found.`n
bContinue := true
}
else
{
TestsFailed++
OutputDebug, FAILED: %Module%:%A_LineNumber%: Can NOT find '%A_ProgramFiles%\Opera\opera.exe'.`n
bContinue := false
}
}

View File

@ -0,0 +1,69 @@
/*
* Designed for Opera v9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
Module = Opera_9.64_%1%
ModuleExe = %A_ProgramFiles%\Opera\Opera.exe
bContinue := false
TestsTotal := 0
TestsSkipped := 0
TestsFailed := 0
TestsOK := 0
TestsExecuted := 0
;Check if Opera.exe exists in program files
TestsTotal++
{
Sleep, 2500
IfExist, %ModuleExe%
{
TestsOK++
OutputDebug, OK: %Module%:%A_LineNumber%: '%ModuleExe%' was found.`n
bContinue := true
}
else
{
TestsFailed++
OutputDebug, FAILED: %Module%:%A_LineNumber%: Can NOT find '%ModuleExe%'.`n
bContinue := false
}
}
; Test if we can start the app and enter URL
TestsTotal++
if bContinue
{
Run, %ModuleExe% ; Setup/install registers Opera as default browser
Sleep, 4500 ; Let it to load
WinWaitActive, Welcome to Opera - Opera,, 20 ; Window caption might change?
if not ErrorLevel
{
TestsOK++
; OutputDebug, OK: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was found.`n
bContinue := true
}
else
{
TestsFailed++
WinGetTitle, title, A
OutputDebug, FAILED: %Module%:%A_LineNumber%: Window 'Welcome to Opera - Opera' was NOT found. Active window caption: '%title%'`n
bContinue := false
}
}

View File

@ -0,0 +1,88 @@
/*
* Designed for Opera v9.64
* Copyright (C) 2012 Edijs Kolesnikovics
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#Include ..\helper_functions.ahk
if 1 = --list
{
params =
(
install
AddressBar
Download
FlashPlayer
CloseDownload
)
FileAppend, %params%, *
}
else if 1 = install
{
#include Install.ahk
}
else
{
#include Preparation.ahk
if bContinue
{
if 1 = AddressBar
{
#include AddressBar.ahk
}
else if 1 = Download
{
#include Download.ahk
}
else if 1 = FlashPlayer
{
#include FlashPlayer.ahk
}
else if 1 = CloseDownload
{
#include CloseDownload.ahk
}
else OutputDebug, Bad parameters!`r`n
}
}
if 1 != --list
{
if bContinue ; Succeeded, close normally
{
SetTitleMatchMode, 2
WinClose, Opera,,5
if ErrorLevel
{
Process, close, Opera.exe ; Failed to close, terminate
}
}
else ; We failed, so kill process
{
SplitPath, ModuleExe, fName ; Extract filename from given path
WindowCleanUp(fName)
}
; Delete saved settings
Sleep, 1500
FileRemoveDir, %A_AppData%\Opera, 1
TestsSkipped := TestsTotal - TestsOK - TestsFailed
TestsExecuted := TestsOK + TestsFailed
OutputDebug, %Module%: %TestsExecuted% tests executed (0 marked as todo, %TestsFailed% failures), %TestsSkipped% skipped.`n
}