content.txt
3.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
!2 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}-!
-----
!3 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-!|
#
* Fetch that page.
#
|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="Variable!--!Page"!->-!Variable!--!Page|true|
|contents|PAGE_PATH is .|true|
----
!3 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-!|
#
* Fetch that page.
#
|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||
----
!3 Test literals in variables with {} and () syntax.
!note 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-!|
#
* Fetch that page.
#
|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||
----
!3 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-!|
#
* Fetch that page.
#
|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||