diff options
Diffstat (limited to 'Library/Homebrew/test/requirements_spec.rb')
| -rw-r--r-- | Library/Homebrew/test/requirements_spec.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Library/Homebrew/test/requirements_spec.rb b/Library/Homebrew/test/requirements_spec.rb new file mode 100644 index 000000000..3111a7c9c --- /dev/null +++ b/Library/Homebrew/test/requirements_spec.rb @@ -0,0 +1,26 @@ +require "requirements" + +describe Requirements do + describe "#<<" do + it "returns itself" do + expect(subject << Object.new).to be(subject) + end + + it "merges duplicate requirements" do + subject << X11Requirement.new << X11Requirement.new + expect(subject.count).to eq(1) + subject << Requirement.new + expect(subject.count).to eq(2) + end + + it "prefers the larger requirement when merging duplicates" do + subject << X11Requirement.new << X11Requirement.new("x11", %w[2.6]) + expect(subject.to_a).to eq([X11Requirement.new("x11", %w[2.6])]) + end + + it "does not use the smaller requirement when merging duplicates" do + subject << X11Requirement.new("x11", %w[2.6]) << X11Requirement.new + expect(subject.to_a).to eq([X11Requirement.new("x11", %w[2.6])]) + end + end +end |
