Skip to content

Commit

Permalink
rubocop: fix save violations
Browse files Browse the repository at this point in the history
  • Loading branch information
bastelfreak committed May 24, 2024
1 parent d846e4d commit 5ea987b
Show file tree
Hide file tree
Showing 11 changed files with 103 additions and 39 deletions.
1 change: 1 addition & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
inherit_from: .rubocop_todo.yml
56 changes: 56 additions & 0 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2024-05-24 08:54:49 UTC using RuboCop version 1.50.2.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.

# Offense count: 1
# Configuration parameters: AllowComments, AllowNil.
Lint/SuppressedException:
Exclude:
- 'Rakefile'

# Offense count: 1
# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
Metrics/AbcSize:
Max: 23

# Offense count: 3
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
# AllowedMethods: refine
Metrics/BlockLength:
Max: 80

# Offense count: 1
# Configuration parameters: AllowedMethods, AllowedPatterns.
Metrics/CyclomaticComplexity:
Max: 13

# Offense count: 1
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
Metrics/MethodLength:
Max: 28

# Offense count: 3
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: always, always_true, never
Style/FrozenStringLiteralComment:
Exclude:
- 'lib/voxpupuli/test/facts.rb'
- 'lib/voxpupuli/test/rake.rb'
- 'lib/voxpupuli/test/spec_helper.rb'

# Offense count: 1
Style/MixinUsage:
Exclude:
- 'lib/voxpupuli/test/facts.rb'

# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns.
# URISchemes: http, https
Layout/LineLength:
Max: 136
10 changes: 6 additions & 4 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# frozen_string_literal: true

source 'https://rubygems.org'

gemspec
Expand All @@ -7,10 +9,10 @@ group :release do
gem 'github_changelog_generator', '~> 1.16.4', require: false
end

group :coverage, optional: ENV['COVERAGE']!='yes' do
gem 'simplecov-console', :require => false
gem 'codecov', :require => false
group :coverage, optional: ENV['COVERAGE'] != 'yes' do
gem 'codecov', require: false
gem 'simplecov-console', require: false
end

# Override gemspec for CI matrix builds.
gem 'puppet', ENV.fetch('PUPPET_VERSION', '>= 7.24'), :require => false
gem 'puppet', ENV.fetch('PUPPET_VERSION', '>= 7.24'), require: false
6 changes: 4 additions & 2 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
# frozen_string_literal: true

require 'rspec/core/rake_task'

RSpec::Core::RakeTask.new(:spec)

task :default => :spec
task default: :spec

begin
require 'github_changelog_generator/task'

GitHubChangelogGenerator::RakeTask.new :changelog do |config|
config.header = "# Changelog\n\nAll notable changes to this project will be documented in this file."
config.exclude_labels = %w{duplicate question invalid wontfix wont-fix skip-changelog}
config.exclude_labels = %w[duplicate question invalid wontfix wont-fix skip-changelog]
config.user = 'voxpupuli'
config.project = 'voxpupuli-test'
config.future_release = "v#{Gem::Specification.load("#{config.project}.gemspec").version}"
Expand Down
Empty file removed lib/voxpupuli/test.rb
Empty file.
5 changes: 3 additions & 2 deletions lib/voxpupuli/test/facts.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ def add_facts_for_metadata(metadata)

def normalize_module_name(name)
return unless name

name.sub('-', '/')
end

Expand All @@ -70,7 +71,7 @@ def add_stdlib_facts

# Rough conversion of grepping in the puppet source:
# grep defaultfor lib/puppet/provider/service/*.rb
add_custom_fact :service_provider, ->(_os, facts) do
add_custom_fact :service_provider, lambda { |_os, facts|
os = RSpec.configuration.facterdb_string_keys ? facts['os'] : facts[:os]
case os['family'].downcase
when 'archlinux'
Expand All @@ -94,5 +95,5 @@ def add_stdlib_facts
else
'init'
end
end
}
end
5 changes: 3 additions & 2 deletions lib/voxpupuli/test/rake.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
require 'puppetlabs_spec_helper/rake_tasks'

PuppetLint.configuration.log_format = '%{path}:%{line}:%{check}:%{KIND}:%{message}'
PuppetLint.configuration.log_format = '%<path>s:%<line>s:%<check>s:%<KIND>s:%<message>s'
# without this, puppet-lint always gives an exit code of 0
PuppetLint.configuration.fail_on_warnings = true

Expand All @@ -14,8 +14,9 @@
task :trailing_whitespace do
Dir.glob('**/*.md', File::FNM_DOTMATCH).sort.each do |filename|
next if filename =~ %r{^((modules|acceptance|\.?vendor|spec/fixtures|pkg)/|REFERENCE.md)}

File.foreach(filename).each_with_index do |line, index|
if line =~ %r{\s\n$}
if line =~ /\s\n$/
puts "#{filename} has trailing whitespace on line #{index + 1}"
exit 1
end
Expand Down
4 changes: 1 addition & 3 deletions lib/voxpupuli/test/spec_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@
# puppetlabs_spec_helper defaults to mocha but emits a deprecation warning
# Vox Pupuli prefers rspec to avoid the deprecation warning unless explicitly
# set
if config.instance_variable_get(:@mock_framework).nil?
config.mock_with :rspec
end
config.mock_with :rspec if config.instance_variable_get(:@mock_framework).nil?
end

require 'voxpupuli/test/facts'
Expand Down
47 changes: 24 additions & 23 deletions spec/facts_spec.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# frozen_string_literal: true

require 'spec_helper'
require 'voxpupuli/test/facts'

