aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test/cask/cli
diff options
context:
space:
mode:
authorL. E. Segovia2017-11-24 01:21:30 +0000
committerL. E. Segovia2017-11-24 01:21:30 +0000
commite0be066f8b5f4ccb313ddcf6bba1d6fed3549b69 (patch)
tree6a3e0f0c6e3b0763cc4836e1ad1e18f6b291cf3f /Library/Homebrew/test/cask/cli
parent7ee98eb421380afd45144ef8df1656cb22d4bb66 (diff)
downloadbrew-e0be066f8b5f4ccb313ddcf6bba1d6fed3549b69.tar.bz2
Load Casks only once (and fix style issues)
Diffstat (limited to 'Library/Homebrew/test/cask/cli')
-rw-r--r--Library/Homebrew/test/cask/cli/upgrade_spec.rb186
1 files changed, 109 insertions, 77 deletions
diff --git a/Library/Homebrew/test/cask/cli/upgrade_spec.rb b/Library/Homebrew/test/cask/cli/upgrade_spec.rb
index fa2a2361c..0f15c2d5b 100644
--- a/Library/Homebrew/test/cask/cli/upgrade_spec.rb
+++ b/Library/Homebrew/test/cask/cli/upgrade_spec.rb
@@ -38,64 +38,78 @@ describe Hbc::CLI::Upgrade, :cask do
include_context "Proper Casks"
it "and updates all the installed Casks when no token is provided" do
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.2")
+ local_caffeine = Hbc::CaskLoader.load("local-caffeine")
+ local_caffeine_route = Hbc.appdir.join("Caffeine.app")
+ local_transmission = Hbc::CaskLoader.load("local-transmission")
+ local_transmission_route = Hbc.appdir.join("Transmission.app")
- expect(Hbc::CaskLoader.load("local-transmission")).to be_installed
- expect(Hbc.appdir.join("Transmission.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.60")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.2")
+
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.60")
described_class.run
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.3")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.3")
- expect(Hbc::CaskLoader.load("local-transmission")).to be_installed
- expect(Hbc.appdir.join("Transmission.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.61")
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.61")
end
it "and updates only the Casks specified in the command line" do
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.2")
+ local_caffeine = Hbc::CaskLoader.load("local-caffeine")
+ local_caffeine_route = Hbc.appdir.join("Caffeine.app")
+ local_transmission = Hbc::CaskLoader.load("local-transmission")
+ local_transmission_route = Hbc.appdir.join("Transmission.app")
+
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.2")
- expect(Hbc::CaskLoader.load("local-transmission")).to be_installed
- expect(Hbc.appdir.join("Transmission.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.60")
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.60")
described_class.run("local-caffeine")
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.3")
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to_not include("1.2.2")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.3")
- expect(Hbc::CaskLoader.load("local-transmission")).to be_installed
- expect(Hbc.appdir.join("Transmission.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.60")
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.60")
end
it 'updates "auto_updates" and "latest" Casks when their tokens are provided in the command line' do
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.2")
+ local_caffeine = Hbc::CaskLoader.load("local-caffeine")
+ local_caffeine_route = Hbc.appdir.join("Caffeine.app")
+ auto_updates = Hbc::CaskLoader.load("auto-updates")
+ auto_updates_path = Hbc.appdir.join("MyFancyApp.app")
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.57")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.2")
+
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.57")
described_class.run("local-caffeine", "auto-updates")
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.3")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.3")
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.61")
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.61")
end
end
@@ -103,47 +117,59 @@ describe Hbc::CLI::Upgrade, :cask do
include_context "Proper Casks"
it 'includes the Casks with "auto_updates true" or "version latest" with --greedy' do
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.57")
+ local_caffeine = Hbc::CaskLoader.load("local-caffeine")
+ local_caffeine_route = Hbc.appdir.join("Caffeine.app")
+ auto_updates = Hbc::CaskLoader.load("auto-updates")
+ auto_updates_path = Hbc.appdir.join("MyFancyApp.app")
+ local_transmission = Hbc::CaskLoader.load("local-transmission")
+ local_transmission_route = Hbc.appdir.join("Transmission.app")
+
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.2")
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.2")
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.57")
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.60")
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.60")
described_class.run("--greedy")
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.61")
+ expect(local_caffeine).to be_installed
+ expect(local_caffeine_route).to be_a_directory
+ expect(local_caffeine.versions).to include("1.2.3")
- expect(Hbc::CaskLoader.load("local-caffeine")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-caffeine").versions).to include("1.2.3")
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.61")
- expect(Hbc::CaskLoader.load("local-transmission")).to be_installed
- expect(Hbc.appdir.join("Transmission.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("local-transmission").versions).to include("2.61")
+ expect(local_transmission).to be_installed
+ expect(local_transmission_route).to be_a_directory
+ expect(local_transmission.versions).to include("2.61")
end
it 'does not include the Casks with "auto_updates true" when the version did not change' do
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.57")
+ auto_updates = Hbc::CaskLoader.load("auto-updates")
+ auto_updates_path = Hbc.appdir.join("MyFancyApp.app")
+
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.57")
described_class.run("auto-updates", "--greedy")
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.61")
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.61")
described_class.run("auto-updates", "--greedy")
- expect(Hbc::CaskLoader.load("auto-updates")).to be_installed
- expect(Hbc.appdir.join("MyFancyApp.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("auto-updates").versions).to include("2.61")
+ expect(auto_updates).to be_installed
+ expect(auto_updates_path).to be_a_directory
+ expect(auto_updates.versions).to include("2.61")
end
end
@@ -155,33 +181,39 @@ describe Hbc::CLI::Upgrade, :cask do
EOS
it "restores the old Cask if the upgrade failed" do
- expect(Hbc::CaskLoader.load("will-fail-if-upgraded")).to be_installed
- expect(Hbc.appdir.join("container")).to be_a_file
- expect(Hbc::CaskLoader.load("will-fail-if-upgraded").versions).to include("1.2.2")
+ will_fail_if_upgraded = Hbc::CaskLoader.load("will-fail-if-upgraded")
+ will_fail_if_upgraded_path = Hbc.appdir.join("container")
+
+ expect(will_fail_if_upgraded).to be_installed
+ expect(will_fail_if_upgraded_path).to be_a_file
+ expect(will_fail_if_upgraded.versions).to include("1.2.2")
expect {
described_class.run("will-fail-if-upgraded")
}.to raise_error(Hbc::CaskError).and output(output_reverted).to_stderr
- expect(Hbc::CaskLoader.load("will-fail-if-upgraded")).to be_installed
- expect(Hbc.appdir.join("container")).to be_a_file
- expect(Hbc::CaskLoader.load("will-fail-if-upgraded").versions).to include("1.2.2")
- expect(Hbc::CaskLoader.load("will-fail-if-upgraded").staged_path).to_not exist
+ expect(will_fail_if_upgraded).to be_installed
+ expect(will_fail_if_upgraded_path).to be_a_file
+ expect(will_fail_if_upgraded.versions).to include("1.2.2")
+ expect(will_fail_if_upgraded.staged_path).to_not exist
end
it "by not restoring the old Cask if the upgrade failed pre-install" do
- expect(Hbc::CaskLoader.load("bad-checksum")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("bad-checksum").versions).to include("1.2.2")
+ bad_checksum = Hbc::CaskLoader.load("bad-checksum")
+ bad_checksum_path = Hbc.appdir.join("Caffeine.app")
+
+ expect(bad_checksum).to be_installed
+ expect(bad_checksum_path).to be_a_directory
+ expect(bad_checksum.versions).to include("1.2.2")
expect {
described_class.run("bad-checksum")
- }.to raise_error(Hbc::CaskSha256MismatchError).and (not_to_output output_reverted).to_stderr
+ }.to raise_error(Hbc::CaskSha256MismatchError).and(not_to_output(output_reverted).to_stderr)
- expect(Hbc::CaskLoader.load("bad-checksum")).to be_installed
- expect(Hbc.appdir.join("Caffeine.app")).to be_a_directory
- expect(Hbc::CaskLoader.load("bad-checksum").versions).to include("1.2.2")
- expect(Hbc::CaskLoader.load("bad-checksum").staged_path).to_not exist
+ expect(bad_checksum).to be_installed
+ expect(bad_checksum_path).to be_a_directory
+ expect(bad_checksum.versions).to include("1.2.2")
+ expect(bad_checksum.staged_path).to_not exist
end
end
end