
Not quite a mass replacement as I've used OS X and Mac OS X where describing specific older versions and added compatibility methods for things in the DSL.
50 lines
1.6 KiB
Ruby
50 lines
1.6 KiB
Ruby
require "testing_env"
|
|
require "fileutils"
|
|
require "pathname"
|
|
require "diagnostic"
|
|
|
|
class OSMacDiagnosticChecksTest < Homebrew::TestCase
|
|
def setup
|
|
@env = ENV.to_hash
|
|
@checks = Homebrew::Diagnostic::Checks.new
|
|
end
|
|
|
|
def teardown
|
|
ENV.replace(@env)
|
|
end
|
|
|
|
def test_check_for_other_package_managers
|
|
MacOS.stubs(:macports_or_fink).returns ["fink"]
|
|
assert_match "You have MacPorts or Fink installed:",
|
|
@checks.check_for_other_package_managers
|
|
end
|
|
|
|
def test_check_for_unsupported_macos
|
|
ARGV.stubs(:homebrew_developer?).returns false
|
|
OS::Mac.stubs(:prerelease?).returns true
|
|
assert_match "We do not provide support for this pre-release version.",
|
|
@checks.check_for_unsupported_macos
|
|
end
|
|
|
|
def test_check_for_unsupported_curl_vars
|
|
MacOS.stubs(:version).returns OS::Mac::Version.new("10.10")
|
|
ENV["SSL_CERT_DIR"] = "/some/path"
|
|
|
|
assert_match "SSL_CERT_DIR support was removed from Apple's curl.",
|
|
@checks.check_for_unsupported_curl_vars
|
|
end
|
|
|
|
def test_check_for_beta_xquartz
|
|
MacOS::XQuartz.stubs(:version).returns("2.7.10_beta2")
|
|
assert_match "The following beta release of XQuartz is installed: 2.7.10_beta2", @checks.check_for_beta_xquartz
|
|
end
|
|
|
|
def test_check_xcode_8_without_clt_on_el_capitan
|
|
MacOS.stubs(:version).returns OS::Mac::Version.new("10.11")
|
|
MacOS::Xcode.stubs(:installed?).returns true
|
|
MacOS::Xcode.stubs(:version).returns "8.0"
|
|
MacOS::Xcode.stubs(:without_clt?).returns true
|
|
assert_match "You have Xcode 8 installed without the CLT", @checks.check_xcode_8_without_clt_on_el_capitan
|
|
end
|
|
end
|