summaryrefslogtreecommitdiff
path: root/spec/ruby/core/objectspace/weakmap/shared/members.rb
blob: 57226c8d7a0b6cc3c0ce2982f85cccaf1a0cc6b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
describe :weakmap_members, shared: true do
  it "is correct" do
    map = ObjectSpace::WeakMap.new
    key1, key2 = %w[a b].map(&:upcase)
    ref1, ref2 = %w[x y]
    @method.call(map).should == []
    map[key1] = ref1
    @method.call(map).should == @object[0..0]
    map[key1] = ref1
    @method.call(map).should == @object[0..0]
    map[key2] = ref2
    @method.call(map).sort.should == @object
  end
end