summaryrefslogtreecommitdiff
path: root/spec/bundler/bundler/ui_spec.rb
blob: 6ef8729277ac6f13588112b45b9c3f6ec2eee272 (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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# frozen_string_literal: true

RSpec.describe Bundler::UI do
  describe Bundler::UI::Silent do
    it "has the same instance methods as Shell", :ruby => ">= 1.9" do
      shell = Bundler::UI::Shell
      methods = proc do |cls|
        cls.instance_methods.map do |i|
          m = shell.instance_method(i)
          [i, m.parameters]
        end.sort_by(&:first)
      end
      expect(methods.call(described_class)).to eq(methods.call(shell))
    end

    it "has the same instance class as Shell", :ruby => ">= 1.9" do
      shell = Bundler::UI::Shell
      methods = proc do |cls|
        cls.methods.map do |i|
          m = shell.method(i)
          [i, m.parameters]
        end.sort_by(&:first)
      end
      expect(methods.call(described_class)).to eq(methods.call(shell))
    end
  end

  describe Bundler::UI::Shell do
    let(:options) { {} }
    subject { described_class.new(options) }
    describe "debug?" do
      it "returns a boolean" do
        subject.level = :debug
        expect(subject.debug?).to eq(true)

        subject.level = :error
        expect(subject.debug?).to eq(false)
      end
    end
  end
end