<snapdata remixID="14433960"><project name="Snap! Testing Framework" app="Snap! 10.7.2, https://snap.berkeley.edu" version="2"><notes>Test framework for Snap!&#xD;&#xD;How to import:&#xD;  * Open this in the editor&#xD;  * Go to File (the file icon) - Export Blocks...&#xD;  * Click OK; this will download a file&#xD;  * Drag that file into your Snap! project&#xD;&#xD;Check the forum post for how to use.</notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAANYUlEQVR4Xu2dBagU3xfHz7O7sFGwUUzsxBYbuwu7UDGxA1ssDGwUuzuwscUObAzsFrt/f7/3zyzz1pmdO7O7zn0758Djwe6dG+d85tw+G/XfHyEW1oBLGohiAF3SPBcrNMAAMgiuaoABdFX9XDgDyAy4qgEG0FX1c+EMIDPgqgYYQFfVz4UzgMyAqxpgAF1VPxfOADIDrmqAAXRV/Vw4A8gMuKoBBtBV9XPhDCAz4KoGGEBX1c+FM4DMgKsaYABdVT8XzgAyA65qgAF0Vf1cOAPIDLiqAQbQVfVz4QwgM+CqBhhAV9XPhTOAzICrGmAAXVU/F84AMgOuaoABdFX9XDgDqDgDQ4YMofHjxyteS+fVYwCd687yyXv37lHWrFkt05klGDVqFL1+/ZpmzZrlOA/VH2QAw2ihxIkT0/79+6lUqVKOSgGAEO2/o0wUf4gBDKOBPn78SMmSJaPfv387KoUBdKQ2fkivgaioKHIagpEBZJaC1gADGFiF3AUHjVjgDOrXr08dOnSg2rVr2y6JPaBtlfED/hp48OABlSxZkp4+fWpbOQygbZXxA0YacNoNM4CK8HT48GFfTTJnzkzZs2dXpGZy1WAAzfWk9BiwVatWtHLlSipfvryvBXfv3qWHDx9S/PjxadmyZdS0aVM5ClxMxQDGQABhtJYtW9KKFSsMa3/r1i1q27YtnTp1imrVqkU7duxwEbHARZcpU0YsJletWtVWHbkLtqWu0CXGoD19+vS0ZcsWqUw7d+5MixYtcrzgK1VIEInOnDkjXpZr167ZyiUcADZr1ozWrFljqx7hTKxcF3z27FkqVqyYrcVbLPTGjh1bWQCxE4L69e/fn9A+CD47cuSI8PDw9EYSSgAXLFhAXbp0oW7dutGePXsIQxkVRDkAnYyXHj16RMWLF6cnT564rtMbN24IIz9+/Jhu374drT7Dhg2jSpUqEdoIqVChQsD6agCOGTMm2gsZJ04cypUrlyinZ8+eAfPAy4mJG4BHnVC2Ex2HS7FKAdivXz/RTe3evdtWe+fNm0fnz58nvOVOpUGDBrR582bx+Jw5c6h79+6Osvrx4wcdP36c0qRJQ3nz5vXl4cToZh7wy5cvhDHw8OHDafv27aJ7X7p06V/1bdeuHR04cIAGDBhAvXr18n1ftmxZmjZtmnhp3RalAHRiJCgQz719+5ZSpEhhW5/ojmrUqEFJkiShDx8+iOdLly4tPM7JkyepdevWtHz5cvE5PsN3mPhAMmbMSFu3bqWiRYtalguPtXHjRsqfP79lWi2BbBccN25c2rlzJ1WrVi1a3g0bNqRNmzZR0qRJqUSJEjRo0CCC96xYsaKtIY50hR0kVAbAbdu2Ue/evQln6OyKU3A1+PzhXbdunTAW6qLPG2f70O0NHDhQVBFdLMCSOWxw5coVAhDwXLIiC6D2EvrXAy9Q48aNRe+wYcMGWr9+va/oQ4cOyVYjrOmUAdApRBj35ciRgz5//mxLUbt27RLLN/5GQ/eWKFEi+vXrF8WKFcsHILbS4PH80yMNul1MMqzEbhvtAIjJzNixYwljUE1Gjx4t6qvyecIYD2CmTJkI3rNw4cLR7N+8eXPfcgOOtY8bN873veb5/GGC15s8eTJdunSJChQoINJr0OA/IMTykF769u1LGTJkEOMsKwkngEZekAG0sojue3gSJwc3zYyq/xyQYiaILgmeEieVMThHmRgjaUfe+/TpQ1OnThWfa4J8MFjHn9HReDteCnmhjdos2Eo98KwQjPFkxF8XmGjgRDa8vaqihAfE1lq5cuXo/v37tvRUsGBBMa4aMWJEtOcwmUiePHk0oPWeDB4O401Ivnz5aOTIkZQ6dWrDsjVYzMZ5EydOFPc2pkyZYll3jB0xIcDsNRxi9BLb9brhqFegPJUA8NixYzRp0iSxpCArAAIKNwIDZ/AaNWoUbYEXXStA/fbtm9SkQe8BscSBpQ4jefHiBeXOnZvevHljWfWLFy9SkyZNbE1ELDO1SFCvXj3RXszWVRQlAHSyk4E3+8SJE4YXfgJ1y9jmg8fF4rWMyHgQmTR6oGVmzTJ1k02j2vabvt5KAIgK2TEi7skuXLjQdMnGalyIScmECRNo9uzZ1KNHj4B2rFu3rpjkBOxGbNz7sNNOWcBicroYCaCVEfXf4ywhdjawDoYdlurVqwt7wQth9wMHHvbt20dVqlRxbEer+kR7423A6rhCMehBZQBENwFDrl69OqD6bt68KVb13717Z5ju4MGDVLlyZd932HbCkozZ1hryyZMnjxgbYisPY8dwChaF/ZeMwlme6nkrA6BsNwxInz17RunSpTPULb5fu3atGOzbkevXr4v9UkyGGBA7mgsurVIAWnlB7HfWqVMn4Hqhne4wONXx06HQgFIAal7w8uXLf23aAz5cbQw0gwy0NBMKZXEeodeAcgBqe7HYsUiYMKGvxTKeLdwA3rlzR+w7s4ROA8oBiKbBA2KXQ/N2gO/o0aOECUUgCTeAMi9B6EzjjZyUBBCq17pcHM+H4U+fPm1pEQbQUkXKJVAWQD2EsjsHZgCGynOFKh/lKHCxQkoDCL3g0GfOnDmlVMQASqlJqUTKA2hHW0YAIjZLlixZbB1AMCuTPaAda8iljXgA06ZNSy9fvmQA5Xj456kiHkB4LeyaYPckWGEPGKwG/34+ogHE7TXEZ0Z8mRYtWgStPQYwaBX+lUFEAYjW6Tf7rU4zIz0OmiLIkYwwgDJaspcm4gDUmv/9+3cRQQsSaBlH5ryflicDaA8umdQRCyAuHmExO5SXsBlAGaTspYlIAHGbLF68eIR9Zewnyy5kW6lODyDCb+A6JiRbtmxWjzr6HodpreLHOMpYoYciEkBcEsK5PtwF7tq1K7Vv3z4kKgeAOMaPgECYWT9//tyyi3daMMrCwVtsQe7du9d2bEGn5f7r52IUgFjPQygz3OcoUqSIqa40TxWKLlObyGiFIdQFDrz6fx5KwyFvTIzatGlD79+/F1dMEbQJJ7cjTWIEgDiGj8tDuEyO+x24DI6QZfBuEByT0t9yw7gPF8DNrm06NaJdoDVI7UTbQrdes2ZNWrx4sdNqxqjnlAcQ0QpmzpwpIlQhZjQEAMK4uFAOwUxWi2yFcdP06dPFnRFcQNdCrplZBWuEiFqFCAlWYgdAXHjCS4DyEccagYHQZWNnxkwQuRTXAnDX2CuiNICFChUS0RL8LyAhRBoMjMvm6JYhMDAuFDnpfmXBkk2nTYL0kx9MWnCeEUDisriRyOYfSXAqCyC8Bi6e4xK5v8BQCACJEGP6IJAI04EYgei+7BgTaa9evRotr2AA0ZaA/Gewnz59EnEIjWblCGSOMCHz58+PJL4s26IkgDNmzBDRprTgPForEMcvVapUIlCQ0QFVDTqEKEMEBLOrm/5akQ0wJAO1kffTl4drp9gWxJgWM2rIz58/RQCiUC0XWVpdoQTKAWh0pApRnhA6DYaCmBlKAwTjLIRgk71eGUoA4f0QjUr/2yZGHhyfYdwKjwj4EEkfQw6viVIAYjaL8RFCb8DTISgQulP8vgbW9WCgQNHwnYz/YPBQAmjlJbUlFkTjwoQDEyCs9339+tVr7In2KgUgZrNahCzcPsMC8uDBg32GQRQthFU7d+6c6SDeyfJLqABEtwrvPHfuXMP6IbgllliWLFnyf+X/GXviRcMan9lF+0inUikAraJkISARfltDCxpu1LXBe2J8KPsjN8gD3SaWb3ABKpDIeDej4QEWrxGbBsHQ9cEiZU7rMID/UAOvXr0S+6pY/TcSzCJTpkxJOOliJE4NagWWVpZVOoT1xW4Fdkogq1atEjs3ZgvRWHTGQVkvTj58Ov3T+P/+IWMBi8LvfWC9zMzDWXlItwFE4xAOGPUEXBgq4GUxC7GLhXKMaxUywT9HQaku2GoJA9rBBSMM2jUvo9cYAMSfnVjTiFqKBWxMgKzEygMiD9ziwzgPa4CYtWPcijVLL+1uWOkxms1U8oCoGI7QI1QaTjabSYIECUS4XQSa9AcQ48SOHTtK6wDhfDFGkzmybxVaTdsSxK6MPua0nUOv0hWPkIRKeUBNpxg3YfwUKIIpvFGnTp3EUgZ2ECBWHsps3OjlLtBtjpUEEEpBLJihQ4eK/9jvNYpij2NZmF1q3hIL0JgBo5uWFSfQyubN6aw1oCyAWtW1TXwcAjX6nQ59E/G7wdj90I5pWTefRLQrQOzFXQgZ/YQ7jfIAagrARAFHpgJNMIx+H8RKgRcuXBBdNwNopanwfB9jAJRtPnepsppSI13EAahdFgrXRSE1zBY5tYg4ACPHNN5oCQPoDTsr20oGUFnTeKNiDKA37KxsKxlAZU3jjYoxgN6ws7KtZACVNY03KsYAesPOyraSAVTWNN6oGAPoDTsr20oGUFnTeKNiDKA37KxsKxlAZU3jjYoxgN6ws7KtZACVNY03KsYAesPOyraSAVTWNN6oGAPoDTsr20oGUFnTeKNiDKA37KxsKxlAZU3jjYoxgN6ws7KtZACVNY03KsYAesPOyraSAVTWNN6oGAPoDTsr20oGUFnTeKNiDKA37KxsK/8Hc2PrAkZuTdoAAAAASUVORK5CYII=</thumbnail><scenes select="1"><scene name="Snap! Testing Framework"><notes>Test framework for Snap!&#xD;&#xD;How to import:&#xD;  * Open this in the editor&#xD;  * Go to File (the file icon) - Export Blocks...&#xD;  * Click OK; this will download a file&#xD;  * Drag that file into your Snap! project&#xD;&#xD;Check the forum post for how to use.</notes><palette><category name="Testing" color="97,255,90,1"/></palette><hidden></hidden><headers></headers><code></code><blocks><block-definition s="test name code" type="reporter" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l></l></block></script></block-definition><block-definition s="test %&apos;name&apos; %&apos;code&apos;" type="reporter" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%txt" initial="1"></input><input type="%cs" initial="1"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block var="name"/><block s="reportJoinWords"><block s="reportConcatenatedLists"><list><block s="reportTextSplit"><block s="reifyScript"><script><block s="doDeclareVariables"><list><l>__testResult__</l></list></block><block s="doSetVar"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>true</bool></l></block><l></l></list></block></block></script><list></list></block><l><option>blocks</option></l></block><block s="reportTextSplit"><custom-block s="inject %cs %br into %cs %br %s each %predRing"><script><block s="doIf"><block s="reportNot"><block s="reportListItem"><l>1</l><block var="__testResult__"/></block></block><script><block s="doReport"><block var="__testResult__"/></block></script><list></list></block></script><block var="code"/><l>after</l><block s="reifyPredicate"><autolambda><block s="reportListContainsItem"><block s="reportNewList"><list><block s="reifyScript"><script><custom-block s="expect %s to equal %s , %b with error message %txt"><l></l><l></l><l><bool>false</bool></l><l></l></custom-block></script><list></list></block><block s="reifyScript"><script><custom-block s="expect %s to be NOT equal to %s , %b with error message %txt"><l></l><l></l><l><bool>false</bool></l><l></l></custom-block></script><list></list></block><block s="reifyScript"><script><custom-block s="fail , %b with error message %txt"><l/><l></l></custom-block></script><list></list></block><block s="reifyScript"><script><custom-block s="expect %b to be true , %b with error message %txt"><l/><l/><l></l></custom-block></script><list></list></block><block s="reifyScript"><script><custom-block s="expect %b to be false , %b with error message %txt"><l/><l/><l></l></custom-block></script><list></list></block></list></block><l></l></block></autolambda><list></list></block></custom-block><l><option>blocks</option></l></block><block s="reportNewList"><list><block s="reportTextSplit"><block s="reifyScript"><script><block s="doReport"><block s="reportNewList"><list><block s="reportBoolean"><l><bool>true</bool></l></block><l></l></list></block></block></script><list></list></block><l><option>blocks</option></l></block></list></block></list></block></block></list></block></block></script></block-definition><block-definition s="expect %&apos;value&apos; to equal %&apos;expected&apos; , %&apos;doMessage&apos; with error message %&apos;message&apos;" type="command" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input><input type="%s" initial="1"></input><input type="%b" initial="1">false</input><input type="%txt" initial="1">message</input></inputs><script><block s="doIf"><block s="reportVariadicNotEquals"><list><block var="value"/><block var="expected"/></list></block><script><custom-block s="set %s of caller to %s"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportIfElse"><block var="doMessage"/><block var="message"/><l>(no message)</l></block></list></block></custom-block></script><list></list></block></script></block-definition><block-definition s="expect %&apos;value&apos; to be NOT equal to %&apos;notExpected&apos; , %&apos;doMessage&apos; with error message %&apos;message&apos;" type="command" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%s" initial="1"></input><input type="%s" initial="1"></input><input type="%b" initial="1">false</input><input type="%txt" initial="1">message</input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="value"/><block var="notExpected"/></list></block><script><custom-block s="set %s of caller to %s"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportIfElse"><block var="doMessage"/><block var="message"/><l>(no message)</l></block></list></block></custom-block></script><list></list></block></script></block-definition><block-definition s="expect %&apos;value&apos; to be true , %&apos;doMessage&apos; with error message %&apos;message&apos;" type="command" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%b" initial="1"></input><input type="%b" initial="1">false</input><input type="%txt" initial="1">message</input></inputs><script><block s="doIf"><block s="reportNot"><block var="value"/></block><script><custom-block s="set %s of caller to %s"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportIfElse"><block var="doMessage"/><block var="message"/><l>(no message)</l></block></list></block></custom-block></script><list></list></block></script></block-definition><block-definition s="expect %&apos;value&apos; to be false , %&apos;doMessage&apos; with error message %&apos;message&apos;" type="command" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%b" initial="1"></input><input type="%b" initial="1">false</input><input type="%txt" initial="1">message</input></inputs><script><block s="doIf"><block var="value"/><script><custom-block s="set %s of caller to %s"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportIfElse"><block var="doMessage"/><block var="message"/><l>(no message)</l></block></list></block></custom-block></script><list></list></block></script></block-definition><block-definition s="fail , %&apos;doMessage&apos; with error message %&apos;message&apos;" type="command" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%b" initial="1">false</input><input type="%txt" initial="1">message</input></inputs><script><custom-block s="set %s of caller to %s"><l>__testResult__</l><block s="reportNewList"><list><block s="reportBoolean"><l><bool>false</bool></l></block><block s="reportIfElse"><block var="doMessage"/><block var="message"/><l>(no message)</l></block></list></block></custom-block></script></block-definition><block-definition s="run test %&apos;test&apos;" type="reporter" category="Testing" space="true"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="evaluate"><block s="reportListItem"><l>2</l><block var="test"/></block><list></list></block></block></script></block-definition><block-definition s="scriptify %&apos;template&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%repRing" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>def</l></list></block><block s="doSetVar"><l>def</l><block s="reportBlockAttribute"><l><option>definition</option></l><block var="template"/></block></block><block s="doReport"><block s="reportJoinWords"><block s="reportCONS"><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reifyScript"><script><block s="doDefineBlock"><l>a</l><l></l><block s="reifyReporter"><script></script><list></list></block></block></script><list></list></block><l>block</l><block s="reportBlockAttribute"><l><option>label</option></l><block var="template"/></block><block s="reportJoinWords"><list><block s="reifyReporter"><autolambda><block s="reifyReporter"><script></script><list></list></block></autolambda><list></list></block><block var="def"/><block s="reportCONS"><block s="reportListAttribute"><l><option>length</option></l><block s="reportAttributeOf"><l><option>input names</option></l><block var="def"/></block></block><block s="reportAttributeOf"><l><option>input names</option></l><block var="def"/></block></block></list></block></list></block></list></block><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportJoinWords"><list><block s="reifyScript"><script><block s="doSetBlockAttribute"><l></l><block s="reifyReporter"><script></script><list></list></block><l></l></block></script><list></list></block><l></l><block s="reifyReporter"><autolambda><block var="block"/></autolambda><list></list></block><custom-block s="blockify %l"><block s="reportBlockAttribute"><l></l><block var="template"/></block></custom-block></list></block></list></block></autolambda><list></list></block><block s="reportCDR"><block s="reportCDR"><block s="reportApplyExtension"><l>snap_block_selectors</l><list></list></block></block></block></block></block></block></block></script></block-definition><block-definition s="blockify %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportIfElse"><block s="reportIsA"><block var="data"/><l><option>list</option></l></block><block s="reportJoinWords"><list><block s="reifyReporter"><autolambda><block s="reportNewList"><list></list></block></autolambda><list></list></block><block s="reportCONS"><block s="reportListAttribute"><l><option>length</option></l><block var="data"/></block><block s="reportMap"><block s="reportEnvironment"><l><option>script</option></l></block><block var="data"/></block></block></list></block><block s="reportIfElse"><block s="reportIsA"><block var="data"/><l><option>Boolean</option></l></block><block s="reportJoinWords"><list><block s="reifyPredicate"><autolambda><block s="reportBoolean"><l><bool>true</bool></l></block></autolambda><list></list></block><block var="data"/></list></block><block s="reportIfElse"><block s="reportIsA"><block var="data"/><l><option>script</option></l></block><block s="reportJoinWords"><list><block s="reifyReporter"><autolambda><block s="reifyReporter"><script></script><list></list></block></autolambda><list></list></block><block var="data"/></list></block><block var="data"/></block></block></block></block></script></block-definition><block-definition s="callers of %&apos;block&apos;" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input></inputs><script><block s="doReport"><block s="reportKeep"><block s="reifyPredicate"><autolambda><block s="reportVariadicAnd"><list><block s="reportBlockAttribute"><l><option>custom?</option></l><block s="reifyReporter"><script></script><list></list></block></block><block s="reportListContainsItem"><block s="reportListAttribute"><l><option>flatten</option></l><block s="reportTextSplit"><block s="reportBlockAttribute"><l><option>definition</option></l><block s="reifyReporter"><script></script><list></list></block></block><l><option>blocks</option></l></block></block><block var="block"/></block></list></block></autolambda><list></list></block><block s="reportGet"><l><option>blocks</option></l></block></block></block></script></block-definition><block-definition s="inject %&apos;cmd&apos; $nl into %&apos;script&apos; $nl %&apos;position&apos; each %&apos;test&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%cs" initial="1"></input><input type="%cs" initial="1"></input><input type="%s" readonly="true" irreplaceable="true" initial="1">after<options>before&#xD;after</options></input><input type="%predRing" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>syntax</l><l>i</l><l>expr</l></list></block><block s="doSetVar"><l>syntax</l><block s="reportTextSplit"><block var="script"/><l><option>blocks</option></l></block></block><block s="doIf"><block s="reportIsA"><block s="reportListItem"><l>1</l><block var="syntax"/></block><l><option>script</option></l></block><script><block s="doSetVar"><l>syntax</l><block s="reportNewList"><list><block var="syntax"/></list></block></block></script><list></list></block><block s="doWarp"><script><block s="doUntil"><block s="reportVariadicEquals"><list><block var="i"/><block s="reportListAttribute"><l><option>length</option></l><block var="syntax"/></block></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>expr</l><block s="reportListItem"><block var="i"/><block var="syntax"/></block></block><block s="doFor"><l>k</l><l>2</l><block s="reportListAttribute"><l><option>length</option></l><block var="expr"/></block><script><block s="doIf"><block s="reportIsA"><block s="reportListItem"><block var="k"/><block var="expr"/></block><l><option>list</option></l></block><script><block s="doReplaceInList"><block var="k"/><block var="expr"/><block s="reportTextSplit"><block s="evaluate"><block s="reifyReporter"><autolambda><custom-block s="inject %cs %br into %cs %br %s each %predRing"><block var="cmd"/><block s="reportJoinWords"><block s="reportListItem"><block var="k"/><block var="expr"/></block></block><l></l><block var="test"/></custom-block></autolambda><list></list></block><list><block var="position"/></list></block><l><option>blocks</option></l></block></block></script><list></list></block></script></block><block s="doIf"><block s="reportIfElse"><block s="reportIsA"><block var="test"/><l><option>command</option></l></block><block s="reportVariadicEquals"><list><block s="reportListItem"><l>1</l><block var="expr"/></block><block var="test"/></list></block><block s="evaluate"><block var="test"/><list><block s="reportListItem"><l>1</l><block var="expr"/></block></list></block></block><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="position"/><l>after</l></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block><block s="doInsertInList"><block s="reportTextSplit"><block var="cmd"/><l><option>blocks</option></l></block><block var="i"/><block var="syntax"/></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="position"/><l>before</l></list></block><script><block s="doChangeVar"><l>i</l><l>1</l></block></script><list></list></block></script><list></list></block></script></block></script></block><block s="doReport"><block s="reportAttributeOf"><block s="reportJoinWords"><block var="syntax"/></block><block s="reportEnvironment"><l><option>caller</option></l></block></block></block></script></block-definition><block-definition s="call stack" type="reporter" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>current</l><l>stack</l></list></block><block s="doSetVar"><l>stack</l><block s="reportNewList"><list></list></block></block><block s="doSetVar"><l>current</l><block s="reportEnvironment"><l><option>script</option></l></block></block><block s="doWarp"><script><block s="doUntil"><block s="reportIsA"><block var="current"/><l><option>agent</option></l></block><script><block s="doAddToList"><block var="current"/><block var="stack"/></block><block s="doSetVar"><l>current</l><block s="reportAttributeOf"><block s="reifyReporter"><autolambda><block s="reportEnvironment"><l><option>caller</option></l></block></autolambda><list></list></block><block var="current"/></block></block></script></block></script></block><block s="doAddToList"><block var="current"/><block var="stack"/></block><block s="doReport"><block var="stack"/></block></script></block-definition><block-definition s="get %&apos;variable name&apos; of caller" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportAttributeOf"><block var="variable name"/><block s="reportAttributeOf"><block s="reifyReporter"><autolambda><block s="reportEnvironment"><l><option>caller</option></l></block></autolambda><list></list></block><block s="reportEnvironment"><l><option>caller</option></l></block></block></block></block></script></block-definition><block-definition s="set %&apos;variable name&apos; of caller to %&apos;value&apos;" type="command" category="variables"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block s="reifyScript"><script><block s="doSetVar"><l></l><l></l></block></script><list></list></block><block s="reportAttributeOf"><block s="reifyReporter"><autolambda><block s="reportEnvironment"><l><option>caller</option></l></block></autolambda><list></list></block><block s="reportEnvironment"><l><option>caller</option></l></block></block></block><list><block var="variable name"/><block var="value"/></list></block></script></block-definition><block-definition s="expand %&apos;slot&apos; to %&apos;level&apos; slots" type="command" category="control"><header></header><code></code><translations>de:dehne _ auf _ Eingabefelder aus&#xD;</translations><inputs><input type="%s" readonly="true" irreplaceable="true" initial="1"><options>§_inputSlotsMenu</options></input><input type="%n" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>block</l><l>inputs</l><l>defaults</l></list></block><block s="doSetVar"><l>block</l><block s="reportAttributeOf"><block s="reifyReporter"><autolambda><block s="reportEnvironment"><l><option>caller</option></l></block></autolambda><list></list></block><block s="reportEnvironment"><l><option>caller</option></l></block></block></block><block s="doSetVar"><l>inputs</l><block s="reportAttributeOf"><block var="slot"/><block s="reportEnvironment"><l><option>caller</option></l></block></block></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block var="level"/><block s="reportListAttribute"><l><option>length</option></l><block var="inputs"/></block></list></block><script><block s="doSetVar"><l>defaults</l><block s="reportReshape"><block s="reportListItem"><block s="reportListIndex"><block var="slot"/><block s="reportAttributeOf"><l><option>input names</option></l><block s="reportBlockAttribute"><l><option>definition</option></l><block var="block"/></block></block></block><block s="reportBlockAttribute"><l><option>defaults</option></l><block var="block"/></block></block><list><block var="level"/></list></block></block><block s="doWarp"><script><block s="doFor"><l>i</l><block s="reportVariadicSum"><list><block s="reportListAttribute"><l><option>length</option></l><block var="inputs"/></block><l>1</l></list></block><block var="level"/><script><block s="doAddToList"><block s="reportListItem"><block var="i"/><block var="defaults"/></block><block var="inputs"/></block></script></block></script></block></script><list></list></block><block s="doTellTo"><block s="reportEnvironment"><l><option>caller</option></l></block><block s="reifyScript"><script><block s="doSetSlot"><l></l><l></l></block></script><list></list></block><list><block var="slot"/><block s="reportIfElse"><block s="reportVariadicLessThan"><list><block var="level"/><l>1</l></list></block><block s="reportNewList"><list></list></block><block s="reportReshape"><block var="inputs"/><list><block var="level"/></list></block></block></list></block></script></block-definition><block-definition s="example %&apos;s&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt" readonly="true" initial="1"><options>df</options></input></inputs></block-definition><block-definition s="run tests %&apos;tests&apos;" type="reporter" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%mult%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportListItem"><l>1</l><l/></block><custom-block s="run test %l"><l/></custom-block></list></block></autolambda><list></list></block><block var="tests"/></block></block></script></block-definition><block-definition s="summary of test run %&apos;testrun&apos;" type="reporter" category="Testing"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doDeclareVariables"><list><l>out</l><l>passedNum</l></list></block><block s="doSetVar"><l>out</l><custom-block s="multiline %mlt"><l>Test results:&#xD;&#xD;</l></custom-block></block><block s="doSetVar"><l>passedNum</l><l>0</l></block><block s="doForEach"><l>test</l><block var="testrun"/><script><block s="doIfElse"><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="test"/></block></block><script><block s="doSetVar"><l>out</l><block s="reportJoinWords"><list><block var="out"/><l>    * </l><block s="reportListItem"><l>1</l><block var="test"/></block><l> - </l><l>passed</l><custom-block s="multiline %mlt"><l>&#xD;</l></custom-block></list></block></block><block s="doChangeVar"><l>passedNum</l><l>1</l></block></script><script><block s="doSetVar"><l>out</l><block s="reportJoinWords"><list><block var="out"/><l>    * </l><block s="reportListItem"><l>1</l><block var="test"/></block><l> - </l><block s="reportJoinWords"><list><l>failed - </l><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="test"/></block></block></list></block><custom-block s="multiline %mlt"><l>&#xD;</l></custom-block></list></block></block></script></block></script></block><block s="doSetVar"><l>out</l><block s="reportJoinWords"><list><block var="out"/><block var="passedNum"/><l>/</l><block s="reportListAttribute"><l><option>length</option></l><block var="testrun"/></block><l> tests passed.</l><custom-block s="multiline %mlt"><l>&#xD;&#xD;</l></custom-block><l>So that&apos;s a </l><block s="reportIfElse"><block s="reportVariadicEquals"><list><block var="passedNum"/><block s="reportListAttribute"><l><option>length</option></l><block var="testrun"/></block></list></block><l>PASS!</l><l>FAIL!</l></block></list></block></block><block s="doReport"><block var="out"/></block></script><scripts><script x="326.5" y="53.36666666666673"><block s="reportJoinWords"><list><l>hello </l><l>world</l></list></block></script><script x="304.8500003814697" y="95"><block s="reportIfElse"><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="test"/></block></block><l>passed</l><l></l></block></script></scripts></block-definition><block-definition s="multiline %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mlt" initial="1"></input></inputs><script><block s="doReport"><block var="text"/></block></script></block-definition></blocks><primitives><block-definition s="report %&apos;#1&apos;" type="command" category="control" selector="doReport" primitive="doReport"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>doReport</l></block></script></block-definition><block-definition s="this %&apos;#1&apos;" type="reporter" category="control" selector="reportEnvironment" primitive="reportEnvironment"><header></header><code></code><translations></translations><inputs><input type="%s" readonly="true" irreplaceable="true">$_script<options>script=$_script&#xD;caller=$_caller&#xD;continuation=$_continuation&#xD;&#126;&#xD;inputs=$_inputs&#xD;object=$_object</options></input></inputs></block-definition></primitives><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="1088"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="1089"></list></costumes><sounds><list struct="atomic" id="1090"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Open the editor" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="1095"><costumes><list id="1096"><item><ref mediaID="Snap! Testing Framework_Open the editor_cst_Open the editor"></ref></item></list></costumes><sounds><list struct="atomic" id="1097"></list></sounds><blocks></blocks><variables></variables><scripts><script x="41" y="30"><custom-block s="summary of test run %l"><custom-block s="run tests %mult%l"><list><custom-block s="test %txt %cs"><l>willPass</l><script><custom-block s="expect %s to equal %s , %b with error message %txt"><block s="reportVariadicSum"><list><l>1</l><l>1</l></list></block><l>2</l><l><bool>true</bool></l><l>what</l></custom-block></script></custom-block><custom-block s="test %txt %cs"><l>willFail</l><script><custom-block s="expect %s to equal %s , %b with error message %txt"><block s="reportVariadicSum"><list><l>1</l><l>2</l></list></block><l>2</l><l><bool>true</bool></l><l>of course it would</l></custom-block></script></custom-block></list></custom-block><comment w="195" collapsed="false">Really basic example - should return this:&#xD;&#xD;Test results:&#xD;&#xD;    * willPass - passed&#xD;    * willFail - failed - of course it would&#xD;1/2 tests passed.&#xD;&#xD;So that&apos;s a FAIL!&#xD;</comment></custom-block></script><comment x="44" y="191" w="273" collapsed="false">Current version: 1.0.1&#xD;1.0:&#xD;  + Initial release&#xD;1.0.1:&#xD;  * Added footer to summary of test run for the amount of the test passeds and if it passed (passed = all test passed)&#xD;1.0.2:&#xD;  * Slight performance improvements with tests, only checking the test results after expect blocks (or the fail block)</comment></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project><media name="Snap! Testing Framework" app="Snap! 10.7.2, https://snap.berkeley.edu" version="2"><costume name="Open the editor" center-x="140" center-y="95.5" image="data:image/png;base64,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" mediaID="Snap! Testing Framework_Open the editor_cst_Open the editor"/></media></snapdata>