summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-06 02:34:24 +0000
committernahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-01-06 02:34:24 +0000
commit79c0e644a175754540399ff2148f3fdb5c998339 (patch)
treea3cd5ab3ba1d5fb8ca8e4341c3d2e4bcb67e44e3
parentff1b89a96d0f103ff0c917c458ddd3e36e9b3718 (diff)
* 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--ChangeLog6
-rw-r--r--MANIFEST9
-rw-r--r--test/inlinetest.rb52
-rw-r--r--test/test_generator.rb4
-rw-r--r--test/test_ipaddr.rb4
-rw-r--r--test/test_pathname.rb4
-rw-r--r--test/test_pp.rb4
-rw-r--r--test/test_prettyprint.rb4
-rw-r--r--test/test_set.rb4
-rw-r--r--test/test_time.rb4
-rw-r--r--test/test_tsort.rb4
11 files changed, 99 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index f9bb939d6e..5ca7b72443 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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;
diff --git a/MANIFEST b/MANIFEST
index 2247390266..815e10f2cd 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -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)