1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Wrap SortedSet with ruby_version_is ""..."3.0"

* Using $ spec/mspec/tool/wrap_with_guard.rb 'ruby_version_is ""..."3.0"' spec/ruby/library/set/sortedset/**/*_spec.rb
This commit is contained in:
Benoit Daloze 2020-12-05 11:40:00 +01:00
parent bb3d705819
commit 9dbb2bfd73
44 changed files with 698 additions and 566 deletions

View file

@ -1,8 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/add'
describe "SortedSet#add" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/add'
describe "SortedSet#add" do
it_behaves_like :sorted_set_add, :add it_behaves_like :sorted_set_add, :add
it "takes only values which responds <=>" do it "takes only values which responds <=>" do
@ -16,9 +18,9 @@ describe "SortedSet#add" do
# Therefore the <=> incompatibility is only noticed on sorting. # Therefore the <=> incompatibility is only noticed on sorting.
-> { SortedSet['1', '2'].add(3).to_a }.should raise_error(ArgumentError) -> { SortedSet['1', '2'].add(3).to_a }.should raise_error(ArgumentError)
end end
end end
describe "SortedSet#add?" do describe "SortedSet#add?" do
before :each do before :each do
@set = SortedSet.new @set = SortedSet.new
end end
@ -36,4 +38,5 @@ describe "SortedSet#add?" do
@set.add?("cat") @set.add?("cat")
@set.add?("cat").should be_nil @set.add?("cat").should be_nil
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/add'
describe "SortedSet#<<" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/add'
describe "SortedSet#<<" do
it_behaves_like :sorted_set_add, :<< it_behaves_like :sorted_set_add, :<<
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/include'
require 'set'
describe "SortedSet#===" do ruby_version_is ""..."3.0" do
require_relative 'shared/include'
require 'set'
describe "SortedSet#===" do
it_behaves_like :sorted_set_include, :=== it_behaves_like :sorted_set_include, :===
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#classify" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#classify" do
before :each do before :each do
@set = SortedSet["one", "two", "three", "four"] @set = SortedSet["one", "two", "three", "four"]
end end
@ -24,4 +26,5 @@ describe "SortedSet#classify" do
classified = @set.classify { |x| x.length } classified = @set.classify { |x| x.length }
classified.should == { 3 => SortedSet["one", "two"], 4 => SortedSet["four"], 5 => SortedSet["three"] } classified.should == { 3 => SortedSet["one", "two"], 4 => SortedSet["four"], 5 => SortedSet["three"] }
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#clear" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#clear" do
before :each do before :each do
@set = SortedSet["one", "two", "three", "four"] @set = SortedSet["one", "two", "three", "four"]
end end
@ -14,4 +16,5 @@ describe "SortedSet#clear" do
it "returns self" do it "returns self" do
@set.clear.should equal(@set) @set.clear.should equal(@set)
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/collect'
describe "SortedSet#collect!" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/collect'
describe "SortedSet#collect!" do
it_behaves_like :sorted_set_collect_bang, :collect! it_behaves_like :sorted_set_collect_bang, :collect!
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet[]" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet[]" do
it "returns a new SortedSet populated with the passed Objects" do it "returns a new SortedSet populated with the passed Objects" do
set = SortedSet[1, 2, 3] set = SortedSet[1, 2, 3]
@ -12,4 +14,5 @@ describe "SortedSet[]" do
set.should include(2) set.should include(2)
set.should include(3) set.should include(3)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#delete_if" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#delete_if" do
before :each do before :each do
@set = SortedSet["one", "two", "three"] @set = SortedSet["one", "two", "three"]
end end
@ -35,4 +37,5 @@ describe "SortedSet#delete_if" do
@set.should_not include("two") @set.should_not include("two")
@set.should include("three") @set.should include("three")
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#delete" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#delete" do
before :each do before :each do
@set = SortedSet["a", "b", "c"] @set = SortedSet["a", "b", "c"]
end end
@ -15,9 +17,9 @@ describe "SortedSet#delete" do
@set.delete("a").should equal(@set) @set.delete("a").should equal(@set)
@set.delete("x").should equal(@set) @set.delete("x").should equal(@set)
end end
end end
describe "SortedSet#delete?" do describe "SortedSet#delete?" do
before :each do before :each do
@set = SortedSet["a", "b", "c"] @set = SortedSet["a", "b", "c"]
end end
@ -34,4 +36,5 @@ describe "SortedSet#delete?" do
it "returns nil when the passed Object is not in self" do it "returns nil when the passed Object is not in self" do
@set.delete?("x").should be_nil @set.delete?("x").should be_nil
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/difference'
describe "SortedSet#difference" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/difference'
describe "SortedSet#difference" do
it_behaves_like :sorted_set_difference, :difference it_behaves_like :sorted_set_difference, :difference
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#divide" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#divide" do
it "divides self into a set of subsets based on the blocks return values" do it "divides self into a set of subsets based on the blocks return values" do
set = SortedSet["one", "two", "three", "four", "five"].divide { |x| x.length } set = SortedSet["one", "two", "three", "four", "five"].divide { |x| x.length }
set.map { |x| x.to_a }.to_a.sort.should == [["five", "four"], ["one", "two"], ["three"]] set.map { |x| x.to_a }.to_a.sort.should == [["five", "four"], ["one", "two"], ["three"]]
@ -18,9 +20,9 @@ describe "SortedSet#divide" do
# it "raises a LocalJumpError when not passed a block" do # it "raises a LocalJumpError when not passed a block" do
# lambda { SortedSet[1].divide }.should raise_error(LocalJumpError) # lambda { SortedSet[1].divide }.should raise_error(LocalJumpError)
# end # end
end end
describe "SortedSet#divide when passed a block with an arity of 2" do describe "SortedSet#divide when passed a block with an arity of 2" do
it "divides self into a set of subsets based on the blocks return values" do it "divides self into a set of subsets based on the blocks return values" do
set = SortedSet[1, 3, 4, 6, 9, 10, 11].divide { |x, y| (x - y).abs == 1 } set = SortedSet[1, 3, 4, 6, 9, 10, 11].divide { |x, y| (x - y).abs == 1 }
set.map { |x| x.to_a }.to_a.sort.should == [[1], [3, 4], [6], [9, 10, 11]] set.map { |x| x.to_a }.to_a.sort.should == [[1], [3, 4], [6], [9, 10, 11]]
@ -31,4 +33,5 @@ describe "SortedSet#divide when passed a block with an arity of 2" do
SortedSet[1, 2].divide { |x, y| ret << [x, y] } SortedSet[1, 2].divide { |x, y| ret << [x, y] }
ret.should == [[1, 1], [1, 2], [2, 1], [2, 2]] ret.should == [[1, 1], [1, 2], [2, 1], [2, 2]]
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#each" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#each" do
before :each do before :each do
@set = SortedSet[1, 2, 3] @set = SortedSet[1, 2, 3]
end end
@ -23,4 +25,5 @@ describe "SortedSet#each" do
enum.each { |x| ret << x } enum.each { |x| ret << x }
ret.sort.should == [1, 2, 3] ret.sort.should == [1, 2, 3]
end end
end
end end

