CDLUC3/datacite-mapping

View on GitHub
Rakefile

Summary

Maintainability
Test Coverage
# frozen_string_literal: true

# ------------------------------------------------------------
# RSpec

require 'rspec/core'
require 'rspec/core/rake_task'

namespace :spec do

  desc 'Run all unit tests'
  RSpec::Core::RakeTask.new(:unit) do |task|
    task.rspec_opts = %w[--color --format documentation --order default]
    task.pattern = 'unit/**/*_spec.rb'
  end

  task all: [:unit]
end

desc 'Run all tests'
task spec: 'spec:all'

# ------------------------------------------------------------
# Coverage

desc 'Run all unit tests with coverage'
task :coverage do
  ENV['COVERAGE'] = 'true'
  Rake::Task['spec:unit'].execute
end

# ------------------------------------------------------------
# RuboCop

require 'rubocop/rake_task'
RuboCop::RakeTask.new

# ------------------------------------------------------------
# TODOs

desc 'List TODOs (from spec/todo.rb)'
RSpec::Core::RakeTask.new(:todo) do |task|
  task.rspec_opts = %w[--color --format documentation --order default]
  task.pattern = 'todo.rb'
end

# ------------------------------------------------------------
# Defaults

desc 'Run unit tests, check test coverage, run acceptance tests, check code style'
task default: %i[coverage rubocop]