You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.9 KiB
74 lines
1.9 KiB
require 'test_helper'
|
|
|
|
describe Cask::Installer do
|
|
describe "install" do
|
|
it "downloads and installs a nice fresh Cask" do
|
|
caffeine = Cask.load('local-caffeine')
|
|
|
|
shutup do
|
|
Cask::Installer.install(caffeine)
|
|
end
|
|
|
|
dest_path = Cask.caskroom/'local-caffeine'/caffeine.version
|
|
dest_path.must_be :directory?
|
|
application = dest_path/'Caffeine.app'
|
|
application.must_be :directory?
|
|
end
|
|
|
|
it "works with dmg-based casks" do
|
|
transmission = Cask.load('local-transmission')
|
|
|
|
shutup do
|
|
Cask::Installer.install(transmission)
|
|
end
|
|
|
|
dest_path = Cask.caskroom/'local-transmission'/transmission.version
|
|
dest_path.must_be :directory?
|
|
application = dest_path/'Transmission.app'
|
|
application.must_be :directory?
|
|
end
|
|
|
|
it "blows up on a bad checksum" do
|
|
bad_checksum = Cask.load('bad-checksum')
|
|
lambda {
|
|
shutup do
|
|
Cask::Installer.install(bad_checksum)
|
|
end
|
|
}.must_raise(ChecksumMismatchError)
|
|
end
|
|
|
|
it "blows up on a missing checksum" do
|
|
missing_checksum = Cask.load('missing-checksum')
|
|
lambda {
|
|
shutup do
|
|
Cask::Installer.install(missing_checksum)
|
|
end
|
|
}.must_raise(ChecksumMissingError)
|
|
end
|
|
|
|
it "installs fine if no_checksum is included in cask" do
|
|
no_checksum = Cask.load('no-checksum')
|
|
shutup do
|
|
Cask::Installer.install(no_checksum)
|
|
end
|
|
no_checksum.must_be :installed?
|
|
end
|
|
end
|
|
|
|
describe "uninstall" do
|
|
it "fully uninstalls a cask" do
|
|
caffeine = Cask.load('local-caffeine')
|
|
|
|
shutup do
|
|
Cask::Installer.install(caffeine)
|
|
Cask::Installer.uninstall(caffeine)
|
|
end
|
|
|
|
dest_path = HOMEBREW_CELLAR/'local-caffeine'/caffeine.version
|
|
application = dest_path/'Caffeine.app'
|
|
|
|
application.wont_be :directory?
|
|
dest_path.wont_be :directory?
|
|
end
|
|
end
|
|
end
|
|
|