test/language/java_spec: test both Mac and Linux
This commit is contained in:
parent
5ce6537169
commit
d3507d9899
@ -11,6 +11,14 @@ describe Language::Java do
|
||||
end
|
||||
end
|
||||
|
||||
let(:expected_home) do
|
||||
if OS.mac?
|
||||
f.opt_libexec/"openjdk.jdk/Contents/Home"
|
||||
else
|
||||
f.opt_libexec
|
||||
end
|
||||
end
|
||||
|
||||
before do
|
||||
allow(Formula).to receive(:[]).and_return(f)
|
||||
allow(f).to receive(:any_version_installed?).and_return(true)
|
||||
@ -18,48 +26,38 @@ describe Language::Java do
|
||||
end
|
||||
|
||||
describe "::java_home" do
|
||||
it "returns valid JAVA_HOME if version is specified", :needs_macos do
|
||||
it "returns valid JAVA_HOME if version is specified" do
|
||||
java_home = described_class.java_home("1.8+")
|
||||
expect(java_home).to eql(f.opt_libexec/"openjdk.jdk/Contents/Home")
|
||||
expect(java_home).to eql(expected_home)
|
||||
end
|
||||
|
||||
it "returns valid JAVA_HOME if version is not specified", :needs_macos do
|
||||
it "returns valid JAVA_HOME if version is not specified" do
|
||||
java_home = described_class.java_home
|
||||
expect(java_home).to eql(f.opt_libexec/"openjdk.jdk/Contents/Home")
|
||||
end
|
||||
|
||||
it "returns valid JAVA_HOME if version is specified", :needs_linux do
|
||||
java_home = described_class.java_home("1.8+")
|
||||
expect(java_home).to eql(f.opt_libexec)
|
||||
end
|
||||
|
||||
it "returns valid JAVA_HOME if version is not specified", :needs_linux do
|
||||
java_home = described_class.java_home
|
||||
expect(java_home).to eql(f.opt_libexec)
|
||||
expect(java_home).to eql(expected_home)
|
||||
end
|
||||
end
|
||||
|
||||
describe "::java_home_env" do
|
||||
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 include(f.opt_libexec.to_s)
|
||||
expect(java_home_env[:JAVA_HOME]).to eql(expected_home.to_s)
|
||||
end
|
||||
|
||||
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 include(f.opt_libexec.to_s)
|
||||
expect(java_home_env[:JAVA_HOME]).to eql(expected_home.to_s)
|
||||
end
|
||||
end
|
||||
|
||||
describe "::overridable_java_home_env" do
|
||||
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 include(f.opt_libexec.to_s)
|
||||
expect(overridable_java_home_env[:JAVA_HOME]).to eql("${JAVA_HOME:-#{expected_home}}")
|
||||
end
|
||||
|
||||
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 include(f.opt_libexec.to_s)
|
||||
expect(overridable_java_home_env[:JAVA_HOME]).to eql("${JAVA_HOME:-#{expected_home}}")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user