diff options
-rw-r--r-- | lib/bundler/cli/outdated.rb | 4 | ||||
-rw-r--r-- | spec/bundler/bundler/cli_spec.rb | 46 |
2 files changed, 47 insertions, 3 deletions
diff --git a/lib/bundler/cli/outdated.rb b/lib/bundler/cli/outdated.rb index e9f93fec39..12c3384938 100644 --- a/lib/bundler/cli/outdated.rb +++ b/lib/bundler/cli/outdated.rb @@ -111,9 +111,7 @@ module Bundler end.compact if options[:parseable] - relevant_outdated_gems.each do |gems| - print_gems(gems) - end + print_gems(relevant_outdated_gems) else print_gems_table(relevant_outdated_gems) end diff --git a/spec/bundler/bundler/cli_spec.rb b/spec/bundler/bundler/cli_spec.rb index 28ade90138..b752cd7e70 100644 --- a/spec/bundler/bundler/cli_spec.rb +++ b/spec/bundler/bundler/cli_spec.rb @@ -129,6 +129,52 @@ RSpec.describe "bundle executable" do end end + describe "bundle outdated" do + let(:run_command) do + bundle "install" + + bundle "outdated #{flags}", :raise_on_error => false + end + + before do + gemfile <<-G + source "#{file_uri_for(gem_repo1)}" + gem "rack", '0.9.1' + G + end + + context "with --groups flag" do + let(:flags) { "--groups" } + + it "prints a message when there are outdated gems" do + run_command + + expect(out).to include("Gem Current Latest Requested Groups") + expect(out).to include("rack 0.9.1 1.0.0 = 0.9.1 default") + end + end + + context "with --parseable" do + let(:flags) { "--parseable" } + + it "prints a message when there are outdated gems" do + run_command + + expect(out).to include("rack (newest 1.0.0, installed 0.9.1, requested = 0.9.1)") + end + end + + context "with --groups and --parseable" do + let(:flags) { "--groups --parseable" } + + it "prints a simplified message when there are outdated gems" do + run_command + + expect(out).to include("rack (newest 1.0.0, installed 0.9.1, requested = 0.9.1)") + end + end + end + describe "printing the outdated warning" do shared_examples_for "no warning" do it "prints no warning" do |