about summary refs log tree commit diff stats
path: root/cpp/076scenario_keyboard_test.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-05-04 14:47:14 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-05-04 14:47:14 -0700
commite3092e7b5ca7fc8c87c891d4d6a1a53ea413072f (patch)
tree5c6c1d5887c14cf0515d7f7d56110fad418d9b9d /cpp/076scenario_keyboard_test.mu
parentbbff2a35a9e4b70a8d02751a904bbf491ba0c12a (diff)
downloadmu-e3092e7b5ca7fc8c87c891d4d6a1a53ea413072f.tar.gz
1256 - scenarios now support keyboard
Diffstat (limited to 'cpp/076scenario_keyboard_test.mu')
-rw-r--r--cpp/076scenario_keyboard_test.mu23
1 files changed, 23 insertions, 0 deletions
diff --git a/cpp/076scenario_keyboard_test.mu b/cpp/076scenario_keyboard_test.mu
new file mode 100644
index 00000000..67a965b1
--- /dev/null
+++ b/cpp/076scenario_keyboard_test.mu
@@ -0,0 +1,23 @@
+# To check our support for keyboards in scenarios, rewrite tests from
+# scenario_keyboard.mu
+# Tests for keyboard interface.
+
+scenario read-key-in-mu [
+  assume-keyboard [abc]
+  run [
+    1:character, 2:boolean, keyboard:address <- read-key keyboard:address
+    3:character, 4:boolean, keyboard:address <- read-key keyboard:address
+    5:character, 6:boolean, keyboard:address <- read-key keyboard:address
+    7:character, 8:boolean, keyboard:address <- read-key keyboard:address
+  ]
+  memory-should-contain [
+    1 <- 97  # 'a'
+    2 <- 1  # first read-key call found a character
+    3 <- 98  # 'b'
+    4 <- 1  # second read-key call found a character
+    5 <- 99  # 'c'
+    6 <- 1  # third read-key call found a character
+    7 <- 0
+    8 <- 0  # fourth read-key call didn't find a character
+  ]
+]