!7 sS data = [[ == test 1 (input + statement) -- rule 1 who is x y [input] + x y is a trader [statement] => a trader -- test input john doe is a guy who is john doe? -- expected output a guy == test 2 (self-variable bug) -- rule 1 who is a trader [input] + x y is a trader [statement] => x y -- test input john doe is a trader alfred hitchcock is a director who is a director? -- expected output alfred hitchcock == test 3 (multiple input lines) -- rule 1 !eval countSheep() [input] + 55 [input] => there are 55 sheep -- test input !eval countSheep() 77 -- expected output there are 77 sheep == test 4 (same, without marking conditions as "input") -- rule 1 !eval countSheep() + 55 => there are 55 sheep -- test input !eval countSheep() 77 -- expected output there are 77 sheep == test 4 (default answers) -- rule 1 is black the opposite of white + black is the opposite of white [statement] => yes [don't change "is"] -- rule 2 is black the opposite of white => no [default] [don't change "is"] -- test input 1 bright is the opposite of dark is bright the opposite of dark? -- expected output 1 yes -- test input 2 bright is the opposite of dark is blue the opposite of dark? -- expected output 2 no == test 5 -- rule {sad ugo} says: => ugo is sad today [temporary fact] [split "sad ugo"] -- test input [happy johnny] bla bla -- expected temporary facts johnny is happy today ]]; !include once #1021761 // Gazelle Fakery p-exp { gazelle_performMultipleTests(data); }