PageRenderTime 41ms CodeModel.GetById 18ms RepoModel.GetById 0ms app.codeStats 0ms

/vendor/gems/facets-2.4.5/test/more/test_enumerablepass.rb

https://bitbucket.org/mediashelf/fedora-migrator
Ruby | 72 lines | 43 code | 15 blank | 14 comment | 2 complexity | 31298a4870915498fabf21090290e2a3 MD5 | raw file
Possible License(s): GPL-3.0, GPL-2.0, IPL-1.0, AGPL-1.0, LGPL-3.0
  1. # Test lib/facets/enumerablepass.rb
  2. require 'facets/enumerablepass.rb'
  3. require 'test/unit'
  4. # fixture
  5. class PlusArray
  6. include EnumerablePass
  7. def initialize(arr)
  8. @arr = arr
  9. end
  10. def each(n=0)
  11. @arr.each{ |e| yield(e+n) }
  12. end
  13. end
  14. class TC_Enumerable < Test::Unit::TestCase
  15. def test_collect
  16. t = PlusArray.new([1,2,3])
  17. assert_equal( [5,6,7], t.collect(4){ |e| e } )
  18. end
  19. #def test_each_slice
  20. # t = PlusArray.new([1,2,3,4])
  21. # a = []
  22. # t.each_slice(2,4){ |e,f| a << [e,f] }
  23. # assert_equal( [[5,6],[7,8]], a )
  24. #end
  25. #def test_find
  26. # t = PlusArray.new([1,2,3,4])
  27. # f = t.find(2, :ifnone=>lambda{:NOPE}) { |a| a == 10 }
  28. # assert_equal(:NOPE, f)
  29. #end
  30. def test_grep
  31. # TODO
  32. end
  33. def test_to_a
  34. t = PlusArray.new([1,2,3])
  35. assert_equal( [5,6,7], t.to_a(4) )
  36. end
  37. def test_min
  38. t = PlusArray.new([1,2,3])
  39. assert_equal( 5, t.min(4) )
  40. end
  41. def test_max
  42. t = PlusArray.new([1,2,3])
  43. assert_equal( 7, t.max(4) )
  44. end
  45. def test_include?
  46. t = PlusArray.new([1,2,3])
  47. assert( t.include?(7,4) )
  48. end
  49. def test_select
  50. t = PlusArray.new([1,2,3])
  51. assert_equal( [6], t.select(4){ |x| x == 6 } )
  52. end
  53. def test_reject
  54. t = PlusArray.new([1,2,3])
  55. assert_equal( [5,7], t.reject(4){ |x| x == 6 } )
  56. end
  57. end