summaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-01-01 15:35:56 +0900
committerKOBAYASHI Shuji <[email protected]>2019-01-01 15:35:56 +0900
commit648b57620a6f0bd03ab11db61b1fee343c889dfe (patch)
tree631c9abeed19cc241f3d6e4981379fb00c4b48fe /test
parentc6f9a09e393dd5630c59b184a4919311c5c3477b (diff)
downloadmruby-648b57620a6f0bd03ab11db61b1fee343c889dfe.tar.gz
mruby-648b57620a6f0bd03ab11db61b1fee343c889dfe.zip
range: Embed edges in RRange on boxing environment.
[Breaking changes] Developers must use following APIs for accessing attributes of RRange because RRange structure depends on boxing setting. - mrb_range_beg - mrb_range_end - mrb_range_excl_p
Diffstat (limited to 'test')
-rw-r--r--test/t/range.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/t/range.rb b/test/t/range.rb
index 5aee4d5cc..64e7f9d9f 100644
--- a/test/t/range.rb
+++ b/test/t/range.rb
@@ -93,3 +93,19 @@ assert('Range#eql?', '15.2.14.4.14') do
assert_false (1..10).eql? (Range.new(1.0, 10.0))
assert_false (1..10).eql? "1..10"
end
+
+assert('Range#initialize_copy', '15.2.14.4.15') do
+ assert_raise(NameError) { (0..1).__send__(:initialize_copy, 1..3) }
+end
+
+assert('Range#dup') do
+ r = (1..3).dup
+ assert_equal r.begin, 1
+ assert_equal r.end, 3
+ assert_false r.exclude_end?
+
+ r = ("a"..."z").dup
+ assert_equal r.begin, "a"
+ assert_equal r.end, "z"
+ assert_true r.exclude_end?
+end