about summary refs log tree commit diff stats
path: root/sandbox/010-sandbox-trace.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-09-28 19:48:56 -0700
committerKartik K. Agaram <vc@akkartik.com>2016-09-28 19:48:56 -0700
commit6f65d5918f4b73de56e6cb6362c7cbc7dbbe5945 (patch)
treedec4043f2d62f5dd02156d369e20af247881e2ac /sandbox/010-sandbox-trace.mu
parent1627d836b46440f57d766b154ec488fa2e5a1e06 (diff)
downloadmu-6f65d5918f4b73de56e6cb6362c7cbc7dbbe5945.tar.gz
3429 - standardize Mu scenarios
A long-standing problem has been that I couldn't spread code across
'run' blocks because they were separate scopes, so I've ended up making
them effectively comments. Running code inside a 'run' block is
identical in every way to simply running the code directly. The 'run'
block is merely a visual aid to separate setup from the component under
test.

In the process I've also standardized all Mu scenarios to always run in
a local scope, and only use (raw) numeric addresses for values they want
to check later.
Diffstat (limited to 'sandbox/010-sandbox-trace.mu')
-rw-r--r--sandbox/010-sandbox-trace.mu33
1 files changed, 17 insertions, 16 deletions
diff --git a/sandbox/010-sandbox-trace.mu b/sandbox/010-sandbox-trace.mu
index dd1aed15..b921c15d 100644
--- a/sandbox/010-sandbox-trace.mu
+++ b/sandbox/010-sandbox-trace.mu
@@ -1,15 +1,15 @@
 ## clicking on the code typed into a sandbox toggles its trace
 
 scenario sandbox-click-on-code-toggles-app-trace [
+  local-scope
   trace-until 100/app  # trace too long
   assume-screen 50/width, 10/height
+  env:&:environment <- new-programming-environment screen:&:screen, [stash [abc]]
   # run a stash instruction
-  1:text <- new [stash [abc]]
   assume-console [
     press F4
   ]
-  2:&:environment <- new-programming-environment screen:&:screen, 1:text
-  event-loop screen:&:screen, console:&:console, 2:&:environment
+  event-loop screen:&:screen, console:&:console, env
   screen-should-contain [
     .                               run (F4)           .
     .                                                  .
@@ -24,9 +24,9 @@ scenario sandbox-click-on-code-toggles-app-trace [
     left-click 4, 21
   ]
   run [
-    event-loop screen:&:screen, console:&:console, 2:&:environment
-    4:char/cursor-icon <- copy 9251/␣
-    print screen:&:screen, 4:char/cursor-icon
+    event-loop screen:&:screen, console:&:console, env
+    cursor:char <- copy 9251/␣
+    print screen:&:screen, cursor
   ]
   # trace now printed and cursor shouldn't have budged
   screen-should-contain [
@@ -50,8 +50,8 @@ scenario sandbox-click-on-code-toggles-app-trace [
     left-click 4, 25
   ]
   run [
-    event-loop screen:&:screen, console:&:console, 2:&:environment
-    print screen:&:screen, 4:char/cursor-icon
+    event-loop screen:&:screen, console:&:console, env
+    print screen:&:screen, cursor
   ]
   # trace hidden again
   screen-should-contain [
@@ -66,16 +66,17 @@ scenario sandbox-click-on-code-toggles-app-trace [
 ]
 
 scenario sandbox-shows-app-trace-and-result [
+  local-scope
   trace-until 100/app  # trace too long
   assume-screen 50/width, 10/height
   # run a stash instruction and some code
-  1:text <- new [stash [abc]
+  sandbox:text <- new [stash [abc]
 add 2, 2]
   assume-console [
     press F4
   ]
-  2:&:environment <- new-programming-environment screen:&:screen, 1:text
-  event-loop screen:&:screen, console:&:console, 2:&:environment
+  env:&:environment <- new-programming-environment screen:&:screen, sandbox
+  event-loop screen:&:screen, console:&:console, env
   screen-should-contain [
     .                               run (F4)           .
     .                                                  .
@@ -92,7 +93,7 @@ add 2, 2]
     left-click 4, 21
   ]
   run [
-    event-loop screen:&:screen, console:&:console, 2:&:environment
+    event-loop screen:&:screen, console:&:console, env
   ]
   # trace now printed above result
   screen-should-contain [
@@ -110,16 +111,16 @@ add 2, 2]
 ]
 
 scenario clicking-on-app-trace-does-nothing [
+  local-scope
   trace-until 100/app  # trace too long
   assume-screen 50/width, 10/height
+  env:&:environment <- new-programming-environment screen:&:screen, [stash 123456789]
   # create and expand the trace
-  1:text <- new [stash 123456789]
   assume-console [
     press F4
     left-click 4, 1
   ]
-  2:&:environment <- new-programming-environment screen:&:screen, 1:text
-  event-loop screen:&:screen, console:&:console, 2:&:environment
+  event-loop screen:&:screen, console:&:console, env
   screen-should-contain [
     .                               run (F4)           .
     .                                                  .
@@ -133,7 +134,7 @@ scenario clicking-on-app-trace-does-nothing [
     left-click 5, 7
   ]
   run [
-    event-loop screen:&:screen, console:&:console, 2:&:environment
+    event-loop screen:&:screen, console:&:console, env
   ]
   # no change; doesn't die
   screen-should-contain [