Scenario Libraries
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 |
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 |
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 |
Expressions using the mark up
Syntax:
${= expression =}
An expression may be a combination of constants, variables, and opertors. All internal calculations use the Java
double numeric type.
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 |