Module: Rake

Extended by:
Rake, FileUtilsExt
Includes:
Test::Unit::Assertions
Included in:
Rake
Defined in:
lib/rake.rb,
lib/rake/task.rb,
lib/rake/clean.rb,
lib/rake/scope.rb,
lib/rake/win32.rb,
lib/rake/promise.rb,
lib/rake/runtest.rb,
lib/rake/tasklib.rb,
lib/rake/version.rb,
lib/rake/testtask.rb,
lib/rake/backtrace.rb,
lib/rake/cloneable.rb,
lib/rake/file_list.rb,
lib/rake/file_list.rb,
lib/rake/file_task.rb,
lib/rake/late_time.rb,
lib/rake/early_time.rb,
lib/rake/multi_task.rb,
lib/rake/application.rb,
lib/rake/cpu_counter.rb,
lib/rake/linked_list.rb,
lib/rake/packagetask.rb,
lib/rake/rake_module.rb,
lib/rake/thread_pool.rb,
lib/rake/task_manager.rb,
lib/rake/trace_output.rb,
lib/rake/pseudo_status.rb,
lib/rake/default_loader.rb,
lib/rake/dsl_definition.rb,
lib/rake/file_utils_ext.rb,
lib/rake/private_reader.rb,
lib/rake/task_arguments.rb,
lib/rake/contrib/ftptools.rb,
lib/rake/invocation_chain.rb,
lib/rake/loaders/makefile.rb,
lib/rake/file_creation_task.rb,
lib/rake/task_argument_error.rb,
lib/rake/contrib/sshpublisher.rb,
lib/rake/thread_history_display.rb,
lib/rake/contrib/compositepublisher.rb,
lib/rake/contrib/rubyforgepublisher.rb,
lib/rake/invocation_exception_mixin.rb,
lib/rake/rule_recursion_overflow_error.rb

Overview

:nodoc:

Defined Under Namespace

Modules: AltSystem, Backtrace, Cleaner, Cloneable, DSL, FileUtilsExt, InvocationExceptionMixin, PrivateReader, TaskManager, TraceOutput, Version, Win32 Classes: Application, CompositePublisher, CpuCounter, DefaultLoader, EarlyTime, FileCreationTask, FileList, FileTask, FtpFile, FtpUploader, InvocationChain, LateTime, LinkedList, MakefileLoader, MultiTask, NameSpace, PackageTask, Promise, PseudoStatus, RubyForgePublisher, RuleRecursionOverflowError, Scope, SshDirPublisher, SshFilePublisher, SshFreshDirPublisher, Task, TaskArgumentError, TaskArguments, TaskLib, TestTask, ThreadHistoryDisplay, ThreadPool

Constant Summary collapse

VERSION =
'10.5.0'
LATE =
LateTime.instance
EARLY =
EarlyTime.instance
CommandLineOptionError =
Class.new(StandardError)
EMPTY_TASK_ARGS =

:nodoc:

TaskArguments.new([], [])

Constants included from FileUtilsExt

FileUtilsExt::DEFAULT

Constants included from FileUtils

FileUtils::LN_SUPPORTED, FileUtils::RUBY

Class Method Summary collapse

Instance Method Summary collapse

Methods included from FileUtilsExt

nowrite, rake_check_options, rake_merge_option, rake_output_message, verbose, when_writing

Methods included from FileUtils

#ruby, #safe_ln, #sh, #split_all

Class Method Details

.add_rakelib(*files) ⇒ Object

Add files to the rakelib list



32
33
34
35
# File 'lib/rake/rake_module.rb', line 32

def add_rakelib(*files)
  application.options.rakelib ||= []
  application.options.rakelib.concat(files)
end

.applicationObject

Current Rake Application



7
8
9
# File 'lib/rake/rake_module.rb', line 7

def application
  @application ||= Rake::Application.new
end

.application=(app) ⇒ Object

Set the current Rake application object.



12
13
14
# File 'lib/rake/rake_module.rb', line 12

def application=(app)
  @application = app
end

.each_dir_parent(dir) ⇒ Object

Yield each file or directory component.



411
412
413
414
415
416
417
418
# File 'lib/rake/file_list.rb', line 411

def each_dir_parent(dir)    # :nodoc:
  old_length = nil
  while dir != '.' && dir.length != old_length
    yield(dir)
    old_length = dir.length
    dir = File.dirname(dir)
  end
end

.from_pathname(path) ⇒ Object

Convert Pathname and Pathname-like objects to strings; leave everything else alone



422
423
424
425
426
# File 'lib/rake/file_list.rb', line 422

def from_pathname(path)    # :nodoc:
  path = path.to_path if path.respond_to?(:to_path)
  path = path.to_str if path.respond_to?(:to_str)
  path
end

.load_rakefile(path) ⇒ Object

Load a rakefile.



27
28
29
# File 'lib/rake/rake_module.rb', line 27

def load_rakefile(path)
  load(path)
end

.original_dirObject

Return the original directory where the Rake application was started.



22
23
24
# File 'lib/rake/rake_module.rb', line 22

def original_dir
  application.original_dir
end

.suggested_thread_countObject

:nodoc:



16
17
18
19
# File 'lib/rake/rake_module.rb', line 16

def suggested_thread_count # :nodoc:
  @cpu_count ||= Rake::CpuCounter.count
  @cpu_count + 4
end

Instance Method Details

#run_tests(pattern = 'test/test*.rb', log_enabled = false) ⇒ Object

Deprecated way of running tests in process, but only for Test::Unit. – TODO: Remove in rake 11



13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/rake/runtest.rb', line 13

def run_tests(pattern='test/test*.rb', log_enabled=false) # :nodoc:
  FileList.glob(pattern).each do |fn|
    $stderr.puts fn if log_enabled
    begin
      require fn
    rescue Exception => ex
      $stderr.puts "Error in #{fn}: #{ex.message}"
      $stderr.puts ex.backtrace
      assert false
    end
  end
end