View file

@ -1,10 +1,13 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#empty?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#empty?" do
it "returns true if self is empty" do it "returns true if self is empty" do
SortedSet[].empty?.should be_true SortedSet[].empty?.should be_true
SortedSet[1].empty?.should be_false SortedSet[1].empty?.should be_false
SortedSet[1,2,3].empty?.should be_false SortedSet[1,2,3].empty?.should be_false
end end
end
end end

View file

@ -1,16 +1,19 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#eql?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#eql?" do
it "returns true when the passed argument is a SortedSet and contains the same elements" do it "returns true when the passed argument is a SortedSet and contains the same elements" do
SortedSet[].should eql(SortedSet[]) SortedSet[].should eql(SortedSet[])
SortedSet[1, 2, 3].should eql(SortedSet[1, 2, 3]) SortedSet[1, 2, 3].should eql(SortedSet[1, 2, 3])
SortedSet[1, 2, 3].should eql(SortedSet[3, 2, 1]) SortedSet[1, 2, 3].should eql(SortedSet[3, 2, 1])
# SortedSet["a", :b, ?c].should eql(SortedSet[?c, :b, "a"]) # SortedSet["a", :b, ?c].should eql(SortedSet[?c, :b, "a"])
SortedSet[1, 2, 3].should_not eql(SortedSet[1.0, 2, 3]) SortedSet[1, 2, 3].should_not eql(SortedSet[1.0, 2, 3])
SortedSet[1, 2, 3].should_not eql(SortedSet[2, 3]) SortedSet[1, 2, 3].should_not eql(SortedSet[2, 3])
SortedSet[1, 2, 3].should_not eql(SortedSet[]) SortedSet[1, 2, 3].should_not eql(SortedSet[])
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#==" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#==" do
it "returns true when the passed Object is a SortedSet and self and the Object contain the same elements" do it "returns true when the passed Object is a SortedSet and self and the Object contain the same elements" do
SortedSet[].should == SortedSet[] SortedSet[].should == SortedSet[]
SortedSet[1, 2, 3].should == SortedSet[1, 2, 3] SortedSet[1, 2, 3].should == SortedSet[1, 2, 3]
@ -10,4 +12,5 @@ describe "SortedSet#==" do
SortedSet[1, 2, 3].should_not == SortedSet[1.0, 2, 3] SortedSet[1, 2, 3].should_not == SortedSet[1.0, 2, 3]
SortedSet[1, 2, 3].should_not == [1, 2, 3] SortedSet[1, 2, 3].should_not == [1, 2, 3]
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#^" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#^" do
before :each do before :each do
@set = SortedSet[1, 2, 3, 4] @set = SortedSet[1, 2, 3, 4]
end end
@ -15,4 +17,5 @@ describe "SortedSet#^" do
-> { @set ^ 3 }.should raise_error(ArgumentError) -> { @set ^ 3 }.should raise_error(ArgumentError)
-> { @set ^ Object.new }.should raise_error(ArgumentError) -> { @set ^ Object.new }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,9 +1,12 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/select'
require 'set'
ruby_version_is "2.6" do ruby_version_is ""..."3.0" do
require_relative 'shared/select'
require 'set'
ruby_version_is "2.6" do
describe "SortedSet#filter!" do describe "SortedSet#filter!" do
it_behaves_like :sorted_set_select_bang, :filter! it_behaves_like :sorted_set_select_bang, :filter!
end end
end
end end

