aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test/checksum_verification_spec.rb
blob: 247f08688fbbd29bc14bcc7662624605d3dc0fb9 (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
require "formula"

describe Formula do
  def formula(&block)
    super do
      url "file://#{TEST_FIXTURE_DIR}/tarballs/testball-0.1.tbz"
      instance_eval(&block)
    end
  end

  describe "#brew" do
    it "does not raise an error when the checksum matches" do
      expect {
        f = formula do
          sha256 TESTBALL_SHA256
        end

        f.brew {}
      }.not_to raise_error
    end

    it "raises an error when the checksum doesn't match" do
      expect {
        f = formula do
          sha256 "dcbf5f44743b74add648c7e35e414076632fa3b24463d68d1f6afc5be77024f8"
        end

        f.brew {}
      }.to raise_error(ChecksumMismatchError)
    end
  end
end