move conditional test to arm
This commit is contained in:
parent
2b467fc555
commit
e51cd8420b
36
test/mains/test_conditional.rb
Normal file
36
test/mains/test_conditional.rb
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
require_relative "helper"
|
||||||
|
|
||||||
|
module Mains
|
||||||
|
class ConditionalTester < MiniTest::Test
|
||||||
|
include MainsHelper
|
||||||
|
|
||||||
|
def test_simple
|
||||||
|
@preload = "Integer.ge"
|
||||||
|
@input = code("5 >= 5")
|
||||||
|
assert_result 1 , ""
|
||||||
|
end
|
||||||
|
def test_const
|
||||||
|
@input = code("10")
|
||||||
|
assert_result 1 , ""
|
||||||
|
end
|
||||||
|
def test_greater
|
||||||
|
@preload = "Integer.gt"
|
||||||
|
@input = code("5 > 5")
|
||||||
|
assert_result 2 , ""
|
||||||
|
end
|
||||||
|
def test_smaller
|
||||||
|
@preload = "Integer.lt"
|
||||||
|
@input = code("5 < 5")
|
||||||
|
assert_result 2 , ""
|
||||||
|
end
|
||||||
|
def test_smaller_eq
|
||||||
|
@preload = "Integer.le"
|
||||||
|
@input = code("5 <= 5")
|
||||||
|
assert_result 1 , ""
|
||||||
|
end
|
||||||
|
|
||||||
|
def code( cond , tru = "return 1" , fals = "return 2")
|
||||||
|
as_main "if(#{cond}) ; #{tru} ; else ; #{fals} ; end"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -1,18 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterIfGreater < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.gt"
|
|
||||||
@string_input = as_main 'if( 5 > 5 ); return 1;else;return 2;end'
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_if
|
|
||||||
run_all
|
|
||||||
assert_equal 2 , get_return
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,18 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterIfGreaterOr < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.ge"
|
|
||||||
@string_input = as_main 'if( 5 >= 5 ); return 1;else;return 2;end'
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_if
|
|
||||||
run_all
|
|
||||||
assert_equal 1 , get_return
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,18 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterIfSmaller < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.lt"
|
|
||||||
@string_input = as_main 'if( 5 < 5 ); return 1;else;return 2;end'
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_if
|
|
||||||
run_all
|
|
||||||
assert_equal 2 , get_return
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,18 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterIfSmallerOr < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.le"
|
|
||||||
@string_input = as_main 'if( 5 <= 5 ); return 1;else;return 2;end'
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_if
|
|
||||||
run_all
|
|
||||||
assert_equal 1 , get_return
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,4 +1,4 @@
|
|||||||
require_relative "../helper"
|
require_relative "helper"
|
||||||
|
|
||||||
module Risc
|
module Risc
|
||||||
class InterpreterIfConstant < MiniTest::Test
|
class InterpreterIfConstant < MiniTest::Test
|
Loading…
Reference in New Issue
Block a user