mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-15 19:56:59 +08:00
50 lines
1.5 KiB
Ruby
50 lines
1.5 KiB
Ruby
require "requirements/language_module_requirement"
|
|
|
|
describe LanguageModuleRequirement do
|
|
specify "unique dependencies are not equal" do
|
|
x = described_class.new(:node, "less")
|
|
y = described_class.new(:node, "coffee-script")
|
|
expect(x).not_to eq(y)
|
|
expect(x.hash).not_to eq(y.hash)
|
|
end
|
|
|
|
context "when module and import name differ" do
|
|
subject { described_class.new(:python, mod_name, import_name) }
|
|
let(:mod_name) { "foo" }
|
|
let(:import_name) { "bar" }
|
|
|
|
its(:message) { is_expected.to include(mod_name) }
|
|
its(:the_test) { is_expected.to include("import #{import_name}") }
|
|
end
|
|
|
|
context "when the language is Perl" do
|
|
it "does not satisfy invalid dependencies" do
|
|
expect(described_class.new(:perl, "notapackage")).not_to be_satisfied
|
|
end
|
|
|
|
it "satisfies valid dependencies" do
|
|
expect(described_class.new(:perl, "Env")).to be_satisfied
|
|
end
|
|
end
|
|
|
|
context "when the language is Python", :needs_python do
|
|
it "does not satisfy invalid dependencies" do
|
|
expect(described_class.new(:python, "notapackage")).not_to be_satisfied
|
|
end
|
|
|
|
it "satisfies valid dependencies" do
|
|
expect(described_class.new(:python, "datetime")).to be_satisfied
|
|
end
|
|
end
|
|
|
|
context "when the language is Ruby" do
|
|
it "does not satisfy invalid dependencies" do
|
|
expect(described_class.new(:ruby, "notapackage")).not_to be_satisfied
|
|
end
|
|
|
|
it "satisfies valid dependencies" do
|
|
expect(described_class.new(:ruby, "date")).to be_satisfied
|
|
end
|
|
end
|
|
end
|