fix return tests
This commit is contained in:
parent
bcc2f019d9
commit
caaa500cb7
@ -38,15 +38,15 @@ module RuntimeTests
|
||||
assert_equal Parfait::Message , @interpreter.get_register(:r0).class
|
||||
assert_equal ret , @interpreter.get_register(:r0).return_value , "exit wrong #{@string_input}"
|
||||
end
|
||||
# check_remote ret
|
||||
check_remote ret
|
||||
end
|
||||
|
||||
def connected
|
||||
return false if ENV["REMOTE_PI"].nil? or (ENV["REMOTE_PI"] == "")
|
||||
return @@conn if defined?(@@conn)
|
||||
puts "remote " + ENV["REMOTE_PI"]
|
||||
user , rest = ENV["REMOTE_PI"].split("@")
|
||||
machine , port = rest.to_s.split(":")
|
||||
return @@conn if defined?(@@conn)
|
||||
@@conn = Rye::Box.new(machine || "localhost" , :port => (port || 2222) , :user => (user || "pi"))
|
||||
end
|
||||
|
||||
|
@ -14,18 +14,14 @@ class Object
|
||||
end
|
||||
HERE
|
||||
@expect = [Label, LoadConstant ,SetSlot,Label,FunctionReturn]
|
||||
was = check
|
||||
set = was.next(2)
|
||||
assert_equal SetSlot , set.class
|
||||
should = Register.machine.space.first_message.get_layout.variable_index(:return_value)
|
||||
assert_equal should, set.index , "Set to message must got to return_value(#{should}), not #{set.index}"
|
||||
check
|
||||
end
|
||||
|
||||
def test_return_local
|
||||
@string_input = <<HERE
|
||||
class Object
|
||||
int main()
|
||||
int runner
|
||||
int runner = 5
|
||||
return runner
|
||||
end
|
||||
end
|
||||
@ -53,6 +49,7 @@ HERE
|
||||
class Object
|
||||
field int runner
|
||||
int main()
|
||||
runner = 5
|
||||
return self.runner
|
||||
end
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user