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
|
#!/usr/bin/env ruby
# encoding: UTF-8
require File.expand_path('../test_helper', __FILE__)
require 'timeout'
# -- Test for bug [#5657]
# http://rubyforge.org/tracker/index.php?func=detail&aid=5657&group_id=1814&atid=7060
class A
attr_accessor :as
def initialize
@as = []
class << @as
def <<(an_a)
super
end
end
end
def <<(an_a)
@as << an_a
end
end
class SingletonTest < TestCase
def test_singleton
result = RubyProf.profile do
a = A.new
a << :first_thing
assert_equal(1, a.as.size)
end
printer = RubyProf::FlatPrinter.new(result)
output = ENV['SHOW_RUBY_PROF_PRINTER_OUTPUT'] == "1" ? STDOUT : ''
printer.print(output)
end
end
|