Test that variables are properly defined and expressed on a page.
- Variables are defined as !define name {value}.
- Alternately they are defined as !define name (value).
- This is so that you can create variables with {} or () in them.
- They are expressed using ${name}
Test a variable defined and used on the same page.
- Create a page with a variable definition and use..
script |
start |
Page Builder |
line |
!define x {1} |
line |
x is ${x} |
line |
PAGE_NAME is ${PAGE_NAME} |
line |
PAGE_PATH is ${PAGE_PATH} |
page |
VariablePage |
Response Requester. |
uri |
valid? |
contents? |
VariablePage |
true |
|
- Inspect the text to see if the variable was expressed.
Response Examiner. |
type |
pattern |
matches? |
contents |
x is 1 |
true |
contents |
PAGE_NAME is <a href="VariablePage">VariablePage |
true |
contents |
PAGE_PATH is . |
true |
Test a variable defined and used on the same page using () syntax.
- Create a page with a variable definition and use..
script |
start |
Page Builder |
line |
!define x (1) |
line |
x is ${x} |
page |
ParenVariablePage |
Response Requester. |
uri |
valid? |
contents? |
ParenVariablePage |
true |
|
- Inspect the text to see if the variable was expressed.
Response Examiner. |
type |
pattern |
matches? |
wrapped html? |
contents |
x is 1 |
true |
|
Test literals in variables with {} and () syntax.
The internal representation of a literal is changed from !lit(n) to !lit?n? so as to avoid conflict with the !define X () widget syntax.
- Create a page with a variable definition and use..
script |
start |
Page Builder |
line |
!define xLitBRACE {!-xLitBRACE-!-!-!} |
line |
!define xLitPAREN (!-xLitPAREN-!-!-!) |
line |
xLitBRACE is ${xLitBRACE} |
line |
xLitPAREN is ${xLitPAREN} |
page |
ParenVariablePage |
Response Requester. |
uri |
valid? |
contents? |
ParenVariablePage |
true |
|
- Inspect the text to see if the variable was expressed.
Response Examiner. |
type |
pattern |
matches? |
wrapped html? |
contents |
xLitPAREN is xLitPAREN |
true |
|
contents |
xLitBRACE is xLitBRACE |
true |
|
Test a variables with periods
- Create a page with a variable definitions with periods.
script |
start |
Page Builder |
line |
!define xy. (1) |
line |
!define x.y (2) |
line |
!define .xy (3) |
line |
!define .x.y. (4) |
line |
!define .xy. (5) |
line |
!define .x.y (6) |
line |
!define x.y. (7) |
line |
!define x..y (8) |
line |
~xy. is ${xy.}~ |
line |
~x.y is ${x.y}~ |
line |
~.xy is ${.xy}~ |
line |
~.x.y. is ${.x.y.}~ |
line |
~.xy. is ${.xy.}~ |
line |
~.x.y is ${.x.y}~ |
line |
~x.y. is ${x.y.}~ |
line |
~x..y is ${x..y}~ |
page |
ParenVariablePage |
Response Requester. |
uri |
valid? |
contents? |
ParenVariablePage |
true |
|
- Inspect the text to see if the variables were expressed properly.
Response Examiner. |
type |
pattern |
matches? |
wrapped html? |
contents |
~xy. is 1~ |
true |
|
contents |
~x.y is 2~ |
true |
|
contents |
~.xy is 3~ |
true |
|
contents |
~.x.y. is 4~ |
true |
|
contents |
~.xy. is 5~ |
true |
|
contents |
~.x.y is 6~ |
true |
|
contents |
~x.y. is 7~ |
true |
|
contents |
~x..y is 8~ |
true |
|