summaryrefslogtreecommitdiff
path: root/spec/ruby/library/set/initialize_clone_spec.rb
blob: 62985987fa74d8c1b1ae1ee67ce09a6e166c70cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
require_relative '../../spec_helper'
require 'set'

describe "Set#initialize_clone" do
  ruby_version_is "3.0" do
    # See https://bugs.ruby-lang.org/issues/14266
    it "does not freeze the new Set when called from clone(freeze: false)" do
      set1 = Set[1, 2]
      set1.freeze
      set2 = set1.clone(freeze: false)
      set1.frozen?.should == true
      set2.frozen?.should == false
      set2.add 3
      set1.should == Set[1, 2]
      set2.should == Set[1, 2, 3]
    end
  end
end