#!/usr/bin/ruby
var block = { |x|
return "hi" if x==1;
return "hello" if x==2;
}
assert_eq(block.call(1), "hi")
assert_eq(block.call(2), "hello")
assert_eq(block.call(1), "hi")
assert_eq(block.run(1), "hi")
assert_eq(block.run(2), "hello")
assert_eq(block.run(1), "hi")
func foo(x) {
var b = { |x|
return "foo" if x==42;
return nil;
}
b(x) if x>10;
return "func";
}
assert_eq(foo(42), "foo");
assert_eq(foo(21), nil);
assert_eq(foo(1), "func");
assert_eq(foo(42), "foo");
say "** Test passed!"