Sha256: 26c6e3a4a50bb07a531162670bd10aad8c291c847a62b3edbc7870723e0eca4e
Contents?: true
Size: 1.77 KB
Versions: 1
Compression:
Stored size: 1.77 KB
Contents
require "spec_helper" module LicenseFinder module CLI describe Dependencies do let(:decisions) { Decisions.new } before do allow(Decisions).to receive(:saved!) { decisions } end describe "add" do it "adds a dependency" do silence_stdout do subject.add("js_dep", "MIT", "1.2.3") end expect(subject.decisions.packages.size).to eq 1 package = subject.decisions.packages.first expect(package.name).to eq "js_dep" expect(package.version).to eq "1.2.3" expect(subject.decisions.licenses_of("js_dep")).to eq [License.find_by_name("MIT")].to_set end it "does not require a version" do silence_stdout do subject.add("js_dep", "MIT") end package = subject.decisions.packages.first expect(package.version).to be_nil end it "has an --approve option to approve the added dependency" do expect(decisions).to receive(:approve).with("js_dep", hash_including(who: "Julian", why: "We really need this")) silence_stdout do Main.start(["dependencies", "add", "--approve", "--who", "Julian", "--why", "We really need this", "js_dep", "MIT", "1.2.3"]) end end end describe "remove" do it "removes a dependency" do silence_stdout do subject.add("js_dep", "MIT") subject.remove("js_dep") end expect(subject.decisions.packages).to be_empty end end describe "list" do it "lists manually added dependencies" do decisions.add_package("custom", nil) expect(capture_stdout { subject.list }).to match /custom/ end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
license_finder-2.0.0.rc2 | spec/lib/license_finder/cli/dependencies_spec.rb |