~ubuntu-branches/ubuntu/trusty/ruby1.9/trusty

« back to all changes in this revision

Viewing changes to bootstraptest/runner.rb

  • Committer: Bazaar Package Importer
  • Author(s): Stephan Hermann
  • Date: 2008-05-16 12:37:06 UTC
  • mfrom: (1.1.10 upstream)
  • Revision ID: james.westby@ubuntu.com-20080516123706-r4llcdfd35aobrjv
Tags: 1.9.0.1-1ubuntu1
* Merge from debian unstable, remaining changes:
  - Robustify check for target_os, fixing build failure on lpia.
* debian/control:
  - ruby1.9 pkg: moved rdoc1.9 suggestion to depends. (LP: #228345)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# $Id: runner.rb 13637 2007-10-05 07:43:34Z akr $
 
1
# $Id: runner.rb 15443 2008-02-12 06:28:23Z naruse $
2
2
 
3
3
# NOTE:
4
4
# Never use optparse in this file.
50
50
  ARGV.delete_if {|arg|
51
51
    case arg
52
52
    when /\A--ruby=(.*)/
53
 
      @ruby = File.expand_path($1)
 
53
      @ruby = $1
 
54
      @ruby.gsub!(/^([^ ]*)/){File.expand_path($1)}
 
55
      @ruby.gsub!(/-I([^ ]*)/){"-I"+File.expand_path($1)}
54
56
      true
55
57
    when /\A--sets=(.*)/
56
58
      tests = Dir.glob("#{File.dirname($0)}/test_{#{$1}}*.rb")
126
128
  end
127
129
end
128
130
 
129
 
def assert_check(testsrc, message = '')
 
131
def assert_check(testsrc, message = '', opt = '')
130
132
  $stderr.puts "\##{@count} #{@location}" if @verbose
131
 
  result = get_result_string(testsrc)
 
133
  result = get_result_string(testsrc, opt)
132
134
  check_coredump
133
135
  faildesc = yield(result)
134
136
  if !faildesc
178
180
  }
179
181
end
180
182
 
 
183
def assert_valid_syntax(testsrc, message = '')
 
184
  newtest
 
185
  assert_check(testsrc, message, '-c') {|result|
 
186
    result if /Syntax OK/ !~ result
 
187
  }
 
188
end
 
189
 
181
190
def assert_normal_exit(testsrc, message = '')
182
191
  newtest
183
192
  $stderr.puts "\##{@count} #{@location}" if @verbose
237
246
  error err.message, message
238
247
end
239
248
 
 
249
def flunk(message = '')
 
250
  newtest
 
251
  $stderr.print 'F'
 
252
  error message, ''
 
253
end
 
254
 
240
255
def pretty(src, desc, result)
241
256
  src = src.sub(/\A.*\n/, '')
242
257
  (/\n/ =~ src ? "\n#{adjust_indent(src)}" : src) + "  #=> #{desc}"
249
264
end
250
265
 
251
266
def untabify(str)
252
 
  str.gsub(/^\t+/) {|tabs| ' ' * (8 * tabs.size) }
 
267
  str.gsub(/^\t+/) {' ' * (8 * $&.size) }
253
268
end
254
269
 
255
270
def make_srcfile(src)
261
276
  filename
262
277
end
263
278
 
264
 
def get_result_string(src)
 
279
def get_result_string(src, opt = '')
265
280
  if @ruby
266
281
    filename = make_srcfile(src)
267
282
    begin
268
 
      `#{@ruby} -W0 #{filename}`
 
283
      `#{@ruby} -W0 #{opt} #{filename}`
269
284
    ensure
270
285
      raise CoreDumpError, "core dumped" if $? and $?.coredump?
271
286
    end