make class method tests arm tests
This commit is contained in:
parent
06944142d6
commit
2b467fc555
37
test/mains/test_class.rb
Normal file
37
test/mains/test_class.rb
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
require_relative "helper"
|
||||||
|
|
||||||
|
module Mains
|
||||||
|
class ClassTester < MiniTest::Test
|
||||||
|
include MainsHelper
|
||||||
|
|
||||||
|
def test_simple_call
|
||||||
|
@input = code("return Space.get")
|
||||||
|
assert_result 5 , ""
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_inst_get
|
||||||
|
@input = code("return Space.get" , "@inst = 5;return @inst")
|
||||||
|
assert_result 5 , ""
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_inst_set
|
||||||
|
setter = "def self.set(num); @inst = num;end ;"
|
||||||
|
@input = code("Space.set(6);return Space.get" , "return @inst" , setter)
|
||||||
|
assert_result 6 , ""
|
||||||
|
end
|
||||||
|
|
||||||
|
def code( main , get = "return 5" , extra = "")
|
||||||
|
@input = <<MAIN
|
||||||
|
class Space
|
||||||
|
#{extra}
|
||||||
|
def self.get
|
||||||
|
#{get}
|
||||||
|
end
|
||||||
|
def main(arg)
|
||||||
|
#{main}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
MAIN
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -1,29 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterGetters < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.div4"
|
|
||||||
@string_input = <<MAIN
|
|
||||||
class Space
|
|
||||||
def self.get
|
|
||||||
@inst = 5
|
|
||||||
return @inst
|
|
||||||
end
|
|
||||||
def main(arg)
|
|
||||||
return Space.get
|
|
||||||
end
|
|
||||||
end
|
|
||||||
MAIN
|
|
||||||
super
|
|
||||||
end
|
|
||||||
def test_chain
|
|
||||||
#show_main_ticks # get output of what is
|
|
||||||
run_input @string_input
|
|
||||||
assert_equal 5 , get_return
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,33 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterSetters < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.div4"
|
|
||||||
@string_input = <<MAIN
|
|
||||||
class Space
|
|
||||||
def self.set(num)
|
|
||||||
@inst = num
|
|
||||||
end
|
|
||||||
def self.get
|
|
||||||
return @inst
|
|
||||||
end
|
|
||||||
def main(arg)
|
|
||||||
Space.set(5)
|
|
||||||
return Space.get
|
|
||||||
end
|
|
||||||
end
|
|
||||||
MAIN
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_chain
|
|
||||||
#show_main_ticks # get output of what is
|
|
||||||
run_input @string_input
|
|
||||||
assert_equal 5 , get_return
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,29 +0,0 @@
|
|||||||
require_relative "../helper"
|
|
||||||
|
|
||||||
module Risc
|
|
||||||
class InterpreterClassSend < MiniTest::Test
|
|
||||||
include Ticker
|
|
||||||
|
|
||||||
def setup
|
|
||||||
@preload = "Integer.div4"
|
|
||||||
@string_input = <<MAIN
|
|
||||||
class Space
|
|
||||||
def self.get
|
|
||||||
return 5
|
|
||||||
end
|
|
||||||
def main(arg)
|
|
||||||
return Space.get
|
|
||||||
end
|
|
||||||
end
|
|
||||||
MAIN
|
|
||||||
super
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_chain
|
|
||||||
#show_main_ticks # get output of what is
|
|
||||||
run_input @string_input
|
|
||||||
assert_equal 5 , get_return
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
end
|
|
Loading…
x
Reference in New Issue
Block a user