diff options
Diffstat (limited to 'blockly/tests/generators/loops1.xml')
-rw-r--r-- | blockly/tests/generators/loops1.xml | 291 |
1 files changed, 291 insertions, 0 deletions
diff --git a/blockly/tests/generators/loops1.xml b/blockly/tests/generators/loops1.xml new file mode 100644 index 0000000..7cdff07 --- /dev/null +++ b/blockly/tests/generators/loops1.xml @@ -0,0 +1,291 @@ +<xml xmlns="http://www.w3.org/1999/xhtml"> + <block type="unittest_main" x="33" y="140"> + <statement name="DO"> + <block type="procedures_callnoreturn"> + <mutation name="test repeat"></mutation> + <next> + <block type="procedures_callnoreturn"> + <mutation name="test while"></mutation> + <next> + <block type="procedures_callnoreturn"> + <mutation name="test foreach"></mutation> + </block> + </next> + </block> + </next> + </block> + </statement> + </block> + <block type="procedures_defnoreturn" x="31" y="296"> + <mutation></mutation> + <field name="NAME">test foreach</field> + <statement name="STACK"> + <block type="variables_set" inline="false"> + <field name="VAR">log</field> + <value name="VALUE"> + <block type="text"> + <field name="TEXT"></field> + </block> + </value> + <next> + <block type="controls_forEach" inline="false"> + <field name="VAR">x</field> + <value name="LIST"> + <block type="lists_create_with" inline="false"> + <mutation items="3"></mutation> + <value name="ADD0"> + <block type="text"> + <field name="TEXT">a</field> + </block> + </value> + <value name="ADD1"> + <block type="text"> + <field name="TEXT">b</field> + </block> + </value> + <value name="ADD2"> + <block type="text"> + <field name="TEXT">c</field> + </block> + </value> + </block> + </value> + <statement name="DO"> + <block type="text_append" inline="false"> + <field name="VAR">log</field> + <value name="TEXT"> + <block type="variables_get"> + <field name="VAR">x</field> + </block> + </value> + </block> + </statement> + <next> + <block type="unittest_assertequals" inline="false"> + <value name="MESSAGE"> + <block type="text"> + <field name="TEXT">for loop</field> + </block> + </value> + <value name="ACTUAL"> + <block type="variables_get"> + <field name="VAR">log</field> + </block> + </value> + <value name="EXPECTED"> + <block type="text"> + <field name="TEXT">abc</field> + </block> + </value> + </block> + </next> + </block> + </next> + </block> + </statement> + </block> + <block type="procedures_defnoreturn" x="30" y="624"> + <mutation></mutation> + <field name="NAME">test while</field> + <statement name="STACK"> + <block type="controls_whileUntil" inline="false"> + <field name="MODE">WHILE</field> + <value name="BOOL"> + <block type="logic_boolean"> + <field name="BOOL">FALSE</field> + </block> + </value> + <statement name="DO"> + <block type="unittest_fail"> + <field name="MESSAGE">while 0</field> + </block> + </statement> + <next> + <block type="controls_whileUntil" inline="false"> + <field name="MODE">UNTIL</field> + <value name="BOOL"> + <block type="logic_boolean"> + <field name="BOOL">TRUE</field> + </block> + </value> + <statement name="DO"> + <block type="unittest_fail"> + <field name="MESSAGE">until 0</field> + </block> + </statement> + <next> + <block type="variables_set" inline="false"> + <field name="VAR">count</field> + <value name="VALUE"> + <block type="math_number"> + <field name="NUM">1</field> + </block> + </value> + <next> + <block type="controls_whileUntil" inline="false"> + <field name="MODE">WHILE</field> + <value name="BOOL"> + <block type="logic_compare"> + <field name="OP">NEQ</field> + <value name="A"> + <block type="variables_get"> + <field name="VAR">count</field> + </block> + </value> + <value name="B"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + </block> + </value> + <statement name="DO"> + <block type="math_change" inline="false"> + <field name="VAR">count</field> + <value name="DELTA"> + <block type="math_number"> + <field name="NUM">1</field> + </block> + </value> + </block> + </statement> + <next> + <block type="unittest_assertequals" inline="false"> + <value name="MESSAGE"> + <block type="text"> + <field name="TEXT">while 10</field> + </block> + </value> + <value name="ACTUAL"> + <block type="variables_get"> + <field name="VAR">count</field> + </block> + </value> + <value name="EXPECTED"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + <next> + <block type="variables_set" inline="false"> + <field name="VAR">count</field> + <value name="VALUE"> + <block type="math_number"> + <field name="NUM">1</field> + </block> + </value> + <next> + <block type="controls_whileUntil" inline="false"> + <field name="MODE">UNTIL</field> + <value name="BOOL"> + <block type="logic_compare"> + <field name="OP">EQ</field> + <value name="A"> + <block type="variables_get"> + <field name="VAR">count</field> + </block> + </value> + <value name="B"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + </block> + </value> + <statement name="DO"> + <block type="math_change" inline="false"> + <field name="VAR">count</field> + <value name="DELTA"> + <block type="math_number"> + <field name="NUM">1</field> + </block> + </value> + </block> + </statement> + <next> + <block type="unittest_assertequals" inline="false"> + <value name="MESSAGE"> + <block type="text"> + <field name="TEXT">until 10</field> + </block> + </value> + <value name="ACTUAL"> + <block type="variables_get"> + <field name="VAR">count</field> + </block> + </value> + <value name="EXPECTED"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + </block> + </next> + </block> + </next> + </block> + </next> + </block> + </next> + </block> + </next> + </block> + </next> + </block> + </next> + </block> + </statement> + </block> + <block type="procedures_defnoreturn" x="397" y="628"> + <mutation></mutation> + <field name="NAME">test repeat</field> + <statement name="STACK"> + <block type="variables_set" inline="false"> + <field name="VAR">count</field> + <value name="VALUE"> + <block type="math_number"> + <field name="NUM">0</field> + </block> + </value> + <next> + <block type="controls_repeat_ext" inline="true"> + <value name="TIMES"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + <statement name="DO"> + <block type="math_change" inline="false"> + <field name="VAR">count</field> + <value name="DELTA"> + <block type="math_number"> + <field name="NUM">1</field> + </block> + </value> + </block> + </statement> + <next> + <block type="unittest_assertequals" inline="false"> + <value name="MESSAGE"> + <block type="text"> + <field name="TEXT">repeat 10</field> + </block> + </value> + <value name="ACTUAL"> + <block type="variables_get"> + <field name="VAR">count</field> + </block> + </value> + <value name="EXPECTED"> + <block type="math_number"> + <field name="NUM">10</field> + </block> + </value> + </block> + </next> + </block> + </next> + </block> + </statement> + </block> +</xml> |