diff options
author | nahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-06 02:34:24 +0000 |
---|---|---|
committer | nahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-06 02:34:24 +0000 |
commit | 79c0e644a175754540399ff2148f3fdb5c998339 (patch) | |
tree | a3cd5ab3ba1d5fb8ca8e4341c3d2e4bcb67e44e3 | |
parent | ff1b89a96d0f103ff0c917c458ddd3e36e9b3718 (diff) | |
download | ruby-79c0e644a175754540399ff2148f3fdb5c998339.tar.gz |
* 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
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | MANIFEST | 9 | ||||
-rw-r--r-- | test/inlinetest.rb | 52 | ||||
-rw-r--r-- | test/test_generator.rb | 4 | ||||
-rw-r--r-- | test/test_ipaddr.rb | 4 | ||||
-rw-r--r-- | test/test_pathname.rb | 4 | ||||
-rw-r--r-- | test/test_pp.rb | 4 | ||||
-rw-r--r-- | test/test_prettyprint.rb | 4 | ||||
-rw-r--r-- | test/test_set.rb | 4 | ||||
-rw-r--r-- | test/test_time.rb | 4 | ||||
-rw-r--r-- | test/test_tsort.rb | 4 |
11 files changed, 99 insertions, 0 deletions
@@ -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 diff --git a/test/inlinetest.rb b/test/inlinetest.rb new file mode 100644 index 0000000000..cd1ee0c683 --- /dev/null +++ b/test/inlinetest.rb @@ -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 diff --git a/test/test_generator.rb b/test/test_generator.rb new file mode 100644 index 0000000000..2db04787f1 --- /dev/null +++ b/test/test_generator.rb @@ -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) diff --git a/test/test_ipaddr.rb b/test/test_ipaddr.rb new file mode 100644 index 0000000000..2db04787f1 --- /dev/null +++ b/test/test_ipaddr.rb @@ -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) diff --git a/test/test_pathname.rb b/test/test_pathname.rb new file mode 100644 index 0000000000..ef4da4638c --- /dev/null +++ b/test/test_pathname.rb @@ -0,0 +1,4 @@ +require 'pathname' +require Pathname.new(__FILE__).parent.join('inlinetest.rb') +target = __FILE__.scan(/test_(.*\.rb)$/)[0][0] +InlineTest.loadtest(target) diff --git a/test/test_pp.rb b/test/test_pp.rb new file mode 100644 index 0000000000..ef4da4638c --- /dev/null +++ b/test/test_pp.rb @@ -0,0 +1,4 @@ +require 'pathname' +require Pathname.new(__FILE__).parent.join('inlinetest.rb') +target = __FILE__.scan(/test_(.*\.rb)$/)[0][0] +InlineTest.loadtest(target) diff --git a/test/test_prettyprint.rb b/test/test_prettyprint.rb new file mode 100644 index 0000000000..ef4da4638c --- /dev/null +++ b/test/test_prettyprint.rb @@ -0,0 +1,4 @@ +require 'pathname' +require Pathname.new(__FILE__).parent.join('inlinetest.rb') +target = __FILE__.scan(/test_(.*\.rb)$/)[0][0] +InlineTest.loadtest(target) diff --git a/test/test_set.rb b/test/test_set.rb new file mode 100644 index 0000000000..2db04787f1 --- /dev/null +++ b/test/test_set.rb @@ -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) diff --git a/test/test_time.rb b/test/test_time.rb new file mode 100644 index 0000000000..ef4da4638c --- /dev/null +++ b/test/test_time.rb @@ -0,0 +1,4 @@ +require 'pathname' +require Pathname.new(__FILE__).parent.join('inlinetest.rb') +target = __FILE__.scan(/test_(.*\.rb)$/)[0][0] +InlineTest.loadtest(target) diff --git a/test/test_tsort.rb b/test/test_tsort.rb new file mode 100644 index 0000000000..ef4da4638c --- /dev/null +++ b/test/test_tsort.rb @@ -0,0 +1,4 @@ +require 'pathname' +require Pathname.new(__FILE__).parent.join('inlinetest.rb') +target = __FILE__.scan(/test_(.*\.rb)$/)[0][0] +InlineTest.loadtest(target) |