Class: Test::Unit::Priority::Checker
- Inherits:
-
Object
- Object
- Test::Unit::Priority::Checker
- Defined in:
- lib/test/unit/priority.rb
Instance Attribute Summary collapse
-
#test ⇒ Object
readonly
Returns the value of attribute test.
Class Method Summary collapse
- .available_priorities ⇒ Object
- .have_priority?(name) ⇒ Boolean
- .need_to_run?(test) ⇒ Boolean
- .run_priority_high?(test) ⇒ Boolean
- .run_priority_important?(test) ⇒ Boolean
- .run_priority_low?(test) ⇒ Boolean
- .run_priority_must?(test) ⇒ Boolean
- .run_priority_never?(test) ⇒ Boolean
- .run_priority_normal?(test) ⇒ Boolean
Instance Method Summary collapse
-
#initialize(test) ⇒ Checker
constructor
A new instance of Checker.
- #need_to_run? ⇒ Boolean
- #setup ⇒ Object
- #teardown ⇒ Object
Constructor Details
#initialize(test) ⇒ Checker
Returns a new instance of Checker.
99 100 101 |
# File 'lib/test/unit/priority.rb', line 99 def initialize(test) @test = test end |
Instance Attribute Details
#test ⇒ Object (readonly)
Returns the value of attribute test.
98 99 100 |
# File 'lib/test/unit/priority.rb', line 98 def test @test end |
Class Method Details
.available_priorities ⇒ Object
61 62 63 64 65 66 |
# File 'lib/test/unit/priority.rb', line 61 def available_priorities methods(false).collect do |name| /\Arun_priority_(.+)\?\z/ =~ name.to_s $1 end.compact end |
.have_priority?(name) ⇒ Boolean
47 48 49 50 |
# File 'lib/test/unit/priority.rb', line 47 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
52 53 54 55 56 57 58 59 |
# File 'lib/test/unit/priority.rb', line 52 def need_to_run?(test) priority = test[:priority] || Priority.default if have_priority?(priority) __send__(priority_check_method_name(priority), test) else true end end |
.run_priority_high?(test) ⇒ Boolean
76 77 78 |
# File 'lib/test/unit/priority.rb', line 76 def run_priority_high?(test) rand > 0.3 end |
.run_priority_important?(test) ⇒ Boolean
72 73 74 |
# File 'lib/test/unit/priority.rb', line 72 def run_priority_important?(test) rand > 0.1 end |
.run_priority_low?(test) ⇒ Boolean
84 85 86 |
# File 'lib/test/unit/priority.rb', line 84 def run_priority_low?(test) rand > 0.75 end |
.run_priority_must?(test) ⇒ Boolean
68 69 70 |
# File 'lib/test/unit/priority.rb', line 68 def run_priority_must?(test) true end |
.run_priority_never?(test) ⇒ Boolean
88 89 90 |
# File 'lib/test/unit/priority.rb', line 88 def run_priority_never?(test) false end |
.run_priority_normal?(test) ⇒ Boolean
80 81 82 |
# File 'lib/test/unit/priority.rb', line 80 def run_priority_normal?(test) rand > 0.5 end |
Instance Method Details
#need_to_run? ⇒ Boolean
115 116 117 |
# File 'lib/test/unit/priority.rb', line 115 def need_to_run? !previous_test_success? or self.class.need_to_run?(@test) end |
#setup ⇒ Object
103 104 105 |
# File 'lib/test/unit/priority.rb', line 103 def setup FileUtils.rm_f(passed_file) end |
#teardown ⇒ Object
107 108 109 110 111 112 113 |
# File 'lib/test/unit/priority.rb', line 107 def teardown if @test.__send__(:passed?) FileUtils.touch(passed_file) else FileUtils.rm_f(passed_file) end end |