2017-02-21 05:54:16 +01:00
|
|
|
require "version"
|
|
|
|
require "os/mac/version"
|
|
|
|
|
|
|
|
describe OS::Mac::Version do
|
2019-01-26 17:13:14 +00:00
|
|
|
subject { described_class.new("10.10") }
|
2017-02-21 05:54:16 +01:00
|
|
|
|
|
|
|
specify "comparison with Symbol" do
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(subject).to be > :mavericks
|
|
|
|
expect(subject).to be == :yosemite
|
|
|
|
expect(subject).to be === :yosemite # rubocop:disable Style/CaseEquality
|
|
|
|
expect(subject).to be < :el_capitan
|
2017-02-21 05:54:16 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
specify "comparison with Fixnum" do
|
|
|
|
expect(subject).to be > 10
|
|
|
|
expect(subject).to be < 11
|
|
|
|
end
|
|
|
|
|
|
|
|
specify "comparison with Float" do
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(subject).to be > 10.9
|
|
|
|
expect(subject).to be < 10.11
|
2017-02-21 05:54:16 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
specify "comparison with String" do
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(subject).to be > "10.9"
|
|
|
|
expect(subject).to be == "10.10"
|
|
|
|
expect(subject).to be === "10.10" # rubocop:disable Style/CaseEquality
|
|
|
|
expect(subject).to be < "10.11"
|
2017-02-21 05:54:16 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
specify "comparison with Version" do
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(subject).to be > Version.create("10.9")
|
|
|
|
expect(subject).to be == Version.create("10.10")
|
|
|
|
expect(subject).to be === Version.create("10.10") # rubocop:disable Style/CaseEquality
|
|
|
|
expect(subject).to be < Version.create("10.11")
|
2017-02-21 05:54:16 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
specify "#from_symbol" do
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(described_class.from_symbol(:yosemite)).to eq(subject)
|
2017-02-21 05:54:16 +01:00
|
|
|
expect { described_class.from_symbol(:foo) }
|
|
|
|
.to raise_error(ArgumentError)
|
|
|
|
end
|
|
|
|
|
|
|
|
specify "#pretty_name" do
|
|
|
|
expect(described_class.new("10.11").pretty_name).to eq("El Capitan")
|
2019-01-26 17:13:14 +00:00
|
|
|
expect(described_class.new("10.14").pretty_name).to eq("Mojave")
|
2017-02-21 05:54:16 +01:00
|
|
|
expect(described_class.new("10.10").pretty_name).to eq("Yosemite")
|
|
|
|
end
|
2019-01-28 19:31:21 +00:00
|
|
|
|
|
|
|
specify "#requires_nehalem_cpu?" do
|
|
|
|
expect(described_class.new("10.14").requires_nehalem_cpu?).to be true
|
|
|
|
expect(described_class.new("10.12").requires_nehalem_cpu?).to be false
|
|
|
|
end
|
2017-02-21 05:54:16 +01:00
|
|
|
end
|