Expand All @@ -11,7 +13,7 @@
'full' => '7.7.1908',
'major' => '7',
'minor' => '7'
},
}
}
}
end
Expand All @@ -26,7 +28,7 @@
'full' => '7.7.1908',
'major' => '7',
'minor' => '7'
},
}
}
}
end
Expand All @@ -44,15 +46,15 @@
'full' => '7.7.1908',
'major' => '7',
'minor' => '7'
},
}
},
ruby: {
'sitedir' => '/usr/local/share/ruby/site_ruby',
'sitedir' => '/usr/local/share/ruby/site_ruby'
}
}
end

it { expect(override_facts(base_facts, ruby: {sitedir: '/usr/local/share/ruby/site_ruby'})).to eq(expected) }
it { expect(override_facts(base_facts, ruby: { sitedir: '/usr/local/share/ruby/site_ruby' })).to eq(expected) }
end

describe 'with deep merging' do
Expand All @@ -65,12 +67,12 @@
'full' => '7.7.1908',
'major' => '7',
'minor' => '8'
},
}
}
}
end

it { expect(override_facts(base_facts, os: {release: {minor: '8'}})).to eq(expected) }
it { expect(override_facts(base_facts, os: { release: { minor: '8' } })).to eq(expected) }
end

describe 'with strings' do
Expand All @@ -83,12 +85,12 @@
'full' => '7.7.1908',
'major' => '7',
'minor' => '8'
},
}
}
}
end

it { expect(override_facts(base_facts, os: {'release' => {minor: '8'}})).to eq(expected) }
it { expect(override_facts(base_facts, os: { 'release' => { minor: '8' } })).to eq(expected) }
end
end

Expand All @@ -112,7 +114,7 @@
context 'with systemd' do
let(:dependencies) do
[
{'name' => 'puppet/systemd'},
{ 'name' => 'puppet/systemd' }
]
end

Expand All @@ -124,32 +126,29 @@
context 'and stdlib' do
let(:dependencies) do
[
{'name' => 'puppetlabs/stdlib'},
{'name' => 'puppet/systemd'},
{ 'name' => 'puppetlabs/stdlib' },
{ 'name' => 'puppet/systemd' }
]
end

it 'has systemd on Red Hat 7' do
add_facts_for_metadata(metadata)
facts = RspecPuppetFacts.with_custom_facts('redhat-7-x86_64', {
os: { 'family' => 'RedHat', 'release' => { 'major' => '7' } }
})
facts = RspecPuppetFacts.with_custom_facts('redhat-7-x86_64', { os: { 'family' => 'RedHat', 'release' => { 'major' => '7' } } })
expect(facts['systemd']).to be true
end

it 'has no systemd on Red Hat 6' do
add_facts_for_metadata(metadata)
facts = RspecPuppetFacts.with_custom_facts('redhat-6-x86_64', {
os: {'family' => 'RedHat', 'release' => { 'major' => '6' }}
})
facts = RspecPuppetFacts.with_custom_facts('redhat-6-x86_64',
{ os: { 'family' => 'RedHat', 'release' => { 'major' => '6' } } })
expect(facts['systemd']).to be false
end

it 'has no systemd on openbsd' do
add_facts_for_metadata(metadata)
facts = RspecPuppetFacts.with_custom_facts('openbsd-6.4-x86_64', {
os: { 'family' => 'OpenBSD' }
})
os: { 'family' => 'OpenBSD' }
})
expect(facts['systemd']).to be false
end
end
Expand All @@ -158,13 +157,15 @@
context 'with stdlib' do
let(:dependencies) do
[
{'name' => 'puppetlabs/stdlib'},
{ 'name' => 'puppetlabs/stdlib' }
]
end

it 'adds the systemd fact' do
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:puppet_environmentpath, '/etc/puppetlabs/code/environments', {})
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:puppet_vardir, '/opt/puppetlabs/puppet/cache', {})
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:puppet_environmentpath,
'/etc/puppetlabs/code/environments', {})
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:puppet_vardir, '/opt/puppetlabs/puppet/cache',
{})
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:root_home, '/root', {})
expect(RspecPuppetFacts).to receive(:register_custom_fact).with(:service_provider, instance_of(Proc), {})
add_facts_for_metadata(metadata)
Expand Down
4 changes: 3 additions & 1 deletion spec/spec_helper.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# frozen_string_literal: true

begin
require 'simplecov'
require 'simplecov-console'
Expand All @@ -18,7 +20,7 @@

SimpleCov.formatters = [
SimpleCov::Formatter::Console,
SimpleCov::Formatter::Codecov,
SimpleCov::Formatter::Codecov
]
end

Expand Down
4 changes: 2 additions & 2 deletions voxpupuli-test.gemspec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# -*- encoding: utf-8 -*-
# frozen_string_literal: true

Gem::Specification.new do |s|
s.name = 'voxpupuli-test'
Expand Down Expand Up @@ -32,8 +32,8 @@ Gem::Specification.new do |s|
# newest versions that still support Ruby 2.6
# jruby 9.3 in Puppetserver 7 is compatible with C Ruby 2.6
s.add_runtime_dependency 'rubocop', '~> 1.50.0'
s.add_runtime_dependency 'rubocop-rspec', '~> 2.20.0'
s.add_runtime_dependency 'rubocop-rake', '~> 0.6.0'
s.add_runtime_dependency 'rubocop-rspec', '~> 2.20.0'

# Linting
# meta gem to pull in all puppet-lint plugins + puppet-lint itself
Expand Down

0 comments on commit 5ea987b

Please sign in to comment.