forked from jruby/jruby
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_array.rb
More file actions
44 lines (36 loc) · 1.04 KB
/
Copy pathtest_array.rb
File metadata and controls
44 lines (36 loc) · 1.04 KB
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
require 'test/unit'
## NOTE: Most of the tests that were here have been moved to the RubySpec.
class TestArray < Test::Unit::TestCase
##### splat test #####
class ATest
def to_a; 1; end
end
def test_splatting
proc { |a| assert_equal(1, a) }.call(*1)
assert_raises(TypeError) { proc { |a| }.call(*ATest.new) }
end
def test_initialize_on_frozen_array
assert_raises(RuntimeError) {
[1, 2, 3].freeze.instance_eval { initialize }
}
end
def test_uniq_with_block_after_slice
assert_equal [1], [1, 1, 1][1,2].uniq { |x| x }
assert_equal [1], [1, 1, 1][1,2].uniq! { |x| x }
end
def test_uniq_with_block_after_slice
assert_equal [1], [1, 1, 1][1,2].uniq { |x| x }
assert_equal [1], [1, 1, 1][1,2].uniq! { |x| x }
end
# JRUBY-4157
def test_shared_ary_slice
assert_equal [4,5,6], [1,2,3,4,5,6].slice(1,5).slice!(2,3)
end
# JRUBY-4206
def test_map
methods = %w{map map! collect collect!}
methods.each { |method|
assert_no_match /Enumerable/, [].method(method).to_s
}
end
end