View file

@ -1,8 +1,11 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#flatten_merge" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#flatten_merge" do
it "is protected" do it "is protected" do
SortedSet.should have_protected_instance_method("flatten_merge") SortedSet.should have_protected_instance_method("flatten_merge")
end end
end
end end

View file

@ -1,18 +1,20 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
# Note: Flatten make little sens on sorted sets, because SortedSets are not (by default) ruby_version_is ""..."3.0" do
# comparable. For a SortedSet to be both valid and nested, we need to define a comparison operator: require 'set'
module SortedSet_FlattenSpecs
# Note: Flatten make little sens on sorted sets, because SortedSets are not (by default)
# comparable. For a SortedSet to be both valid and nested, we need to define a comparison operator:
module SortedSet_FlattenSpecs
class ComparableSortedSet < SortedSet class ComparableSortedSet < SortedSet
def <=>(other) def <=>(other)
return puts "#{other} vs #{self}" unless other.is_a?(ComparableSortedSet) return puts "#{other} vs #{self}" unless other.is_a?(ComparableSortedSet)
to_a <=> other.to_a to_a <=> other.to_a
end end
end end
end end
describe "SortedSet#flatten" do describe "SortedSet#flatten" do
it "returns a copy of self with each included SortedSet flattened" do it "returns a copy of self with each included SortedSet flattened" do
klass = SortedSet_FlattenSpecs::ComparableSortedSet klass = SortedSet_FlattenSpecs::ComparableSortedSet
set = klass[klass[1,2], klass[3,4], klass[5,6,7], klass[8]] set = klass[klass[1,2], klass[3,4], klass[5,6,7], klass[8]]
@ -21,9 +23,9 @@ describe "SortedSet#flatten" do
flattened_set.should_not equal(set) flattened_set.should_not equal(set)
flattened_set.should == klass[1, 2, 3, 4, 5, 6, 7, 8] flattened_set.should == klass[1, 2, 3, 4, 5, 6, 7, 8]
end end
end end
describe "SortedSet#flatten!" do describe "SortedSet#flatten!" do
it "flattens self" do it "flattens self" do
klass = SortedSet_FlattenSpecs::ComparableSortedSet klass = SortedSet_FlattenSpecs::ComparableSortedSet
set = klass[klass[1,2], klass[3,4], klass[5,6,7], klass[8]] set = klass[klass[1,2], klass[3,4], klass[5,6,7], klass[8]]
@ -41,4 +43,5 @@ describe "SortedSet#flatten!" do
set = SortedSet[1, 2, 3, 4] set = SortedSet[1, 2, 3, 4]
set.flatten!.should be_nil set.flatten!.should be_nil
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#hash" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#hash" do
it "is static" do it "is static" do
SortedSet[].hash.should == SortedSet[].hash SortedSet[].hash.should == SortedSet[].hash
SortedSet[1, 2, 3].hash.should == SortedSet[1, 2, 3].hash SortedSet[1, 2, 3].hash.should == SortedSet[1, 2, 3].hash
@ -10,4 +12,5 @@ describe "SortedSet#hash" do
SortedSet[].hash.should_not == SortedSet[1, 2, 3].hash SortedSet[].hash.should_not == SortedSet[1, 2, 3].hash
SortedSet[1, 2, 3].hash.should_not == SortedSet["a", "b", "c"].hash SortedSet[1, 2, 3].hash.should_not == SortedSet["a", "b", "c"].hash
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/include'
require 'set'
describe "SortedSet#include?" do ruby_version_is ""..."3.0" do
require_relative 'shared/include'
require 'set'
describe "SortedSet#include?" do
it_behaves_like :sorted_set_include, :include? it_behaves_like :sorted_set_include, :include?
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#initialize" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#initialize" do
it "is private" do it "is private" do
SortedSet.should have_private_instance_method("initialize") SortedSet.should have_private_instance_method("initialize")
end end
@ -27,4 +29,5 @@ describe "SortedSet#initialize" do
# Therefore the <=> incompatibility is only noticed on sorting. # Therefore the <=> incompatibility is only noticed on sorting.
-> { SortedSet.new(['00', nil]).to_a }.should raise_error(ArgumentError) -> { SortedSet.new(['00', nil]).to_a }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,10 +1,13 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#inspect" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#inspect" do
it "returns a String representation of self" do it "returns a String representation of self" do
SortedSet[].inspect.should be_kind_of(String) SortedSet[].inspect.should be_kind_of(String)
SortedSet[1, 2, 3].inspect.should be_kind_of(String) SortedSet[1, 2, 3].inspect.should be_kind_of(String)
SortedSet["1", "2", "3"].inspect.should be_kind_of(String) SortedSet["1", "2", "3"].inspect.should be_kind_of(String)
end end
end
end end

