Skip to content

Commit c8be8b7

Browse files
committed
Set up ruby_memcheck
1 parent 8e8b353 commit c8be8b7

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

Rakefile

+13-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ require 'fileutils'
77
require 'rspec/core'
88
require 'rspec/core/rake_task'
99
require 'yard'
10+
if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('2.6.0')
11+
require 'ruby_memcheck'
12+
require 'ruby_memcheck/rspec/rake_task'
13+
14+
RubyMemcheck.config(binary_name: 'msgpack')
15+
end
1016

1117
task :spec => :compile
1218

@@ -53,12 +59,18 @@ test_pattern = case
5359
when RUBY_ENGINE =~ /rbx/ then 'spec/*_spec.rb'
5460
else 'spec/{,cruby/}*_spec.rb' # MRI
5561
end
56-
RSpec::Core::RakeTask.new(:spec) do |t|
62+
spec_config = lambda do |t|
5763
t.rspec_opts = ["-c", "-f progress"]
5864
t.rspec_opts << "-Ilib"
5965
t.pattern = test_pattern
6066
t.verbose = true
6167
end
68+
RSpec::Core::RakeTask.new(:spec, &spec_config)
69+
if Gem::Version.new(RUBY_VERSION) > Gem::Version.new('2.6.0')
70+
namespace :spec do
71+
RubyMemcheck::RSpec::RakeTask.new(valgrind: :compile, &spec_config)
72+
end
73+
end
6274

6375
namespace :build do
6476
desc 'Build gem for JRuby after cleaning'

msgpack.gemspec

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ Gem::Specification.new do |s|
2525
s.add_development_dependency 'rake'
2626
s.add_development_dependency 'rake-compiler', ['>= 1.1.9']
2727
s.add_development_dependency 'rspec', ['~> 3.3']
28+
s.add_development_dependency 'ruby_memcheck'
2829
s.add_development_dependency 'yard'
2930
s.add_development_dependency 'json'
3031
s.add_development_dependency 'benchmark-ips', ['~> 2.10.0']

0 commit comments

Comments
 (0)