62 lines
1.8 KiB
Ruby
Raw Normal View History

# frozen_string_literal: true
2017-06-23 06:26:23 +05:30
require "language/java"
describe Language::Java do
2021-01-25 09:18:10 +00:00
let(:f) do
formula("openjdk") do
url "openjdk"
version "15.0.1"
end
end
let(:expected_home) do
if OS.mac?
f.opt_libexec/"openjdk.jdk/Contents/Home"
else
f.opt_libexec
end
end
2021-01-25 09:18:10 +00:00
before do
allow(Formula).to receive(:[]).and_return(f)
allow(f).to receive_messages(any_version_installed?: true, any_installed_version: f.version)
2021-01-25 09:18:10 +00:00
end
describe "::java_home" do
it "returns valid JAVA_HOME if version is specified" do
2021-01-25 09:18:10 +00:00
java_home = described_class.java_home("1.8+")
expect(java_home).to eql(expected_home)
end
it "returns valid JAVA_HOME if version is not specified" do
java_home = described_class.java_home
expect(java_home).to eql(expected_home)
end
end
2017-06-25 06:27:53 +05:30
describe "::java_home_env" do
2021-01-25 09:18:10 +00:00
it "returns java_home path if version specified" do
java_home_env = described_class.java_home_env("1.8+")
expect(java_home_env[:JAVA_HOME]).to eql(expected_home.to_s)
2017-06-23 06:26:23 +05:30
end
2021-01-25 09:18:10 +00:00
it "returns java_home path if version is not specified" do
java_home_env = described_class.java_home_env
expect(java_home_env[:JAVA_HOME]).to eql(expected_home.to_s)
2017-06-23 06:26:23 +05:30
end
end
2017-06-25 06:27:53 +05:30
describe "::overridable_java_home_env" do
2021-01-25 09:18:10 +00:00
it "returns java_home path if version specified" do
overridable_java_home_env = described_class.overridable_java_home_env("1.8+")
expect(overridable_java_home_env[:JAVA_HOME]).to eql("${JAVA_HOME:-#{expected_home}}")
2017-06-23 06:26:23 +05:30
end
2021-01-25 09:18:10 +00:00
it "returns java_home path if version is not specified" do
overridable_java_home_env = described_class.overridable_java_home_env
expect(overridable_java_home_env[:JAVA_HOME]).to eql("${JAVA_HOME:-#{expected_home}}")
2017-06-23 06:26:23 +05:30
end
end
end