From 0e1b7ce8eae046526bffb34ff7ec9ed756fcb56c Mon Sep 17 00:00:00 2001 From: JCount Date: Sat, 1 Apr 2017 16:29:26 -0400 Subject: [PATCH 1/5] gpg_spec: make test compatible with gnupg 2.1.x maintain existing compatibility with gnupg 2.0.x --- Library/Homebrew/test/gpg_spec.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/test/gpg_spec.rb b/Library/Homebrew/test/gpg_spec.rb index aa00d79f51..bca807f3bf 100644 --- a/Library/Homebrew/test/gpg_spec.rb +++ b/Library/Homebrew/test/gpg_spec.rb @@ -13,7 +13,12 @@ describe Gpg do shutup do subject.create_test_key(dir) end - expect(dir/".gnupg/secring.gpg").to exist + + begin + expect(dir/".gnupg/pubring.kbx").to be_file + rescue RSpec::Expectations::ExpectationNotMetError + expect(dir/".gnupg/secring.gpg").to be_file + end end end end From 239b873fb25f1d86374ff1a38cf0b6c9e69e6e4d Mon Sep 17 00:00:00 2001 From: JCount Date: Sat, 1 Apr 2017 16:32:36 -0400 Subject: [PATCH 2/5] gpg2_requirement_spec: switch test to gnupg 2.1.x --- Library/Homebrew/test/gpg2_requirement_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Library/Homebrew/test/gpg2_requirement_spec.rb b/Library/Homebrew/test/gpg2_requirement_spec.rb index d7767abd33..a5501c84e4 100644 --- a/Library/Homebrew/test/gpg2_requirement_spec.rb +++ b/Library/Homebrew/test/gpg2_requirement_spec.rb @@ -9,7 +9,7 @@ describe GPG2Requirement do ENV["PATH"] = dir/"bin" (dir/"bin/gpg").write <<-EOS.undent #!/bin/bash - echo 2.0.30 + echo 2.1.20 EOS FileUtils.chmod 0755, dir/"bin/gpg" From 14a7ef591b68ebb4d901c2f2a9a1553be0e7af03 Mon Sep 17 00:00:00 2001 From: JCount Date: Tue, 4 Apr 2017 17:25:54 -0400 Subject: [PATCH 3/5] gpg_spec: switch structure to if/else instead of rescue --- Library/Homebrew/test/gpg_spec.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/test/gpg_spec.rb b/Library/Homebrew/test/gpg_spec.rb index bca807f3bf..f0c8f0a3f4 100644 --- a/Library/Homebrew/test/gpg_spec.rb +++ b/Library/Homebrew/test/gpg_spec.rb @@ -12,11 +12,13 @@ describe Gpg do shutup do subject.create_test_key(dir) + gpg = subject::GPG_EXECUTABLE + @version = Utils.popen_read(gpg, "--version")[/\d\.\d/, 0] end - begin + if @version.to_s.start_with?("2.1") expect(dir/".gnupg/pubring.kbx").to be_file - rescue RSpec::Expectations::ExpectationNotMetError + else expect(dir/".gnupg/secring.gpg").to be_file end end From 889d61660a8647451495f2b97daae09b2f0d57e3 Mon Sep 17 00:00:00 2001 From: JCount Date: Fri, 7 Apr 2017 16:25:21 -0400 Subject: [PATCH 4/5] gpg: add version method to retrieve current version in path --- Library/Homebrew/gpg.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Library/Homebrew/gpg.rb b/Library/Homebrew/gpg.rb index 7775420558..cb9e367dfc 100644 --- a/Library/Homebrew/gpg.rb +++ b/Library/Homebrew/gpg.rb @@ -6,6 +6,7 @@ class Gpg gpg_short_version = Utils.popen_read(gpg, "--version")[/\d\.\d/, 0] next unless gpg_short_version gpg_version = Version.create(gpg_short_version.to_s) + @version = gpg_version gpg_version == Version.create("2.0") || gpg_version == Version.create("2.1") end @@ -25,6 +26,10 @@ class Gpg File.executable?(GPG_EXECUTABLE.to_s) end + def self.version + @version if available? + end + def self.create_test_key(path) odie "No GPG present to test against!" unless available? From 43b64bfed1d22ca7797e9419eed06570d47d8f26 Mon Sep 17 00:00:00 2001 From: JCount Date: Fri, 7 Apr 2017 16:26:19 -0400 Subject: [PATCH 5/5] gpg_spec: use new version method to directly compare version objects --- Library/Homebrew/test/gpg_spec.rb | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Library/Homebrew/test/gpg_spec.rb b/Library/Homebrew/test/gpg_spec.rb index f0c8f0a3f4..160e55379e 100644 --- a/Library/Homebrew/test/gpg_spec.rb +++ b/Library/Homebrew/test/gpg_spec.rb @@ -12,14 +12,12 @@ describe Gpg do shutup do subject.create_test_key(dir) - gpg = subject::GPG_EXECUTABLE - @version = Utils.popen_read(gpg, "--version")[/\d\.\d/, 0] end - if @version.to_s.start_with?("2.1") - expect(dir/".gnupg/pubring.kbx").to be_file + if subject.version == Version.create("2.0") + expect(dir/".gnupg/secring.gpg").to be_a_file else - expect(dir/".gnupg/secring.gpg").to be_file + expect(dir/".gnupg/pubring.kbx").to be_a_file end end end