summaryrefslogtreecommitdiff
path: root/spec/ruby/core/range/dup_spec.rb
blob: fab3c3f1b26ce2c03384193f9a19f3c64b6aa62d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
require_relative '../../spec_helper'

describe "Range#dup" do
  it "duplicates the range" do
    original = (1..3)
    copy = original.dup
    copy.begin.should == 1
    copy.end.should == 3
    copy.should_not.exclude_end?
    copy.should_not.equal?(original)

    copy = ("a"..."z").dup
    copy.begin.should == "a"
    copy.end.should == "z"
    copy.should.exclude_end?
  end

  it "creates an unfrozen range" do
    (1..2).dup.should_not.frozen?
    (1..).dup.should_not.frozen?
    Range.new(1, 2).dup.should_not.frozen?
  end
end