* test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,

test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
          test_time.rb,test_tsort.rb: added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nahi 2004-01-06 02:34:24 +00:00
Родитель ff1b89a96d
Коммит 79c0e644a1
11 изменённых файлов: 99 добавлений и 0 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Tue Jan 6 11:29:43 2004 NAKAMURA, Hiroshi <nakahiro@sarion.co.jp>
* test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
test_time.rb,test_tsort.rb: added.
Tue Jan 6 09:38:27 2004 NAKAMURA, Hiroshi <nakahiro@sarion.co.jp>
* import soap4r/1.5.2;

Просмотреть файл

@ -693,6 +693,7 @@ test/drb/ut_timerholder.rb
test/fileutils/fileasserts.rb
test/fileutils/test_fileutils.rb
test/fileutils/test_nowrite.rb
test/inlinetest.rb
test/logger/test_logger.rb
test/monitor/test_monitor.rb
test/optparse/test_noarg.rb
@ -775,6 +776,14 @@ test/testunit/test_testsuite.rb
test/testunit/util/test_backtracefilter.rb
test/testunit/util/test_observable.rb
test/testunit/util/test_procwrapper.rb
test/test_generator.rb
test/test_ipaddr.rb
test/test_pathname.rb
test/test_pp.rb
test/test_prettyprint.rb
test/test_set.rb
test/test_time.rb
test/test_tsort.rb
test/uri/test_common.rb
test/uri/test_ftp.rb
test/uri/test_generic.rb

52
test/inlinetest.rb Normal file
Просмотреть файл

@ -0,0 +1,52 @@
module InlineTest
def loadtest(libname)
in_critical do
in_progname(libpath(libname)) do
Kernel.load(libname)
end
end
end
module_function :loadtest
def loadtest__END__part(libname)
program = File.open(libpath(libname)) { |f| f.read }
mainpart, endpart = program.split(/^__END__$/)
if endpart.nil?
raise RuntimeError.new("No __END__ part in the library '#{filename}'")
end
require(libname)
eval(endpart)
end
module_function :loadtest__END__part
def self.in_critical
th_criticality = Thread.critical
Thread.critical = true
begin
yield
ensure
Thread.critical = th_criticality
end
end
def self.in_progname(progname)
progname_backup = $0.dup
$0.replace(progname)
begin
yield
ensure
$0.replace(progname_backup)
end
end
def self.libpath(libname)
libpath = nil
$:.find do |path|
File.file?(testname = File.join(path, libname)) && libpath = testname
end
if libpath.nil?
raise RuntimeError.new("'#{libname}' not found")
end
libpath
end
end

4
test/test_generator.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest__END__part(target)

4
test/test_ipaddr.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest__END__part(target)

4
test/test_pathname.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest(target)

4
test/test_pp.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest(target)

4
test/test_prettyprint.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest(target)

4
test/test_set.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest__END__part(target)

4
test/test_time.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest(target)

4
test/test_tsort.rb Normal file
Просмотреть файл

@ -0,0 +1,4 @@
require 'pathname'
require Pathname.new(__FILE__).parent.join('inlinetest.rb')
target = __FILE__.scan(/test_(.*\.rb)$/)[0][0]
InlineTest.loadtest(target)