Research Article
Formal Specification Based Automatic Test Generation for Embedded Network Systems
Pseudocode 7
BNF for variable, channel, and timer declarations.
data-declaration::= “Data” (type-name “{” value (“,”value)* “};” | variable-declaration::=“Var” | (variable-name “:” type-name (“{” value “}”)? (test-declaration)? “;” | ∣ variable-name “” number “..” number “” “:” type-name (“{” value (“,” value)* “}”)? (test-declaration)? “;” | ∣ variable-name “:” (“int” ∣ “double”) | (“” min-value “,” max-value “”)? (“{” value “}”)? (test-declaration)? “;” | ∣ variable-name “” number “..” number “” “:” (“int” ∣ “double”) | (“” min-value “,” max-value “”) ? (“{”value (“,” value)*“}”)? (test-declaration)? “;” | )+ | test-declaration::= “testedwith” “{” (number ∣ number “..” number (“(” number “)”)?) | (“,” (number ∣ number “..” number (“(“ number “)”)?) )* “}” | channel-declaration::= “Channel” (channel-name “:” type-name “;” | ∣ (channel-name “” number “..” number “” “:” type-name “;”) + | timer-declaration:: = | “Timer” (timer-name number unit “” predicate “ “;” | ∣timer-name (number unit “” predicate “,”)*number unit “” predicate “”) “;”)+ | unit::= “msec” ∣ “sec” ∣ “min” ∣ “hour” ∣ “day” |
|