Class: DeepTest::TestTask

Inherits:
Object
  • Object
show all
Defined in:
lib/deep_test/test_task.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name = :deep_test, &block) ⇒ TestTask

Returns a new instance of TestTask.



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/deep_test/test_task.rb', line 5

def initialize(name = :deep_test, &block)
#       @requires = []
  @name = name
#       @libs = ["lib"]
  @options = Options.new({})
  
  @options.requires = []
  @options.libs = ["lib"]
  
  self.pattern = "test/**/*_test.rb"
#       yield self if block_given?
  @config_block = block
  define
end

Instance Attribute Details

#libsObject

Returns the value of attribute libs.



3
4
5
# File 'lib/deep_test/test_task.rb', line 3

def libs
  @libs
end

#requiresObject

Returns the value of attribute requires.



3
4
5
# File 'lib/deep_test/test_task.rb', line 3

def requires
  @requires
end

Instance Method Details

#defineObject



20
21
22
23
24
25
26
27
28
29
# File 'lib/deep_test/test_task.rb', line 20

def define
  require 'rake'
  desc "Run '#{@name}' suite using DeepTest"
  task @name do
    @config_block.call(self)
    lib_options = libs.any? ? "-I" + libs.join(File::PATH_SEPARATOR) : ""
    require_options = requires.map {|f| "-r#{f}"}.join(" ")
    ruby "#{lib_options} #{require_options} #{runner} '#{@options.to_command_line}'"
  end
end

#pattern=(pattern) ⇒ Object



43
44
45
# File 'lib/deep_test/test_task.rb', line 43

def pattern=(pattern)
  @options.pattern = Dir.pwd + "/" + pattern
end