blob: 5a4b29c6f5c3604ae001b74a8b0a6afbd08a58f1 (
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
describe Hbc::CLI::Cat, :cask do
describe "given a basic Cask" do
let(:basic_cask_content) {
<<-EOS.undent
cask 'basic-cask' do
version '1.2.3'
sha256 '8c62a2b791cf5f0da6066a0a4b6e85f62949cd60975da062df44adf887f4370b'
url 'http://example.com/TestCask.dmg'
homepage 'http://example.com/'
app 'TestCask.app'
end
EOS
}
it "displays the Cask file content about the specified Cask" do
expect {
Hbc::CLI::Cat.run("basic-cask")
}.to output(basic_cask_content).to_stdout
end
it "can display multiple Casks" do
expect {
Hbc::CLI::Cat.run("basic-cask", "basic-cask")
}.to output(basic_cask_content * 2).to_stdout
end
it "fails when option is unknown" do
expect {
Hbc::CLI::Cat.run("--notavalidoption", "basic-cask")
}.to raise_error(/invalid option/)
end
end
it "raises an exception when the Cask does not exist" do
expect { Hbc::CLI::Cat.run("notacask") }
.to raise_error(Hbc::CaskUnavailableError, /is unavailable/)
end
describe "when no Cask is specified" do
it "raises an exception" do
expect {
Hbc::CLI::Cat.run
}.to raise_error(Hbc::CaskUnspecifiedError)
end
end
describe "when no Cask is specified, but an invalid option" do
it "raises an exception" do
expect {
Hbc::CLI::Cat.run("--notavalidoption")
}.to raise_error(/invalid option/)
end
end
end
|