summaryrefslogtreecommitdiff
path: root/spec/bundler/other/compatibility_guard_spec.rb
blob: ac05ebd91807cc2cff604e028320166b33486e00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# frozen_string_literal: true

RSpec.describe "bundler compatibility guard" do
  context "when the bundler version is 2+" do
    before { simulate_bundler_version "2.0.a" }

    context "when running on Ruby < 2.3", :ruby => "< 2.3" do
      before { simulate_rubygems_version "2.6.11" }

      it "raises a friendly error" do
        bundle :version
        expect(err).to eq("Bundler 2 requires Ruby 2.3 or later. Either install bundler 1 or update to a supported Ruby version.")
      end
    end

    context "when running on RubyGems < 2.5", :ruby => ">= 2.5" do
      before { simulate_rubygems_version "1.3.6" }

      it "raises a friendly error" do
        bundle :version
        expect(err).to eq("Bundler 2 requires RubyGems 2.5 or later. Either install bundler 1 or update to a supported RubyGems version.")
      end
    end
  end
end