summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-06-28 08:32:23 +0900
committerGitHub <[email protected]>2019-06-28 08:32:23 +0900
commitdc03bea85498a1573a78234959ee528af1e1c170 (patch)
tree1fb3084980e6ad4caf541fcfc28aa415d8a74196
parent051cb9ca37ca2afb73d8eccd4caa26c40e08083f (diff)
parentad8473bd66c0dd622146e226f281909248b47305 (diff)
downloadmruby-dc03bea85498a1573a78234959ee528af1e1c170.tar.gz
mruby-dc03bea85498a1573a78234959ee528af1e1c170.zip
Merge pull request #4535 from shuujii/add-modification-tests-for-immediate-value
Add modification tests for immediate value
-rw-r--r--mrbgems/mruby-metaprog/test/metaprog.rb4
-rw-r--r--test/t/kernel.rb1
2 files changed, 5 insertions, 0 deletions
diff --git a/mrbgems/mruby-metaprog/test/metaprog.rb b/mrbgems/mruby-metaprog/test/metaprog.rb
index 1e1d4ff26..30b75bd60 100644
--- a/mrbgems/mruby-metaprog/test/metaprog.rb
+++ b/mrbgems/mruby-metaprog/test/metaprog.rb
@@ -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
diff --git a/test/t/kernel.rb b/test/t/kernel.rb
index 103660f53..1e48069f2 100644
--- a/test/t/kernel.rb
+++ b/test/t/kernel.rb
@@ -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'