Class: Test::Unit::Priority::Checker

Inherits:
Object
  • Object
show all
Defined in:
lib/test/unit/priority.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(test) ⇒ Checker

Returns a new instance of Checker.



65
66
67
# File 'lib/test/unit/priority.rb', line 65

def initialize(test)
  @test = test
end

Instance Attribute Details

#testObject (readonly)

Returns the value of attribute test.



64
65
66
# File 'lib/test/unit/priority.rb', line 64

def test
  @test
end

Class Method Details

.have_priority?(name) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
23
# File 'lib/test/unit/priority.rb', line 20

def have_priority?(name)
  singleton_class = (class << self; self; end)
  singleton_class.method_defined?(priority_check_method_name(name))
end

.need_to_run?(test) ⇒ Boolean

Returns:

  • (Boolean)


25
26
27
28
29
30
31
32
# File 'lib/test/unit/priority.rb', line 25

def need_to_run?(test)
  priority = test[:priority] || :normal
  if have_priority?(priority)
    send(priority_check_method_name(priority), test)
  else
    true
  end
end

.run_priority_high?(test) ⇒ Boolean

Returns:

  • (Boolean)


42
43
44
# File 'lib/test/unit/priority.rb', line 42

def run_priority_high?(test)
  rand > 0.3
end

.run_priority_important?(test) ⇒ Boolean

Returns:

  • (Boolean)


38
39
40
# File 'lib/test/unit/priority.rb', line 38

def run_priority_important?(test)
  rand > 0.1
end

.run_priority_low?(test) ⇒ Boolean

Returns:

  • (Boolean)


50
51
52
# File 'lib/test/unit/priority.rb', line 50

def run_priority_low?(test)
  rand > 0.75
end

.run_priority_must?(test) ⇒ Boolean

Returns:

  • (Boolean)


34
35
36
# File 'lib/test/unit/priority.rb', line 34

def run_priority_must?(test)
  true
end

.run_priority_never?(test) ⇒ Boolean

Returns:

  • (Boolean)


54
55
56
# File 'lib/test/unit/priority.rb', line 54

def run_priority_never?(test)
  false
end

.run_priority_normal?(test) ⇒ Boolean

Returns:

  • (Boolean)


46
47
48
# File 'lib/test/unit/priority.rb', line 46

def run_priority_normal?(test)
  rand > 0.5
end

Instance Method Details

#need_to_run?Boolean

Returns:

  • (Boolean)


81
82
83
# File 'lib/test/unit/priority.rb', line 81

def need_to_run?
  !previous_test_success? or self.class.need_to_run?(@test)
end

#setupObject



69
70
71
# File 'lib/test/unit/priority.rb', line 69

def setup
  FileUtils.rm_f(passed_file)
end

#teardownObject



73
74
75
76
77
78
79
# File 'lib/test/unit/priority.rb', line 73

def teardown
  if @test.send(:passed?)
    FileUtils.touch(passed_file)
  else
    FileUtils.rm_f(passed_file)
  end
end