2019-04-19 15:38:03 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-11-06 07:09:44 +01:00
|
|
|
require "test/cask/dsl/shared_examples/base"
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2018-09-06 08:29:14 +02:00
|
|
|
describe Cask::DSL::Caveats, :cask do
|
2023-04-11 21:02:10 +02:00
|
|
|
subject(:caveats) { described_class.new(cask) }
|
2016-08-18 22:11:42 +03:00
|
|
|
|
2023-04-11 21:02:10 +02:00
|
|
|
let(:cask) { Cask::CaskLoader.load(cask_path("basic-cask")) }
|
|
|
|
let(:dsl) { caveats }
|
2023-04-12 00:05:47 +02:00
|
|
|
|
2018-09-06 08:29:14 +02:00
|
|
|
it_behaves_like Cask::DSL::Base
|
2016-08-18 22:11:42 +03:00
|
|
|
|
|
|
|
# TODO: add tests for Caveats DSL methods
|
2023-04-11 21:02:10 +02:00
|
|
|
|
|
|
|
describe "#kext" do
|
|
|
|
let(:cask) { instance_double(Cask::Cask) }
|
|
|
|
|
|
|
|
it "points to System Preferences on macOS Monterey and earlier" do
|
2023-05-09 02:15:28 +02:00
|
|
|
allow(MacOS).to receive(:version).and_return(MacOSVersion.new("12"))
|
2023-04-11 21:02:10 +02:00
|
|
|
caveats.eval_caveats do
|
|
|
|
kext
|
|
|
|
end
|
|
|
|
expect(caveats.to_s).to include("System Preferences → Security & Privacy → General")
|
|
|
|
end
|
|
|
|
|
|
|
|
it "points to System Settings on macOS Ventura and later" do
|
2023-05-09 02:15:28 +02:00
|
|
|
allow(MacOS).to receive(:version).and_return(MacOSVersion.new("13"))
|
2023-04-11 21:02:10 +02:00
|
|
|
caveats.eval_caveats do
|
|
|
|
kext
|
|
|
|
end
|
|
|
|
expect(caveats.to_s).to include("System Settings → Privacy & Security")
|
|
|
|
end
|
|
|
|
end
|
2016-08-18 22:11:42 +03:00
|
|
|
end
|