102 lines
2.8 KiB
Plaintext
102 lines
2.8 KiB
Plaintext
## @file This is a test script to test and to show the features of the webtester framework.
|
|
|
|
testsuite Test WebTester Commands
|
|
|
|
testcase Test Certificate Load
|
|
# Load a SwissSign root certificate, so that it is accepted in the
|
|
# following tests. Normally this is only necessary if you use
|
|
# self-signed certificates, that are unknown by qt.
|
|
ca-certificate ca.pem
|
|
|
|
testcase Test Variable Definition
|
|
# set a variable to a value
|
|
set ARG4 = Argument number 4
|
|
# set a variable to the output of a system command
|
|
set WORKDIR
|
|
execute pwd
|
|
|
|
testcase Test Function Call
|
|
# call a test function with three comma separated arguments
|
|
# - either with single quotes, allmust be quoted
|
|
call test '1', 'hello world', 'here is a comma, so it must be quoted', 'ARG4'
|
|
# - or with double quotes, but the two types cannot be mixed
|
|
call test "2", "hello world", "here's a comma, so it must be quoted", "ARG4"
|
|
# - or with no quotes
|
|
call test 3, hello world, here's no comma and no quotes, ARG4
|
|
|
|
testcase Test Function Definition
|
|
## Just a test function
|
|
## @param ARG1 an argument
|
|
## @param ARG2 another argument
|
|
## @param ARG3 another argument
|
|
## @param ARG4 another argument
|
|
function test ARG1, ARG2, ARG3, ARG4
|
|
if ARG1 = 1
|
|
# this is the first function call (or at leas declared to be the first)
|
|
echo This is the first call of function "test"
|
|
echo called funtion test ARG1, ARG2, ARG3, ARG4
|
|
|
|
testcase Test Checks
|
|
# check comparisions of values
|
|
# fist set some variables to test
|
|
set TEXT = Hello world, this is a test.
|
|
set TWO = 2
|
|
# then so some checks
|
|
check TWO = 2
|
|
check 2 = TWO
|
|
check TWO = TWO
|
|
# @todo the following test fails: the dot is the problem
|
|
#check TEXT = Hello world, this is a test.
|
|
check TEXT ^ hello world
|
|
# @todo the following test fails
|
|
#check TEXT ~ [hH]ello.*test
|
|
check TEXT ~ world
|
|
check 1 < TWO
|
|
check TWO < 3
|
|
check 3 > TWO
|
|
|
|
testcase Test Setting Clicktype
|
|
# there are two clicktypes:
|
|
# - normal javascript this.click(); call
|
|
# - Qt emulated real mouse click
|
|
clicktype realmouse
|
|
clicktype javascript
|
|
|
|
testcase Test Load Client Certificate
|
|
# define a client certificate to authenticate to a server
|
|
client-certificate client.pem client.key password
|
|
|
|
testcase Test For Loop
|
|
# test the for loop feature
|
|
# first run with a gven list
|
|
execute bash
|
|
echo -n "test:" > testfile
|
|
for VAR -> 1, 2, 3, 4
|
|
execute bash
|
|
echo -n "-VAR;">> testfile
|
|
set RESULT
|
|
execute bash
|
|
cat testfile
|
|
rm testfile
|
|
check RESULT = test:-1;-2;-3;-4;
|
|
# then run with a given global value
|
|
set VAR = 5, 6, 7, 8, 9
|
|
for VAR
|
|
execute bash
|
|
echo -n "-VAR;">> testfile
|
|
set RESULT
|
|
execute bash
|
|
cat testfile
|
|
rm testfile
|
|
check RESULT = -5;-6;-7;-8;-9;
|
|
# multi dimensional for loops
|
|
# VAR colides with VARS1 and VARS2
|
|
unset VAR
|
|
set VARS1 = 1, 2, 3, 4
|
|
set VARS2 = a, b, c, d
|
|
set RESULT =
|
|
for VARS1
|
|
for VARS2
|
|
set RESULT = RESULTVARS1VARS2
|
|
check RESULT = 1a1b1c1d2a2b2c2d3a3b3c3d4a4b4c4d
|