]> review.fuel-infra Code Review - puppet-modules/puppetlabs-firewall.git/commitdiff
(MODULES-3958) enable rspec-mock and code coverage
authortphoney <tp@puppet.com>
Tue, 19 Feb 2019 11:07:26 +0000 (11:07 +0000)
committertphoney <tp@puppet.com>
Tue, 19 Feb 2019 11:07:26 +0000 (11:07 +0000)
.sync.yml
metadata.json
spec/spec_helper.rb
spec/spec_helper_local.rb

index c924e7cf323370797bb171eb32c8f42b16ab9599..88a180d2444d99ed780bf91028d6d0da09e4cef8 100644 (file)
--- a/.sync.yml
+++ b/.sync.yml
@@ -1,4 +1,7 @@
 ---
+.gitlab-ci.yml:
+  unmanaged: true
+
 .travis.yml:
   bundle_args: --without system_tests
   docker_sets:
@@ -10,6 +13,9 @@
   branches:
     - release
 
+appveyor.yml:
+  delete: true
+
 Gemfile:
   optional:
     ':development':
@@ -27,8 +33,6 @@ Gemfile:
           - mingw
           - x64_mingw
 
-appveyor.yml:
-  delete: true
-
-.gitlab-ci.yml:
-  unmanaged: true
+spec/spec_helper.rb:
+  mock_with: ':rspec'
+  coverage_report: true
index 38d91320ead1c3e8e821efbab66a60e2a12ff41b..830e63c202e403c876ade0513f830fff84130750 100644 (file)
@@ -75,6 +75,6 @@
     }
   ],
   "template-url": "https://github.com/puppetlabs/pdk-templates/",
-  "template-ref": "1.9.0-0-g7281db5",
+  "template-ref": "heads/master-0-g615413e",
   "pdk-version": "1.9.0"
-}
+}
\ No newline at end of file
index 0d5efc0be24af0796472c8f21fe7b1246c3c5a3f..149ff0337aeffe7198ab371816a123f3d7e0875f 100644 (file)
@@ -1,3 +1,7 @@
+RSpec.configure do |c|
+  c.mock_with :rspec
+end
+
 require 'puppetlabs_spec_helper/module_spec_helper'
 require 'rspec-puppet-facts'
 
@@ -34,6 +38,7 @@ RSpec.configure do |c|
   end
   c.filter_run_excluding(bolt: true) unless ENV['GEM_BOLT']
   c.after(:suite) do
+    RSpec::Puppet::Coverage.report!(0)
   end
 end
 
index 4abf9f93c6b315c6fcf3b1de3038e96a6fcd0dbf..d2346d39f78c75e7e246bb183ddd0a88d44b2c14 100644 (file)
@@ -1,5 +1,30 @@
-RSpec.configure do |config|
-  config.mock_with :rspec
+if ENV['COVERAGE'] == 'yes'
+  require 'simplecov'
+  require 'simplecov-console'
+  require 'codecov'
+
+  SimpleCov.formatters = [
+    SimpleCov::Formatter::HTMLFormatter,
+    SimpleCov::Formatter::Console,
+    SimpleCov::Formatter::Codecov,
+  ]
+  SimpleCov.start do
+    track_files 'lib/**/*.rb'
+
+    add_filter '/spec'
+
+    # do not track vendored files
+    add_filter '/vendor'
+    add_filter '/.vendor'
+
+    # do not track gitignored files
+    # this adds about 4 seconds to the coverage check
+    # this could definitely be optimized
+    add_filter do |f|
+      # system returns true if exit status is 0, which with git-check-ignore means file is ignored
+      system("git check-ignore --quiet #{f.filename}")
+    end
+  end
 end
 
 def with_debian_facts