hacking method not found

was using exit, since raise is not implemented. This was ambiguous as all programs exit.
Using :died as special kernel code and bending it, and reporting it in interpreter.
This commit is contained in:
2019-09-09 11:47:37 +03:00
parent 7334e72458
commit 0ae7c5d8aa
6 changed files with 22 additions and 7 deletions

View File

@ -91,5 +91,16 @@ module Risc
def test_tick_15 #more than a binary code worth
31.times {@interpreter.tick}
end
class TestInterpreterDies < MiniTest::Test
include Ticker
def setup
@string_input = as_main("random.call")
super
end
def test_dies
# no method does syscall :dies that raises
assert_raises {44.times {@interpreter.tick}}
end
end
end
end