View file

@ -1,11 +1,14 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/intersection'
require 'set'
describe "SortedSet#intersection" do ruby_version_is ""..."3.0" do
require_relative 'shared/intersection'
require 'set'
describe "SortedSet#intersection" do
it_behaves_like :sorted_set_intersection, :intersection it_behaves_like :sorted_set_intersection, :intersection
end end
describe "SortedSet#&" do describe "SortedSet#&" do
it_behaves_like :sorted_set_intersection, :& it_behaves_like :sorted_set_intersection, :&
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#keep_if" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#keep_if" do
before :each do before :each do
@set = SortedSet["one", "two", "three"] @set = SortedSet["one", "two", "three"]
end end
@ -28,4 +30,5 @@ describe "SortedSet#keep_if" do
enum.each { |x| x.size != 3 } enum.each { |x| x.size != 3 }
@set.to_a.should == ["three"] @set.to_a.should == ["three"]
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/length'
require 'set'
describe "SortedSet#length" do ruby_version_is ""..."3.0" do
require_relative 'shared/length'
require 'set'
describe "SortedSet#length" do
it_behaves_like :sorted_set_length, :length it_behaves_like :sorted_set_length, :length
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/collect'
describe "SortedSet#map!" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/collect'
describe "SortedSet#map!" do
it_behaves_like :sorted_set_collect_bang, :map! it_behaves_like :sorted_set_collect_bang, :map!
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/include'
require 'set'
describe "SortedSet#member?" do ruby_version_is ""..."3.0" do
require_relative 'shared/include'
require 'set'
describe "SortedSet#member?" do
it_behaves_like :sorted_set_include, :member? it_behaves_like :sorted_set_include, :member?
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#merge" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#merge" do
it "adds the elements of the passed Enumerable to self" do it "adds the elements of the passed Enumerable to self" do
SortedSet["a", "b"].merge(SortedSet["b", "c", "d"]).should == SortedSet["a", "b", "c", "d"] SortedSet["a", "b"].merge(SortedSet["b", "c", "d"]).should == SortedSet["a", "b", "c", "d"]
SortedSet[1, 2].merge([3, 4]).should == SortedSet[1, 2, 3, 4] SortedSet[1, 2].merge([3, 4]).should == SortedSet[1, 2, 3, 4]
@ -16,4 +18,5 @@ describe "SortedSet#merge" do
-> { SortedSet[1, 2].merge(1) }.should raise_error(ArgumentError) -> { SortedSet[1, 2].merge(1) }.should raise_error(ArgumentError)
-> { SortedSet[1, 2].merge(Object.new) }.should raise_error(ArgumentError) -> { SortedSet[1, 2].merge(Object.new) }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
require_relative 'shared/difference'
describe "SortedSet#-" do ruby_version_is ""..."3.0" do
require 'set'
require_relative 'shared/difference'
describe "SortedSet#-" do
it_behaves_like :sorted_set_difference, :- it_behaves_like :sorted_set_difference, :-
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/union'
require 'set'
describe "SortedSet#+" do ruby_version_is ""..."3.0" do
require_relative 'shared/union'
require 'set'
describe "SortedSet#+" do
it_behaves_like :sorted_set_union, :+ it_behaves_like :sorted_set_union, :+
end
end end

