~ubuntu-branches/ubuntu/intrepid/ruby1.9/intrepid-updates

« back to all changes in this revision

Viewing changes to bootstraptest/test_massign.rb

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2007-09-04 16:01:17 UTC
  • mfrom: (1.1.8 upstream)
  • Revision ID: james.westby@ubuntu.com-20070904160117-i15zckg2nhxe9fyw
Tags: 1.9.0+20070830-2ubuntu1
* Sync from Debian; remaining changes:
  - Add -g to CFLAGS.
* Fixes build failure on ia64.
* Fixes build failure with gcc-4.2 on lpia.
* Robustify check for target_os, fixing build failure on lpia.
* Set Ubuntu maintainer address.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
assert_equal '[[1], 2, 3]', '*v1, (a, b) = [1,[2, 3]]; [v1, a, b]'
 
2
assert_equal '[[1], 2, 3]', '*v1,(*), (a, b) = [1,:x,[2, 3]]; [v1, a, b]'
 
3
 
 
4
assert_equal '[]',          '*a = *nil; a'
 
5
assert_equal '[nil]',       '*a = nil; a'
 
6
assert_equal '2',           'a, a = 1, 2; a', "[ruby-dev:31522]"
 
7
assert_equal '[1, 2]',      'a, b = 1, 2'
 
8
assert_equal '[1, 2]', %q{
 
9
  ans = []
 
10
  trace_var(:$a){|v| ans << v}
 
11
  trace_var(:$b){|v| ans << v}
 
12
  $a, $b = 1, 2
 
13
  ans
 
14
}
 
15
 
 
16
=begin
 
17
# generated by this script:
 
18
 
 
19
3.times{|i|
 
20
  8.times{|e|
 
21
    ary = (0...e).to_a
 
22
    a,b,c,d,e,f = nil
 
23
    vals = %w(a b c d e f)
 
24
    vals[i] = '*' + vals[i]
 
25
    program = "#{vals.join(", ")} = *ary"
 
26
    eval(program)
 
27
    ans = [a,b,c,d,e,f]
 
28
    puts %Q{
 
29
      assert_equal "#{ans.inspect}", %q{
 
30
        ary = #{ary.inspect}
 
31
        #{program}; [a, b, c, d, e, f]
 
32
      }}
 
33
  }
 
34
}
 
35
=end
 
36
 
 
37
      assert_equal "[[], nil, nil, nil, nil, nil]", %q{
 
38
        ary = []
 
39
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
40
      }
 
41
 
 
42
      assert_equal "[[], 0, nil, nil, nil, nil]", %q{
 
43
        ary = [0]
 
44
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
45
      }
 
46
 
 
47
      assert_equal "[[], 0, 1, nil, nil, nil]", %q{
 
48
        ary = [0, 1]
 
49
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
50
      }
 
51
 
 
52
      assert_equal "[[], 0, 1, 2, nil, nil]", %q{
 
53
        ary = [0, 1, 2]
 
54
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
55
      }
 
56
 
 
57
      assert_equal "[[], 0, 1, 2, 3, nil]", %q{
 
58
        ary = [0, 1, 2, 3]
 
59
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
60
      }
 
61
 
 
62
      assert_equal "[[], 0, 1, 2, 3, 4]", %q{
 
63
        ary = [0, 1, 2, 3, 4]
 
64
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
65
      }
 
66
 
 
67
      assert_equal "[[0], 1, 2, 3, 4, 5]", %q{
 
68
        ary = [0, 1, 2, 3, 4, 5]
 
69
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
70
      }
 
71
 
 
72
      assert_equal "[[0, 1], 2, 3, 4, 5, 6]", %q{
 
73
        ary = [0, 1, 2, 3, 4, 5, 6]
 
74
        *a, b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
75
      }
 
76
 
 
77
      assert_equal "[nil, [], nil, nil, nil, nil]", %q{
 
78
        ary = []
 
79
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
80
      }
 
81
 
 
82
      assert_equal "[0, [], nil, nil, nil, nil]", %q{
 
83
        ary = [0]
 
84
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
85
      }
 
86
 
 
87
      assert_equal "[0, [], 1, nil, nil, nil]", %q{
 
88
        ary = [0, 1]
 
89
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
90
      }
 
91
 
 
92
      assert_equal "[0, [], 1, 2, nil, nil]", %q{
 
93
        ary = [0, 1, 2]
 
94
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
95
      }
 
96
 
 
97
      assert_equal "[0, [], 1, 2, 3, nil]", %q{
 
98
        ary = [0, 1, 2, 3]
 
99
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
100
      }
 
101
 
 
102
      assert_equal "[0, [], 1, 2, 3, 4]", %q{
 
103
        ary = [0, 1, 2, 3, 4]
 
104
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
105
      }
 
106
 
 
107
      assert_equal "[0, [1], 2, 3, 4, 5]", %q{
 
108
        ary = [0, 1, 2, 3, 4, 5]
 
109
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
110
      }
 
111
 
 
112
      assert_equal "[0, [1, 2], 3, 4, 5, 6]", %q{
 
113
        ary = [0, 1, 2, 3, 4, 5, 6]
 
114
        a, *b, c, d, e, f = *ary; [a, b, c, d, e, f]
 
115
      }
 
116
 
 
117
      assert_equal "[nil, nil, [], nil, nil, nil]", %q{
 
118
        ary = []
 
119
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
120
      }
 
121
 
 
122
      assert_equal "[0, nil, [], nil, nil, nil]", %q{
 
123
        ary = [0]
 
124
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
125
      }
 
126
 
 
127
      assert_equal "[0, 1, [], nil, nil, nil]", %q{
 
128
        ary = [0, 1]
 
129
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
130
      }
 
131
 
 
132
      assert_equal "[0, 1, [], 2, nil, nil]", %q{
 
133
        ary = [0, 1, 2]
 
134
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
135
      }
 
136
 
 
137
      assert_equal "[0, 1, [], 2, 3, nil]", %q{
 
138
        ary = [0, 1, 2, 3]
 
139
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
140
      }
 
141
 
 
142
      assert_equal "[0, 1, [], 2, 3, 4]", %q{
 
143
        ary = [0, 1, 2, 3, 4]
 
144
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
145
      }
 
146
 
 
147
      assert_equal "[0, 1, [2], 3, 4, 5]", %q{
 
148
        ary = [0, 1, 2, 3, 4, 5]
 
149
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
150
      }
 
151
 
 
152
      assert_equal "[0, 1, [2, 3], 4, 5, 6]", %q{
 
153
        ary = [0, 1, 2, 3, 4, 5, 6]
 
154
        a, b, *c, d, e, f = *ary; [a, b, c, d, e, f]
 
155
      }