diff options
Diffstat (limited to 'yarvtest/test_yield.rb')
-rw-r--r-- | yarvtest/test_yield.rb | 414 |
1 files changed, 207 insertions, 207 deletions
diff --git a/yarvtest/test_yield.rb b/yarvtest/test_yield.rb index 72b2182099..56fa48b0c8 100644 --- a/yarvtest/test_yield.rb +++ b/yarvtest/test_yield.rb @@ -1,207 +1,207 @@ -require 'yarvtest/yarvtest'
-class TestYield < YarvTestBase
- def test_simple
- ae %q{
- def iter
- yield
- end
- iter{
- 1
- }
- }
- end
-
- def test_hash_each
- ae %q{
- h = {:a => 1}
- a = []
- h.each{|k, v|
- a << [k, v]
- }
- h.each{|kv|
- a << kv
- }
- a
- }
- end
-
- def test_ary_each
- ae %q{
- ans = []
- ary = [1,2,3]
- ary.each{|a, b, c, d|
- ans << [a, b, c, d]
- }
- ary.each{|a, b, c|
- ans << [a, b, c]
- }
- ary.each{|a, b|
- ans << [a, b]
- }
- ary.each{|a|
- ans << [a]
- }
- ans
- }
- end
-
- def test_iter
- ae %q{
- def iter *args
- yield *args
- end
-
- ans = []
- ary = [1,2,3]
- ary.each{|a, b, c, d|
- ans << [a, b, c, d]
- }
- ary.each{|a, b, c|
- ans << [a, b, c]
- }
- ary.each{|a, b|
- ans << [a, b]
- }
- ary.each{|a|
- ans << [a]
- }
- ans
- }
- end
-
- def test_iter2
- ae %q{
- def iter args
- yield *args
- end
- ans = []
- iter([]){|a, b|
- ans << [a, b]
- }
- iter([1]){|a, b|
- ans << [a, b]
- }
- iter([1, 2]){|a, b|
- ans << [a, b]
- }
- iter([1, 2, 3]){|a, b|
- ans << [a, b]
- }
- ans
- }
- ae %q{
- def iter args
- yield *args
- end
- ans = []
-
- iter([]){|a|
- ans << a
- }
- iter([1]){|a|
- ans << a
- }
- iter([1, 2]){|a|
- ans << a
- }
- iter([1, 2, 3]){|a|
- ans << a
- }
- ans
- }
- end
-
- def test_1_ary_and_n_params
- ae %q{
- def iter args
- yield args
- end
- ans = []
- iter([]){|a, b|
- ans << [a, b]
- }
- iter([1]){|a, b|
- ans << [a, b]
- }
- iter([1, 2]){|a, b|
- ans << [a, b]
- }
- iter([1, 2, 3]){|a, b|
- ans << [a, b]
- }
- ans
- }
- end
-
- def test_1_ary_and_1_params
- ae %q{
- def iter args
- yield args
- end
- ans = []
- iter([]){|a|
- ans << a
- }
- iter([1]){|a|
- ans << a
- }
- iter([1, 2]){|a|
- ans << a
- }
- iter([1, 2, 3]){|a|
- ans << a
- }
- ans
- }
- end
-
- def test_argscat
- ae %q{
- def iter
- yield 1, *[2, 3]
- end
-
- iter{|a, b, c|
- [a, b, c]
- }
- }
- ae %q{
- def iter
- yield 1, *[]
- end
-
- iter{|a, b, c|
- [a, b, c]
- }
- }
- if false
- ae %q{
- def iter
- yield 1, *2
- end
-
- iter{|a, b, c|
- [a, b, c]
- }
- }
- end
- end
-
- def test_massgin
- ae %q{
- ans = []
- [[1, [2, 3]], [4, [5, 6]]].each{|a, (b, c)|
- ans << [a, b, c]
- }
- ans
- }
- ae %q{
- ans = []
- [[1, [2, 3]], [4, [5, 6]]].map{|a, (b, c)|
- ans << [a, b, c]
- } + ans
- }
- end
-end
-
-
+require 'yarvtest/yarvtest' +class TestYield < YarvTestBase + def test_simple + ae %q{ + def iter + yield + end + iter{ + 1 + } + } + end + + def test_hash_each + ae %q{ + h = {:a => 1} + a = [] + h.each{|k, v| + a << [k, v] + } + h.each{|kv| + a << kv + } + a + } + end + + def test_ary_each + ae %q{ + ans = [] + ary = [1,2,3] + ary.each{|a, b, c, d| + ans << [a, b, c, d] + } + ary.each{|a, b, c| + ans << [a, b, c] + } + ary.each{|a, b| + ans << [a, b] + } + ary.each{|a| + ans << [a] + } + ans + } + end + + def test_iter + ae %q{ + def iter *args + yield *args + end + + ans = [] + ary = [1,2,3] + ary.each{|a, b, c, d| + ans << [a, b, c, d] + } + ary.each{|a, b, c| + ans << [a, b, c] + } + ary.each{|a, b| + ans << [a, b] + } + ary.each{|a| + ans << [a] + } + ans + } + end + + def test_iter2 + ae %q{ + def iter args + yield *args + end + ans = [] + iter([]){|a, b| + ans << [a, b] + } + iter([1]){|a, b| + ans << [a, b] + } + iter([1, 2]){|a, b| + ans << [a, b] + } + iter([1, 2, 3]){|a, b| + ans << [a, b] + } + ans + } + ae %q{ + def iter args + yield *args + end + ans = [] + + iter([]){|a| + ans << a + } + iter([1]){|a| + ans << a + } + iter([1, 2]){|a| + ans << a + } + iter([1, 2, 3]){|a| + ans << a + } + ans + } + end + + def test_1_ary_and_n_params + ae %q{ + def iter args + yield args + end + ans = [] + iter([]){|a, b| + ans << [a, b] + } + iter([1]){|a, b| + ans << [a, b] + } + iter([1, 2]){|a, b| + ans << [a, b] + } + iter([1, 2, 3]){|a, b| + ans << [a, b] + } + ans + } + end + + def test_1_ary_and_1_params + ae %q{ + def iter args + yield args + end + ans = [] + iter([]){|a| + ans << a + } + iter([1]){|a| + ans << a + } + iter([1, 2]){|a| + ans << a + } + iter([1, 2, 3]){|a| + ans << a + } + ans + } + end + + def test_argscat + ae %q{ + def iter + yield 1, *[2, 3] + end + + iter{|a, b, c| + [a, b, c] + } + } + ae %q{ + def iter + yield 1, *[] + end + + iter{|a, b, c| + [a, b, c] + } + } + if false + ae %q{ + def iter + yield 1, *2 + end + + iter{|a, b, c| + [a, b, c] + } + } + end + end + + def test_massgin + ae %q{ + ans = [] + [[1, [2, 3]], [4, [5, 6]]].each{|a, (b, c)| + ans << [a, b, c] + } + ans + } + ae %q{ + ans = [] + [[1, [2, 3]], [4, [5, 6]]].map{|a, (b, c)| + ans << [a, b, c] + } + ans + } + end +end + + |