spec/owners_cli_spec.rb in owners-0.0.3 vs spec/owners_cli_spec.rb in owners-0.0.4
- old
+ new
@@ -1,22 +1,46 @@
RSpec.describe Owners::CLI do
+ subject { capture { command } }
+
+ let(:command) { described_class.start(args) }
+
+ def capture
+ stdout = $stdout
+ $stdout = StringIO.new
+ yield
+ $stdout.string
+ ensure
+ $stdout = stdout
+ end
+
describe "for" do
- subject { capture { command } }
- let(:command) { described_class.start(args) }
let(:args) { ["for", "example/app/controllers/users_controller.rb"] }
- def capture
- stdout = $stdout
- $stdout = StringIO.new
- yield
- $stdout.string
- ensure
- $stdout = stdout
+ context "without a specified file" do
+ it "parses owners correctly" do
+ expect(subject).to eq("@org/auth\n@org/blog\n")
+ end
end
+ context "with a specified file" do
+ before { args << "--file" << "SOMETHING_ELSE" }
+
+ it "overrides the default OWNERS filename" do
+ begin
+ expect(subject).to eq("")
+ ensure
+ Owners.file = nil
+ end
+ end
+ end
+ end
+
+ describe "for_diff" do
+ let(:args) { ["for_diff", "0757297", "d0e67df"] }
+
context "without a specified file" do
it "parses owners correctly" do
- expect(subject).to eq("@org/auth\n@org/blog\n")
+ expect(subject).to eq("@org/blog\n@whitespace\ndata@example.com\n")
end
end
context "with a specified file" do
before { args << "--file" << "SOMETHING_ELSE" }