facets 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,134 +0,0 @@
1
- # _____ _
2
- # |_ _|__ ___| |_
3
- # | |/ _ \/ __| __|
4
- # | | __/\__ \ |
5
- # |_|\___||___/\__|
6
- #
7
- # for lib/facets/enumerable/partition.rb
8
- #
9
- # Extracted Mon Sep 03 16:23:07 -0700 2007
10
- # w/ Test Extraction Ratchet
11
- #
12
-
13
- require 'facets/enumerable/partition.rb'
14
-
15
-
16
-
17
- require 'test/unit'
18
- require 'set'
19
-
20
- class TestEnumerable < Test::Unit::TestCase
21
-
22
- # def test_op_mod
23
- # a = [:A,:B,:C]
24
- # assert_equal( a[1], a/1 )
25
- # assert_equal( :B, a/1 )
26
- # end
27
- #
28
- # def test_op_div
29
- # a = [:A,:B,:C]
30
- # assert_equal( a[1], a/1 )
31
- # assert_equal( :B, a/1 )
32
- # end
33
-
34
- def test_partition_by
35
- x = (1..5).partition_by{ |n| n % 3 }
36
- o = { 0 => [3], 1 => [1, 4], 2 => [2,5] }
37
- assert_equal( o, x )
38
- x = ["I had", 1, "dollar and", 50, "cents"].partition_by { |e| e.class }
39
- o = { String => ["I had","dollar and","cents"], Fixnum => [1,50] }
40
- assert_equal( o, x )
41
- end
42
-
43
- def test_each_by_01
44
- x = []
45
- [1,2,3,4].each_by{ |a,b| x << [a,b] }
46
- o = [[1,2],[3,4]]
47
- assert_equal( o, x )
48
- end
49
-
50
- def test_each_by_02
51
- x = []
52
- [1,2,3,4,5].each_by{ |a,b,c| x << [a,b,c] }
53
- o = [[1,2,3],[4,5,nil]]
54
- assert_equal( o, x )
55
- end
56
-
57
- def test_each_by_03
58
- x = []
59
- [1,2,3,4].each_by(2){ |a,b| x << [a,b] }
60
- o = [[1,2],[3,4]]
61
- assert_equal( o, x )
62
- end
63
-
64
- def test_each_by_04
65
- x = []
66
- [1,2,3,4,5,6,7,8].each_by(4){ |*a| x << a }
67
- o = [ [[1,2,3,4]],[[5,6,7,8]] ]
68
- assert_equal( o, x )
69
- end
70
-
71
- def test_each_by_05
72
- x = []
73
- [1,2,3,4,5,6].each_by(3){ |*a| x << a }
74
- o = [ [[1,2,3]],[[4,5,6]] ]
75
- assert_equal( o, x )
76
- end
77
-
78
- def test_each_by_06
79
- a = [1,2,3,4,5,6]
80
- r = []
81
- a.each_by(2){ |x,y| r << [x,y] }
82
- assert_equal( [[1,2],[3,4],[5,6]], r )
83
- end
84
-
85
- def test_each_by_07
86
- a = [1,2,3,4,5,6]
87
- r = []
88
- a.each_by(3){ |*e| r << e }
89
- assert_equal( [ [[1,2,3]], [[4,5,6]] ], r )
90
- end
91
-
92
- def test_each_pair
93
- r = []
94
- a = [1,2,3,4]
95
- a.each_pair{ |a,b| r << [a,b] }
96
- assert_equal( [[1,2],[3,4]], r )
97
- end
98
-
99
- def test_each_unique_pair
100
- r = []
101
- a = [1,2,3,4]
102
- a.each_unique_pair{ |a,b| r << [a,b] }
103
- assert_equal( [[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]], r )
104
- end
105
-
106
- def test_eachn
107
- x = []
108
- [1,2,3,4].eachn{ |a,b| x << [a,b] }
109
- o = [[1,2],[3,4]]
110
- assert_equal( o, x )
111
-
112
- x = []
113
- [1,2,3,4,5].eachn{ |a,b,c| x << [a,b,c] }
114
- o = [[1,2,3],[4,5,nil]]
115
- assert_equal( o, x )
116
- end
117
-
118
- def test_each_combination
119
- r = []
120
- a = [1,2,3,4]
121
- a.each_combination(2){ |a,b| r << [a,b] }
122
- assert_equal( [[1,2],[1,3],[1,4],[2,3],[2,4],[3,4]], r )
123
- end
124
-
125
-
126
- def test_collect_with_index
127
- a = [1,2,3].collect_with_index{ |e,i| e*i }
128
- assert_equal( [0,2,6], a )
129
- end
130
-
131
- end
132
-
133
-
134
-