Expand All
Collapse All
FitNesse
SuiteAcceptanceTests
SuiteWidgetTests
TestEvaluator
Included page: .FitNesse.SuiteAcceptanceTests.ScenarioLibrary (edit)
scenario
given page
page
with content
content
create page
@page
with content
@content
$IT=
echo
@page
scenario
given page
page
given page
@page
with content
nothing
$CONTENT=
echo
scenario
given test page
page
given page
@page
make
@page
a test page
scenario
given slim test page
page
given page
@page
with content
!define TEST_SYSTEM {slim}
make
@page
a test page
scenario
page
source
should have link to
target
check
request page
@source
200
ensure
content contains
<a href="@target"
$IT=
echo
@source
scenario
it should have link to
target
page
$IT
should have link to
@target
scenario
and it should have link to
target
page
$IT
should have link to
@target
scenario
page
source
should have creating link to
target
check
request page
@source
200
ensure
content contains
@target<a title="create page" href="@target?edit&nonExistent=true">[?]</a>
scenario
it should have creating link to
target
page
$IT
should have creating link to
@target
scenario
page
source
should contain
text
check
request page
@source
200
ensure
content contains
@text
show
content
scenario
page
source
should not contain
text
check
request page
@source
200
reject
content contains
@text
show
content
scenario
page
source
should match
text
check
request page
@source
200
ensure
content matches
@text
show
content
scenario
it should contain
text
page
$IT
should contain
@text
scenario
it should not contain
text
page
$IT
should not contain
@text
scenario
it should contain
text
in line
symbol
check
request page
$IT
200
$@symbol=
line number containing
@text
scenario
it should match
text
page
$IT
should match
@text
scenario
test results for page
source
should contain
text
check
request page
@source?test
200
ensure
content contains
@text
show
content
scenario
test results for page in debug mode
source
should contain
text
check
request page
@source?test&debug
200
ensure
content contains
@text
show
content
scenario
test results for suite
source
should contain
text
check
request page
@source?suite
200
ensure
content contains
@text
show
content
scenario
its test results should contain
text
test results for page
$IT
should contain
@text
scenario
test ressults for page
source
should not contain
text
check
request page
@source?test
200
reject
content contains
@text
show
content
scenario
and should contain
text
ensure
content contains
@text
show
content
scenario
and should match
text
ensure
content matches
@text
show
content
scenario
and should not contain
text
reject
content contains
@text
show
content
scenario
widget
wikiText
should render
htmlText
create page
WidgetPage
with content
@wikiText
check
request page
WidgetPage
200
ensure
content matches
@htmlText
show
content
scenario
the line
after
should come after
before
check
echo int
$@before
< $@after
scenario
pass
check
echo
pass
pass
scenario
show collapsed
content
show
@content
scenario
show Symbol
result
scenario
then
pass
assertions pass,
fail
fail,
ignore
are ignored
exception
exceptions thrown
ensure
content matches
Assertions:<[^<]*@pass right, @fail wrong, @ignore ignored, @exception exceptions
show
extract match;
Assertions:<[^<]*exceptions
contents
0
scenario
and cell
text
has result
result
ensure
content matches
class="@result">@text<
show
extract match;
class="[^"]+">@text<
contents
0
variable defined: TestSTART=@@@START: Test specific content
variable defined: TestEND=@@@END: Test specific content
scenario
and TestSystem setup is
content
$CONTENT=
echo
$CONTENT
@content
scenario
and setup content is
content
$CONTENT=
echo
$CONTENT
@content
scenario
and test content is
content
given page
$IT
with content
$CONTENT @@@START: Test specific content@content@@@END: Test specific content
make
$IT
a test page
scenario
get HTML result
start
Response Examiner.
setType
contents
setPattern
@@@START: Test specific content[^<]*(.*>)\s*@@@END: Test specific content
setGroup
1
$HTML_Result=
found
scenario
get HTML input
start
Response Examiner.
setType
pageHtml
setPattern
@@@START: Test specific content[^<]*(.*>)\s*@@@END: Test specific content
setGroup
1
$HTML_Input=
found
show collapsed
get value
scenario
get collapsed executon log for page
source
check
request page
@source?executionLog
200
show
content
scenario
when page
source
is tested
check
request page
@source?test
200
show collapsed
content
scenario
when page
source
is tested and HTML is extracted
when page
@source
is tested
get HTML result
get HTML input
Evaluator of expressions: ${= =}
Syntax
${= [format:] expression =} Expression
An expression may be a combination of constants, variables, and opertors. All internal calculations use the Java double numeric type.Format
A format is a specifier that describes the rendering of the numeric result. The format specifier is described by the Java 5 String class's .format() method: %[flags][width][.precision]conversion *!note N.B., The [argument_index$] specifier is not permitted. Additionally, a formatting locale can be defined by setting the variable FORMAT_LOCALE to override the default JVM locale.Links
Examples
${= 12 + 23 =} renders (sand brackets) as [35]
${=%5.4f:1.414=} : [1.4140]
${=%05X:14+14=} : [0001C]
${= %-10s : 123 =} : [123 ] And when specifying a formatting locale: !define FORMAT_LOCALE {fr}
${=%5.4f:1.414=} : [1,4140] Operators supported
Comment
Spaces between items are optional
Operator
Argument
Description
arg
constant or variable
Examples: 3, 12.4, 4E+8, ${VALUE}, ${some.var}
expr
expression
Any valid combination of arguments and optional operations and parentheses
+
expr + expr
Addition
-
-expr
Unary negation
-
expr - expr
Subtraction
*
expr * expr
Multiplication
/
expr / expr
Division
^
expr ^ expr
Exponentiation
sin
sin expr
Radian Sine of expr
cos
cos expr
Radian Cosine of expr
tan
cos expr
Radian Tangent of expr
( )
( expr )
Parenthetical grouping of an expression
Test Blank Expressions
Build blank expression page
script
start
Page Builder
line
~1a:${==}~
line
~1b:${= =}~
line
~1c:${= =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~1a:~
true
contents
~1b:~
true
contents
~1c:~
true
Test Single Argument Expressions
Build expression page
script
start
Page Builder
line
~2a:${=3=}~
line
~2b:${= 4.2 =}~
line
~2c:${= 2E+1 =}~
line
~2d:${= 2.3E+42 =}~
line
~2e:${= 4.2E + 24 =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~2a:3~
true
contents
~2b:4.2~
true
contents
~2c:20~
true
contents
~2d:2.3E+42~
true
contents
~2e:4.2E+24~
true
Test spaces around experssions
Build expression page
script
start
Page Builder
line
~3a:${=1+1=}~
line
~3b:${=2 + 2=}~
line
~3c:${= 3 + 3=}~
line
~3d:${=4 + 4 =}~
line
~3e:${=5 +5 =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~3a:2~
true
contents
~3b:4~
true
contents
~3c:6~
true
contents
~3d:8~
true
contents
~3e:10~
true
Test each operator
Build expression page
script
start
Page Builder
line
~4plus:${= 1 + 2 =}~
line
~4minus:${= 2 - 3 =}~
line
~4unary:${= -12 =}~
line
~4mult:${= 3 * 4 =}~
line
~4div:${= 4 / 5 =}~
line
~4exp:${=%2d: 5 ^ 6 =}~
line
~4sin1:${=%5.4f: sin0.39269875 =}~
line
~4sin2:${=%5.4f: sin 0.39269875 =}~
line
~4sin3:${=%5.4f: sin(0.39269875) =}~
line
~4sin4:${=%5.4f: sin(3.14159/8) =}~
line
~4sin5:${=%5.4f: sin (3.14159/8) =}~
line
~4cos:${=%5.4f: cos(3.14159 / 8) =}~
line
~4tan:${=%5.4f: tan(3.14159 / 8) =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~4plus:3~
true
contents
~4minus:-1~
true
contents
~4unary:-12~
true
contents
~4mult:12~
true
contents
~4div:0.8~
true
contents
~4exp:15625~
true
contents
~4sin1:0.3827~
true
contents
~4sin2:0.3827~
true
contents
~4sin3:0.3827~
true
contents
~4sin4:0.3827~
true
contents
~4sin5:0.3827~
true
contents
~4cos:0.9239~
true
contents
~4tan:0.4142~
true
Test parentheses
Build expression page
script
start
Page Builder
line
~5a:${= 2 * 3 + 4 / 2 - 3 =}~
line
~5b:${= 2 * ( 3 + 4 ) / 2 - 3 =}~
line
~5c:${= 2 * ( 3 + 4 ) / ( 2 - 3 ) =}~
line
~5d:${= 2 * ( 3 + ( 4 / ( 2 - 3 ) ) ) =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~5a:5~
true
contents
~5b:4~
true
contents
~5c:-14~
true
contents
~5d:-2~
true
Test formatting
Build expression page
script
start
Page Builder
line
~6a:${=%d:2 =}~
line
~6b:${= %d : 3.2 =}~
line
~6c:${=%02d: 2 + 1 =}~
line
~6d:${= %4.4f: 2.2 / 3.4 =}~
line
~6e:${=%03o: 16 =}~
line
~6f:${= %03o : 18 =}~
line
~6g:${=%03x: 26 =}~
line
~6h:${=%03X: 27 =}~
line
~6i:${= %-12s : 123 =}~
line
~6j:${=%TY: 73422123127 =}~
line
~6k:${=%b: 27 =}~
line
~6l:${=%b: 0 =}~
line
~6m:${=%B: 27 =}~
line
~6n:${=%B: 0 =}~
line
~6o:${= % d : 3.2 =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~6a:2~
true
contents
~6b:3~
true
contents
~6c:03~
true
contents
~6d:0.6471~
true
contents
~6e:020~
true
contents
~6f:022~
true
contents
~6g:01a~
true
contents
~6h:01B~
true
contents
~6i:123 ~
true
contents
~6j:1972~
true
contents
~6k:true~
true
contents
~6l:false~
true
contents
~6m:true~
true
contents
~6n:false~
true
contents
~6o: 3~
true
Test formatting with specific locale
Build expression page
script
start
Page Builder
line
!define FORMAT_LOCALE {fr}
line
~7a:${= %4.4f: 2.2 / 3.4 =}~
page
ExpressionPage
Render it
Response Requester
uri
valid?
ExpressionPage
true
Contents
Response Examiner
type
string?
contents
Response Examiner
type
wrapped html?
contents
Verify results
Response Examiner
type
pattern
matches?
contents
~7a:0,6471~
true
Keyboard Shortcuts ?
General
t
Test page or suite
e
Edit page
v
View page (after test)
a
Add new page
Go To
g u
User Guide
g q
Quick Reference Guide
g f
Full Reference Guide
g c
Recent Changes
Edit Mode
CTRL+s
Save page
ESC
Cancel edit
Tools
p
Properties
w
Where used?
AK+v
Versions
AK+h
Page History
/
Focus on search bar
s
Open search page
Close