adds logical statements to vool
This commit is contained in:
@ -4,8 +4,9 @@ require_relative "test_basic_values"
|
||||
require_relative "test_class_statement"
|
||||
require_relative "test_hash_statement"
|
||||
require_relative "test_if_statement"
|
||||
require_relative "test_logical_statement"
|
||||
require_relative "test_method_statement"
|
||||
require_relative "test_send_statement"
|
||||
require_relative "test_return_statement"
|
||||
require_relative "test_send_statement"
|
||||
require_relative "test_variables"
|
||||
require_relative "test_while_statement"
|
||||
|
40
test/vool/test_logical_statement.rb
Normal file
40
test/vool/test_logical_statement.rb
Normal file
@ -0,0 +1,40 @@
|
||||
require_relative "../helper"
|
||||
|
||||
module Vool
|
||||
class TestLogical < MiniTest::Test
|
||||
|
||||
def simple
|
||||
Compiler.compile( "@a and @b")
|
||||
end
|
||||
def test_simple
|
||||
lst = simple
|
||||
assert_equal LogicalStatement , lst.class
|
||||
end
|
||||
def test_simple_name
|
||||
lst = simple
|
||||
assert_equal :and , lst.name
|
||||
end
|
||||
def test_simple_left
|
||||
lst = simple
|
||||
assert_equal InstanceVariable , lst.left.class
|
||||
end
|
||||
def test_simple_right
|
||||
lst = simple
|
||||
assert_equal InstanceVariable , lst.right.class
|
||||
end
|
||||
|
||||
def test_or
|
||||
lst = Compiler.compile( "@a or @b")
|
||||
assert_equal :or , lst.name
|
||||
end
|
||||
|
||||
def test_or2
|
||||
lst = Compiler.compile( "@a || @b")
|
||||
assert_equal :or , lst.name
|
||||
end
|
||||
def test_and2
|
||||
lst = Compiler.compile( "@a && @b")
|
||||
assert_equal :and , lst.name
|
||||
end
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user