1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
require 'test/unit'
class TestUnitPriority < Test::Unit::TestCase
class TestCase < Test::Unit::TestCase
class << self
def suite
Test::Unit::TestSuite.new(name)
end
end
priority :must
def test_must
assert(true)
end
def test_must_inherited
assert(true)
end
priority :important
def test_important
assert(true)
end
def test_important_inherited
assert(true)
end
priority :high
def test_high
assert(true)
end
def test_high_inherited
assert(true)
end
priority :normal
def test_normal
assert(true)
end
def test_normal_inherited
assert(true)
end
priority :low
def test_low
assert(true)
end
def test_low_inherited
assert(true)
end
priority :never
def test_never
assert(true)
end
def test_never_inherited
assert(true)
end
end
def test_priority
assert_priority("must", 1.0, 0.0001)
assert_priority("important", 0.9, 0.09)
assert_priority("high", 0.70, 0.1)
assert_priority("normal", 0.5, 0.1)
assert_priority("low", 0.25, 0.1)
assert_priority("never", 0.0, 0.0001)
end
def assert_priority(priority, expected, delta)
assert_need_to_run("test_#{priority}", expected, delta)
assert_need_to_run("test_#{priority}_inherited", expected, delta)
end
def assert_need_to_run(test_name, expected, delta)
test = TestCase.new(test_name)
n = 1000
n_need_to_run = 0
n.times do |i|
n_need_to_run +=1 if Test::Unit::Priority::Checker.need_to_run?(test)
end
assert_in_delta(expected, n_need_to_run.to_f / n, delta)
end
end
|