diff --git a/.gitignore b/.gitignore index 6580b98..bffc7ad 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ *.gem .Trash* *.log +coverage diff --git a/Gemfile.lock b/Gemfile.lock index 09ebfc9..488adff 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -49,6 +49,7 @@ GEM debug (1.11.1) irb (~> 1.10) reline (>= 0.3.8) + docile (1.4.1) drb (2.2.3) erb (6.0.1) etc (1.4.6) @@ -165,6 +166,12 @@ GEM ruby-progressbar (1.13.0) securerandom (0.4.1) shellany (0.0.1) + simplecov (0.22.0) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + simplecov-html (0.13.2) + simplecov_json_formatter (0.1.4) sqlite3 (2.9.0-aarch64-linux-musl) stringio (3.2.0) sync (0.5.0) @@ -202,6 +209,7 @@ DEPENDENCIES rubocop-rake rubocop-rspec ruby_language_server! + simplecov CHECKSUMS activemodel (8.1.1) @@ -218,6 +226,7 @@ CHECKSUMS connection_pool (3.0.2) date (3.5.1) debug (1.11.1) + docile (1.4.1) drb (2.2.3) erb (6.0.1) etc (1.4.6) @@ -271,6 +280,9 @@ CHECKSUMS ruby_language_server (0.4.2) securerandom (0.4.1) shellany (0.0.1) + simplecov (0.22.0) + simplecov-html (0.13.2) + simplecov_json_formatter (0.1.4) sqlite3 (2.9.0-aarch64-linux-musl) stringio (3.2.0) sync (0.5.0) diff --git a/Makefile b/Makefile index 0a2c2d4..d8cf9e7 100644 --- a/Makefile +++ b/Makefile @@ -29,6 +29,9 @@ console: image test: image ./bin/run_in_shell "bundle exec rake test && bundle exec rubocop" +coverage: image + ./bin/run_in_shell "COVERAGE=true bundle exec rake test" + shell: image ./bin/run_in_shell sh diff --git a/ruby_language_server.gemspec b/ruby_language_server.gemspec index 9f5c62d..a43d72a 100644 --- a/ruby_language_server.gemspec +++ b/ruby_language_server.gemspec @@ -59,5 +59,6 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'rubocop-performance' # Linter - no longer needed - use additional gems? spec.add_development_dependency 'rubocop-rake' spec.add_development_dependency 'rubocop-rspec' # Linter - no longer needed - use additional gems? + spec.add_development_dependency 'simplecov' spec.metadata['rubygems_mfa_required'] = 'true' end diff --git a/spec/test_helper.rb b/spec/test_helper.rb index 634f87c..d881380 100644 --- a/spec/test_helper.rb +++ b/spec/test_helper.rb @@ -1,5 +1,13 @@ # frozen_string_literal: true +if ENV['COVERAGE'] + require 'simplecov' + SimpleCov.start do + add_filter '/spec/' + add_filter '/vendor/' + end +end + require 'debug' require 'ostruct' require_relative '../lib/ruby_language_server'