View file

@ -1,10 +1,13 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#pretty_print_cycle" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#pretty_print_cycle" do
it "passes the 'pretty print' representation of a self-referencing SortedSet to the pretty print writer" do it "passes the 'pretty print' representation of a self-referencing SortedSet to the pretty print writer" do
pp = mock("PrettyPrint") pp = mock("PrettyPrint")
pp.should_receive(:text).with("#<SortedSet: {...}>") pp.should_receive(:text).with("#<SortedSet: {...}>")
SortedSet[1, 2, 3].pretty_print_cycle(pp) SortedSet[1, 2, 3].pretty_print_cycle(pp)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#pretty_print" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#pretty_print" do
it "passes the 'pretty print' representation of self to the pretty print writer" do it "passes the 'pretty print' representation of self to the pretty print writer" do
pp = mock("PrettyPrint") pp = mock("PrettyPrint")
set = SortedSet[1, 2, 3] set = SortedSet[1, 2, 3]
@ -14,4 +16,5 @@ describe "SortedSet#pretty_print" do
set.pretty_print(pp) set.pretty_print(pp)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#proper_subset?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#proper_subset?" do
before :each do before :each do
@set = SortedSet[1, 2, 3, 4] @set = SortedSet[1, 2, 3, 4]
end end
@ -30,4 +32,5 @@ describe "SortedSet#proper_subset?" do
-> { SortedSet[].proper_subset?("test") }.should raise_error(ArgumentError) -> { SortedSet[].proper_subset?("test") }.should raise_error(ArgumentError)
-> { SortedSet[].proper_subset?(Object.new) }.should raise_error(ArgumentError) -> { SortedSet[].proper_subset?(Object.new) }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#proper_superset?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#proper_superset?" do
before :each do before :each do
@set = SortedSet[1, 2, 3, 4] @set = SortedSet[1, 2, 3, 4]
end end
@ -30,4 +32,5 @@ describe "SortedSet#proper_superset?" do
-> { SortedSet[].proper_superset?("test") }.should raise_error(ArgumentError) -> { SortedSet[].proper_superset?("test") }.should raise_error(ArgumentError)
-> { SortedSet[].proper_superset?(Object.new) }.should raise_error(ArgumentError) -> { SortedSet[].proper_superset?(Object.new) }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#reject!" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#reject!" do
before :each do before :each do
@set = SortedSet["one", "two", "three"] @set = SortedSet["one", "two", "three"]
end end
@ -39,4 +41,5 @@ describe "SortedSet#reject!" do
@set.should_not include("two") @set.should_not include("two")
@set.should include("three") @set.should include("three")
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#replace" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#replace" do
before :each do before :each do
@set = SortedSet["a", "b", "c"] @set = SortedSet["a", "b", "c"]
end end
@ -14,4 +16,5 @@ describe "SortedSet#replace" do
it "accepts any enumerable as other" do it "accepts any enumerable as other" do
@set.replace([1, 2, 3]).should == SortedSet[1, 2, 3] @set.replace([1, 2, 3]).should == SortedSet[1, 2, 3]
end end
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/select'
require 'set'
describe "SortedSet#select!" do ruby_version_is ""..."3.0" do
require_relative 'shared/select'
require 'set'
describe "SortedSet#select!" do
it_behaves_like :sorted_set_select_bang, :select! it_behaves_like :sorted_set_select_bang, :select!
end
end end

