mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Merge pull request #4535 from shuujii/add-modification-tests-for-immediate-value
Add modification tests for immediate value
This commit is contained in:
@@ -44,6 +44,8 @@ assert('Kernel#instance_variable_set', '15.3.1.3.22') do
|
||||
%w[@6 @% @@a @ a].each do |n|
|
||||
assert_raise(NameError) { o.instance_variable_set(n, 1) }
|
||||
end
|
||||
assert_raise(FrozenError) { o.freeze.instance_variable_set(:@a, 2) }
|
||||
assert_raise(FrozenError, ArgumentError) { nil.instance_variable_set(:@a, 2) }
|
||||
end
|
||||
|
||||
assert('Kernel#instance_variables', '15.3.1.3.23') do
|
||||
@@ -121,6 +123,8 @@ assert('Kernel#define_singleton_method') do
|
||||
end
|
||||
assert_equal :test_method, ret
|
||||
assert_equal :singleton_method_ok, o.test_method
|
||||
assert_raise(TypeError) { 2.define_singleton_method(:f){} }
|
||||
assert_raise(FrozenError) { [].freeze.define_singleton_method(:f){} }
|
||||
end
|
||||
|
||||
assert('Kernel#singleton_class') do
|
||||
|
||||
@@ -419,6 +419,7 @@ assert('Kernel#remove_instance_variable', '15.3.1.3.41') do
|
||||
assert_raise(NameError) { tri.remove }
|
||||
assert_raise(NameError) { tri.remove_instance_variable(:var) }
|
||||
assert_raise(FrozenError) { tri.freeze.remove }
|
||||
assert_raise(FrozenError, NameError) { :a.remove_instance_variable(:@v) }
|
||||
end
|
||||
|
||||
# Kernel#require is defined in mruby-require. '15.3.1.3.42'
|
||||
|
||||
Reference in New Issue
Block a user