| Class | Choose::ChooseTest |
| In: |
lib/choose.rb
|
| Parent: | Test::Unit::TestCase |
| REF_5 | = | [1, 2, 4, 0, 3] |
| REF_F_5 | = | [0.187528345035389, 0.368857819121331, 0.06954449811019, 0.188887464581057, 0.213757352204993] |
| REF_50 | = | [ 28, 12, 17, 10, 1, 37, 46, 25, 47, 2, 45, 36, 20, 5, 30, 14, 18, 39, 8, 15, 16, 43, 27, 33, 22, 7, 32, 3, 35, 9, 19, 13, 21, 6, 23, 26, 4, 40, 44, 11, 49, 29, 42, 24, 31, 48, 34, 0, 38, 41 |
| REF_F_50 | = | [ 0.643785412423313, 0.765736325876787, 0.604515956481919, 0.133839202811942, 0.350400971015915, 0.966710213804618, 0.904755113180727, 0.88459848286584, 0.163951952941716, 0.808023529592901, 0.387806572020054, 0.659689131658524, 0.289974238490686, 0.813535830006003, 0.565311754588038, 0.889200099511072, 0.0668127918615937, 0.992091996129602, 0.604403987759724, 0.89254002738744, 0.601499371463433, 0.754795648856089, 0.751190354581922, 0.434389552799985, 0.761369747575372, 0.174903159961104, 0.940325234550983, 0.536097376374528, 0.957906004507095, 0.693120914744213, 0.23448576242663, 0.638284107437357, 0.423910334473476, 0.251349127152935, 0.457931924844161, 0.20579389645718, 0.256057573715225, 0.584466924890876, 0.609375598141924, 0.0856487881392241, 0.437958877766505, 0.432312048738822, 0.81560374982655, 0.142059376928955, 0.118824432371184, 0.958816710859537, 0.69899930502288, 0.118259542621672, 0.52218786906451, 0.339233995880932 |
# File lib/choose.rb, line 163 def checker_5 ( inp, ref, lim=nil ) checker_n(5, REF_5, REF_F_5, inp, ref, lim) end
# File lib/choose.rb, line 167 def checker_50 ( inp, ref, lim=nil ) checker_n(50, REF_50, REF_F_50, inp, ref, lim) end
# File lib/choose.rb, line 152 def checker_n ( n, ref_i, ref_f, inp, ref, lim=nil ) mrg = MockRandomGenerator.new(ref_i, ref_f) my = [] if lim == :no n.times { my << inp.choose(mrg) } else n.times { my << inp.choose(lim, mrg) } end assert_equal(ref, my) end
# File lib/choose.rb, line 187 def test_array_5 checker_5 [4], [4] * 5, 5 checker_5 [4, 5], [5, 4, 4, 4, 5], 5 checker_5 [4, 5, 6], [5, 6, 5, 4, 4], 5 checker_5 [2, 1, 0, 5, 4, 3], [1, 0, 4, 2, 5], 5 10.times { assert(REF_50.include?(REF_50.choose)) } end
# File lib/choose.rb, line 209 def test_array_50 checker_50 [4], [4] * 50, 50 checker_50 [ 36, 16, 15, 6, 27, 33, 17, 10, 18, 39, 8, 43, 19, 23, 49, 40, 46, 37, 9, 41, 35, 0, 38, 26, 22, 4, 7, 25, 21, 12, 42, 45, 28, 5, 31, 24, 34, 48, 32, 30, 13, 29, 11, 2, 1, 20, 3, 44, 47, 14 ], [ 21, 19, 37, 8, 16, 48, 3, 4, 44, 15, 20, 34, 35, 33, 42, 49, 9, 30, 18, 40, 46, 2, 25, 5, 38, 10, 28, 6, 24, 39, 41, 23, 0, 17, 26, 7, 27, 13, 1, 43, 14, 12, 11, 22, 45, 47, 31, 36, 32, 29 ], 50 end
# File lib/choose.rb, line 180 def test_float checker_5 Float, REF_F_5, 1.0 checker_50 Float, REF_F_50, 1.0 assert(Float.choose(2.0) < 2) assert(Float.choose < 1) end
# File lib/choose.rb, line 230 def test_float_instances assert_raise(ArgumentError) { checker_5 0.0, [], :no } checker_5 1.0, [ 0.187528345035389, 0.368857819121331, 0.06954449811019, 0.188887464581057, 0.213757352204993 ], :no assert(2.0.choose < 2) end
# File lib/choose.rb, line 204 def test_hash checker_5({ 1 => 2 }, [2] * 5, 5) checker_5({ 1 => 2, 3 => 4 }, [4, 2, 2, 2, 4], 5) end
# File lib/choose.rb, line 174 def test_integer checker_5 Integer, REF_5, 5 checker_50 Integer, REF_50, 50 assert(Integer.choose(1000) < 1000) end
# File lib/choose.rb, line 222 def test_integer_instances assert_raise(ArgumentError) { checker_5 0, [], :no } checker_5 1, [0] * 5, :no checker_5 4, [1, 2, 0, 0, 3], :no checker_5 10, REF_5, :no assert(1000.choose < 1000) end
# File lib/choose.rb, line 237 def test_integer_range_instances checker_5 1..1, [1] * 5, :no checker_5 1..2, [2, 1, 1, 1, 2], :no checker_5 0..1, [1, 0, 0, 0, 1], :no checker_5 0..4, [1, 2, 4, 0, 3], :no end
# File lib/choose.rb, line 261 def test_range_instances checker_5 'a'..'a', ['a'] * 5, :no checker_5 'a'..'b', ['b', 'a', 'a', 'a', 'b'], :no checker_5 Xs.new(1)..Xs.new(4), [2, 3, 1, 1, 4].map { |x| Xs.new(x) }, :no end