View file

@ -1,7 +1,10 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/length'
require 'set'
describe "SortedSet#size" do ruby_version_is ""..."3.0" do
require_relative 'shared/length'
require 'set'
describe "SortedSet#size" do
it_behaves_like :sorted_set_length, :size it_behaves_like :sorted_set_length, :size
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#subset?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#subset?" do
before :each do before :each do
@set = SortedSet[1, 2, 3, 4] @set = SortedSet[1, 2, 3, 4]
end end
@ -30,4 +32,5 @@ describe "SortedSet#subset?" do
-> { SortedSet[].subset?("test") }.should raise_error(ArgumentError) -> { SortedSet[].subset?("test") }.should raise_error(ArgumentError)
-> { SortedSet[].subset?(Object.new) }.should raise_error(ArgumentError) -> { SortedSet[].subset?(Object.new) }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#subtract" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#subtract" do
before :each do before :each do
@set = SortedSet["a", "b", "c"] @set = SortedSet["a", "b", "c"]
end end
@ -14,4 +16,5 @@ describe "SortedSet#subtract" do
it "accepts any enumerable as other" do it "accepts any enumerable as other" do
@set.subtract(["c"]).should == SortedSet["a", "b"] @set.subtract(["c"]).should == SortedSet["a", "b"]
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#superset?" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#superset?" do
before :each do before :each do
@set = SortedSet[1, 2, 3, 4] @set = SortedSet[1, 2, 3, 4]
end end
@ -30,4 +32,5 @@ describe "SortedSet#superset?" do
-> { SortedSet[].superset?("test") }.should raise_error(ArgumentError) -> { SortedSet[].superset?("test") }.should raise_error(ArgumentError)
-> { SortedSet[].superset?(Object.new) }.should raise_error(ArgumentError) -> { SortedSet[].superset?(Object.new) }.should raise_error(ArgumentError)
end end
end
end end

View file

@ -1,7 +1,9 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require 'set'
describe "SortedSet#to_a" do ruby_version_is ""..."3.0" do
require 'set'
describe "SortedSet#to_a" do
it "returns an array containing elements" do it "returns an array containing elements" do
set = SortedSet.new [1, 2, 3] set = SortedSet.new [1, 2, 3]
set.to_a.should == [1, 2, 3] set.to_a.should == [1, 2, 3]
@ -14,4 +16,5 @@ describe "SortedSet#to_a" do
set = SortedSet.new [5, 6, 4, 4] set = SortedSet.new [5, 6, 4, 4]
set.to_a.should == [4, 5, 6] set.to_a.should == [4, 5, 6]
end end
end
end end

View file

@ -1,11 +1,14 @@
require_relative '../../../spec_helper' require_relative '../../../spec_helper'
require_relative 'shared/union'
require 'set'
describe "SortedSet#union" do ruby_version_is ""..."3.0" do
require_relative 'shared/union'
require 'set'
describe "SortedSet#union" do
it_behaves_like :sorted_set_union, :union it_behaves_like :sorted_set_union, :union
end end
describe "SortedSet#|" do describe "SortedSet#|" do
it_behaves_like :sorted_set_union, :| it_behaves_like :sorted_set_union, :|
end
end end