(FM-7795) Cleanup java tests (#350)

* Add idempotent_apply function

* Remove unsupported OS specific code

* Remove outdated comments

* Improve unit test coverage

* Fix typo
This commit is contained in:
Eimhin Laverty
2019-02-26 12:22:27 +00:00
committed by Helen
parent 5509042cd1
commit 7cd34dd291
6 changed files with 54 additions and 126 deletions

View File

@@ -1,17 +1,25 @@
require 'spec_helper'
describe 'java_libjvm_path' do
let(:java_default_home) { '/usr/lib/jvm/java-8-openjdk-amd64' }
before(:each) do
Facter.clear
allow(Facter.fact(:kernel)).to receive(:value).once.and_return('Linux')
java_default_home = '/usr/lib/jvm/java-8-openjdk-amd64'
allow(Facter.fact(:java_default_home)).to receive(:value).once.and_return(java_default_home)
allow(Dir).to receive(:glob).with("#{java_default_home}/jre/lib/**/libjvm.so").and_return(['/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so'])
end
context 'when on Linux, return libjvm path' do
context 'when libjvm exists' do
it do
allow(Dir).to receive(:glob).with("#{java_default_home}/jre/lib/**/libjvm.so").and_return(['/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/libjvm.so'])
expect(Facter.value(:java_libjvm_path)).to eql '/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server'
end
end
context 'when libjvm does not exist' do
it do
allow(Dir).to receive(:glob).with("#{java_default_home}/jre/lib/**/libjvm.so").and_return([])
expect(Facter.value(:java_libjvm_path)).to be nil
end
end
end