This commit will add code cleanup as corrected and alerted by rubocop. It also adds rules to execute rubocop on Travis.
55 lines
1.6 KiB
Ruby
55 lines
1.6 KiB
Ruby
require 'spec_helper'
|
|
|
|
java_7_path = '/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java'
|
|
java_7_home = '/usr/lib/jvm/java-7-openjdk-amd64'
|
|
java_8_path = '/usr/lib/jvm/oracle-java8-jre-amd64/bin/java'
|
|
java_8_home = '/usr/lib/jvm/oracle-java8-jre-amd64'
|
|
|
|
def unlink_and_delete(filename)
|
|
if File.symlink?(filename)
|
|
File.unlink(filename)
|
|
end
|
|
return unless File.exist?(filename)
|
|
File.delete(filename)
|
|
end
|
|
|
|
def symlink_and_test(symlink_path, java_home)
|
|
File.symlink(symlink_path, './java_test')
|
|
Facter::Util::Resolution.expects(:which).with('java').returns('./java_test')
|
|
File.expects(:realpath).with('./java_test').returns(symlink_path)
|
|
expect(Facter.value(:java_default_home)).to eql java_home
|
|
end
|
|
|
|
describe 'java_default_home' do
|
|
before(:each) do
|
|
Facter.clear
|
|
Facter.fact(:kernel).stubs(:value).returns('Linux')
|
|
end
|
|
|
|
context 'returns java home path when java found in PATH' do
|
|
context 'when java is in /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java' do
|
|
it do
|
|
unlink_and_delete('./java_test')
|
|
symlink_and_test(java_7_path, java_7_home)
|
|
unlink_and_delete('./java_test')
|
|
end
|
|
end
|
|
|
|
context 'when java is in /usr/lib/jvm/oracle-java8-jre-amd64/bin/java' do
|
|
it do
|
|
unlink_and_delete('./java_test')
|
|
symlink_and_test(java_8_path, java_8_home)
|
|
unlink_and_delete('./java_test')
|
|
end
|
|
end
|
|
end
|
|
|
|
context 'returns nil when java not present' do
|
|
it do
|
|
Facter::Util::Resolution.stubs(:exec)
|
|
Facter::Util::Resolution.expects(:which).with('java').at_least(1).returns(false)
|
|
expect(Facter.value(:java_default_home)).to be_nil
|
|
end
|
|
end
|
|
end
|