File: //usr/lib/ruby/gems/3.2.0/gems/debug-1.7.1/Rakefile
require "bundler/gem_tasks"
require "rake/testtask"
begin
require "rake/extensiontask"
task :build => :compile
Rake::ExtensionTask.new("debug") do |ext|
ext.lib_dir = "lib/debug"
end
rescue LoadError
end
task :default => [:clobber, :compile, 'README.md', :check_readme, :test_console]
file 'README.md' => ['lib/debug/session.rb', 'lib/debug/config.rb',
'exe/rdbg', 'misc/README.md.erb'] do
require_relative 'lib/debug/session'
require 'erb'
File.write 'README.md', ERB.new(File.read('misc/README.md.erb')).result
puts 'README.md is updated.'
end
task :check_readme do
require_relative 'lib/debug/session'
require 'erb'
current_readme = File.read("README.md")
generated_readme = ERB.new(File.read('misc/README.md.erb')).result
if current_readme != generated_readme
fail <<~MSG
The content of README.md doesn't match its template and/or source.
Please apply the changes to info source (e.g. command comments) or the template and run 'rake README.md' to update README.md.
MSG
end
end
desc "Run all debugger console related tests"
Rake::TestTask.new(:test_console) do |t|
t.test_files = FileList["test/console/*_test.rb", "test/support/*_test.rb"]
end
desc "Run all debugger protocols (CAP & DAP) related tests"
Rake::TestTask.new(:test_protocol) do |t|
t.test_files = FileList["test/protocol/*_test.rb"]
end
task test: 'test_console' do
warn '`rake test` doesn\'t run protocol tests. Use `rake test-all` to test all.'
end
task test_all: [:test_console, :test_protocol]