Sha256: a409fc6e7fed97b10c05bab5d3847f4ebed6837a4e304d4406cbcc1a415a6e53

Contents?: true

Size: 1.07 KB

Versions: 4

Compression:

Stored size: 1.07 KB

Contents

require 'rake_factory'
require 'ruby_leiningen'
require 'ruby_leiningen/plugins'

require_relative '../mixins/directoried'

module RakeLeiningen
  module Tasks
    class Test < RakeFactory::Task
      include Mixins::Directoried

      default_name :test
      default_description ->(t) {
        "Run #{t.type ? "all #{t.type}" : "all"} tests."
      }
      default_prerequisites ->(t) {
        t.ensure_task_name ? [t.ensure_task_name] : []
      }

      parameter :type

      parameter :only
      parameter :test_selectors
      parameter :namespaces
      parameter :files
      parameter :profile

      parameter :directory, default: '.'

      parameter :ensure_task_name, default: 'leiningen:ensure'

      action do |t|
        puts "Running #{t.type ? "all #{t.type}" : "all"} tests..."

        in_directory(t.directory) do
          RubyLeiningen.eftest(
              only: t.only,
              test_selectors: t.test_selectors,
              namespaces: t.namespaces,
              files: t.files,
              profile: t.profile)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rake_leiningen-0.12.0 lib/rake_leiningen/tasks/test.rb
rake_leiningen-0.11.0.pre.1 lib/rake_leiningen/tasks/test.rb
rake_leiningen-0.10.0 lib/rake_leiningen/tasks/test.rb
rake_leiningen-0.9.0.pre.1 lib/rake_leiningen/tasks/test.rb