diff --git a/lib/facter/facts/solaris/kernelmajversion.rb b/lib/facter/facts/solaris/kernelmajversion.rb index 844c8ef66f..0d8ade8087 100644 --- a/lib/facter/facts/solaris/kernelmajversion.rb +++ b/lib/facter/facts/solaris/kernelmajversion.rb @@ -8,7 +8,7 @@ class Kernelmajversion def call_the_resolver full_version = Facter::Resolvers::Uname.resolve(:kernelversion) versions_split = full_version.split('.') - major_version = versions_split.length > 1 ? versions_split[0] + '.' + versions_split[1] : versions_split[0] + major_version = versions_split.length > 2 ? versions_split[0] + '.' + versions_split[1] : versions_split[0] Facter::ResolvedFact.new(FACT_NAME, major_version) end end diff --git a/spec/facter/facts/solaris/kernelmajversion_spec.rb b/spec/facter/facts/solaris/kernelmajversion_spec.rb index 2045eceac8..36126bf9e1 100644 --- a/spec/facter/facts/solaris/kernelmajversion_spec.rb +++ b/spec/facter/facts/solaris/kernelmajversion_spec.rb @@ -22,13 +22,20 @@ end describe '#call_the_resolver' do - context 'when full version is separated by . delimeter' do + context 'when on Solaris 11.4' do let(:resolver_value) { '11.4.0.15.0' } let(:fact_value) { '11.4' } include_examples 'kernelmajversion fact expectation' end + context 'when on Solaris 11.3' do + let(:resolver_value) { '11.3' } + let(:fact_value) { '11' } + + include_examples 'kernelmajversion fact expectation' + end + context 'when full version does not have a . delimeter' do let(:resolver_value) { '4test' } let(:fact_value) { '4test' }