mirror of
https://github.com/HoneyryderChuck/httpx.git
synced 2025-10-04 00:00:37 -04:00
84 lines
1.9 KiB
Ruby
84 lines
1.9 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require "bundler/gem_tasks"
|
|
require "rdoc/task"
|
|
require "rake/testtask"
|
|
|
|
Rake::TestTask.new do |t|
|
|
t.libs = %w[lib test]
|
|
t.pattern = "test/**/*_test.rb"
|
|
t.warning = false
|
|
end
|
|
|
|
desc "integration tests for third party modules"
|
|
Rake::TestTask.new(:integration_tests) do |t|
|
|
t.libs = %w[lib test]
|
|
t.pattern = "integration_tests/**/*_test.rb"
|
|
t.warning = false
|
|
end
|
|
|
|
desc "regression tests for particular incidents"
|
|
Rake::TestTask.new(:regression_tests) do |t|
|
|
t.libs = %w[lib test]
|
|
t.pattern = "regression_tests/**/*_test.rb"
|
|
t.warning = false
|
|
end
|
|
|
|
RUBY_MAJOR_MINOR = RUBY_VERSION.split(".").first(2).join(".")
|
|
|
|
begin
|
|
require "rubocop/rake_task"
|
|
desc "Run rubocop"
|
|
RuboCop::RakeTask.new
|
|
rescue LoadError
|
|
end
|
|
|
|
namespace :coverage do
|
|
desc "Aggregates coverage reports"
|
|
task :report do
|
|
return unless ENV.key?("CI")
|
|
|
|
require "simplecov"
|
|
|
|
SimpleCov.collate Dir["coverage/**/.resultset.json"]
|
|
end
|
|
end
|
|
|
|
# Doc
|
|
|
|
rdoc_opts = ["--line-numbers", "--title", "HTTPX: An HTTP client library for ruby"]
|
|
|
|
begin
|
|
gem "hanna-nouveau"
|
|
rdoc_opts.concat(["-f", "hanna"])
|
|
rescue Gem::LoadError
|
|
end
|
|
|
|
rdoc_opts.concat(["--main", "README.md"])
|
|
RDOC_FILES = %w[README.md lib/**/*.rb] + Dir["doc/*.rdoc"] + Dir["doc/release_notes/*.md"]
|
|
|
|
RDoc::Task.new do |rdoc|
|
|
rdoc.rdoc_dir = "rdoc"
|
|
rdoc.options += rdoc_opts
|
|
rdoc.rdoc_files.add RDOC_FILES
|
|
end
|
|
|
|
desc "Builds Homepage"
|
|
task :prepare_website => ["rdoc"] do
|
|
require "fileutils"
|
|
FileUtils.rm_rf("wiki")
|
|
system("git clone https://gitlab.com/honeyryderchuck/httpx.wiki.git wiki")
|
|
Dir.glob("wiki/*.md") do |path|
|
|
data = File.read(path)
|
|
name = File.basename(path, ".md")
|
|
title = name == "home" ? "Wiki" : name.split("-").map(&:capitalize).join(" ")
|
|
layout = name == "home" ? "page" : "wiki"
|
|
|
|
header = "---\n" \
|
|
"layout: #{layout}\n" \
|
|
"title: #{title}\n" \
|
|
"---\n\n"
|
|
File.write(path, header + data)
|
|
end
|
|
end
|