myobie-mime-types 1.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +101 -0
- data/Install +16 -0
- data/LICENCE +18 -0
- data/Rakefile +208 -0
- data/mime-types.gemspec +75 -0
- data/pre-setup.rb +46 -0
- data/setup.rb +1366 -0
- metadata +98 -0
data/ChangeLog
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
= MIME::Types Change Log
|
2
|
+
|
3
|
+
Unless explicitly stated differently are all changes produced by Austin
|
4
|
+
Ziegler <mime-types@halostatue.ca>.
|
5
|
+
|
6
|
+
== MIME::Types 1.15
|
7
|
+
* Removed lib/mime/type.rb to form a single MIME::Types database source. It
|
8
|
+
is unlikely that one will ever need MIME::Type without MIME::Types.
|
9
|
+
* Re-synchronized the MIME type list with the sources, focusing primarily on
|
10
|
+
the IANA list.
|
11
|
+
* Added more detailed source information for MIME::Type objects.
|
12
|
+
* Changed MIME::Types from a module to a class with a default instance. There
|
13
|
+
should be no difference in usage.
|
14
|
+
* Removed MIME::Types::DATA_VERSION; it is now an attribute on the
|
15
|
+
MIME::Types instance.
|
16
|
+
* NOTE: Synchronization with the Perl version of MIME::Types is no longer a
|
17
|
+
priority as of this release. The data format and information has changed.
|
18
|
+
* Removed MIME::Types.by_suffix and MIME::Types.by_mediatype.
|
19
|
+
|
20
|
+
== MIME::Types 1.13.1
|
21
|
+
* Fixed a problem with the installer running tests. This now works.
|
22
|
+
* Improved the implementation of MIME::Type.signature?
|
23
|
+
* Moved code around to use the class << self idiom instead of always
|
24
|
+
prepending the module/class name.
|
25
|
+
* Added two new best-guess implementations of functions found in Perl's
|
26
|
+
MIME::Types implementation (1.13). Do not rely on these until the purpose
|
27
|
+
and implementation is stabilised.
|
28
|
+
* Updated the MIME list to reflect changes noted by
|
29
|
+
Ville Skytt� <ville.skytta@iki.fi>.
|
30
|
+
* Added a new constant to MIME::Types, DATA_VERSION. This will allow the Ruby
|
31
|
+
version number to be updated separately from the Perl version while keeping
|
32
|
+
the MIME Type list version in sync.
|
33
|
+
|
34
|
+
== MIME::Types 1.13
|
35
|
+
! WARNING: This version changes the API of MIME::Types !
|
36
|
+
! WARNING: This version is compatible with Ruby 1.8 and higher ONLY !
|
37
|
+
* Removed dependency on InstallPackage; offering 1.13 as either .tar.gz or
|
38
|
+
.gem.
|
39
|
+
* Split into two files, mime/type.rb and mime/types.rb. This will make
|
40
|
+
maintaining the list of changes easier.
|
41
|
+
* Changed the MIME::Type construction API. Accepts only a single String
|
42
|
+
argument (but does no named type-checking) and yields self.
|
43
|
+
* Removed private methods #init_extensions, #init_encoding, and #init_system
|
44
|
+
and replaced with #extensions=, #encoding=, and #system=.
|
45
|
+
* Added #default_encoding to return 'quoted-printable' or 'base64' depending
|
46
|
+
on the media type of the MIME type.
|
47
|
+
* Added #raw_media_type and #raw_sub_type to provide the non-simplified
|
48
|
+
versions of the media type and subtype.
|
49
|
+
* Alternative constructors MIME::Type.from_array, MIME::Type.from_hash, and
|
50
|
+
MIME::Type.from_mime_type added to compensate for the removal of named type
|
51
|
+
checking in the original constructor.
|
52
|
+
* Added #to_str, #to_a, and #to_hash methods. The latter two will provide
|
53
|
+
output suitable for use in #from_array and #from_hash.
|
54
|
+
* Removed "binary" encoding and enforced the use of a valid encoding string.
|
55
|
+
* Added #system? returning true if the MIME::Type is an OS-specific
|
56
|
+
MIME::Type.
|
57
|
+
* Added #platform? returning true if the MIME::Type is an OS-specific
|
58
|
+
MIME::Type for the current RUBY_PLATFORM.
|
59
|
+
* Added #like? returning true if the simplified type matches the other value
|
60
|
+
provided. #<'application/x-excel'>.like?('application/excel') is true.
|
61
|
+
* Added #complete? returning true if the MIME::Type specifies an extension
|
62
|
+
list.
|
63
|
+
* Updated the MIME type list to reflect additions by Mark Overmeer for Perl's
|
64
|
+
MIME::Types 1.12 and the official IANA list as of 2004.04.06. A number of
|
65
|
+
formerly "registered" MIME types are now no longer registered (e.g.,
|
66
|
+
application/excel is now application/x-excel). This ensures that the
|
67
|
+
simplified type still works with applications, but does not report an
|
68
|
+
unregistered type as registered.
|
69
|
+
* Restored MIME type list to Mark Overmeer's format to facilitate easy
|
70
|
+
exchange between the two projects.
|
71
|
+
* Added additional unit tests from Mark Overmeer's 1.12 version.
|
72
|
+
|
73
|
+
== MIME::Types 1.07
|
74
|
+
* Changed version numbering to match Perl MIME::Types 1.07.
|
75
|
+
* Re-synchronized with Mark Overmeer's list in Perl PMIME::Types 1.07.
|
76
|
+
- [NN Poster] updated the attributes for the PGP types.
|
77
|
+
|
78
|
+
== MIME::Types 1.005
|
79
|
+
* Changed to Phil Thomson's InstallPackage.
|
80
|
+
* Added several types from Perl MIME::Types 1.005.
|
81
|
+
* Cleaned up data format; some data formats will show up with proper data now.
|
82
|
+
|
83
|
+
== MIME::Types 1.004
|
84
|
+
* Updated to match Perl MIME::Types 1.004, links credited to Dan Puro. Adds
|
85
|
+
new reference list to http://www.indiana.edu/cgi-bin-local/mimetypes
|
86
|
+
* Removed InvalidType and replaced with TypeError.
|
87
|
+
* Changed instances of #type to #class.
|
88
|
+
* Cleaned up how simplified versions are created.
|
89
|
+
|
90
|
+
== MIME::Types 1.003
|
91
|
+
* Initial release based on Perl MIME::Types 1.003.
|
92
|
+
|
93
|
+
#--
|
94
|
+
# MIME::Types for Ruby
|
95
|
+
# http://rubyforge.org/projects/mime-types/
|
96
|
+
# Copyright 2003 - 2006 Austin Ziegler.
|
97
|
+
# Licensed under a MIT-style licence.
|
98
|
+
#
|
99
|
+
# $Id$
|
100
|
+
#++
|
101
|
+
# vim: sts=2 sw=2 ts=4 et ai tw=77
|
data/Install
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
Installing this package is as simple as:
|
2
|
+
|
3
|
+
% ruby setup.rb
|
4
|
+
|
5
|
+
Alternatively, you can use the RubyGem version of MIME::Types available as
|
6
|
+
mime-types-1.15.gem from the usual sources.
|
7
|
+
|
8
|
+
#--
|
9
|
+
# MIME::Types for Ruby
|
10
|
+
# http://rubyforge.org/projects/mime-types/
|
11
|
+
# Copyright 2003 - 2006 Austin Ziegler.
|
12
|
+
# Licensed under a MIT-style licence.
|
13
|
+
#
|
14
|
+
# $Id$
|
15
|
+
#++
|
16
|
+
# vim: sts=2 sw=2 ts=4 et ai tw=77
|
data/LICENCE
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
= MIME::Types for Ruby
|
2
|
+
Homepage:: http://rubyforge.org/projects/mime-types/
|
3
|
+
Copyright:: Copyright (c) 2003 - 2006 Austin Ziegler.
|
4
|
+
Summary:: Ruby's licence, Perl Aristic Licence,
|
5
|
+
GNU GPL version 2 (or later)
|
6
|
+
|
7
|
+
The text of the Ruby licence can be found at:
|
8
|
+
http://www.ruby-lang.org/en/LICENSE.txt
|
9
|
+
|
10
|
+
The text of the Perl Artistic Licence can be found at:
|
11
|
+
http://www.perl.com/pub/a/language/misc/Artistic.html
|
12
|
+
|
13
|
+
The text of the GNU GPL can be found at: http://www.gnu.org/copyleft/gpl.html
|
14
|
+
|
15
|
+
If you do not accept one of these licences, you may not use this software.
|
16
|
+
|
17
|
+
$Id$
|
18
|
+
# vim: sts=2 sw=2 ts=4 et ai tw=77
|
data/Rakefile
ADDED
@@ -0,0 +1,208 @@
|
|
1
|
+
#! /usr/bin/env rake
|
2
|
+
#--
|
3
|
+
# MIME::Types for Ruby
|
4
|
+
# http://rubyforge.org/projects/mime-types/
|
5
|
+
# Copyright 2003 - 2005 Austin Ziegler.
|
6
|
+
# Licensed under a MIT-style licence.
|
7
|
+
#
|
8
|
+
# $Id$
|
9
|
+
#++
|
10
|
+
require 'meta_project'
|
11
|
+
require 'rake/gempackagetask'
|
12
|
+
require 'rake/contrib/xforge'
|
13
|
+
require 'rake/clean'
|
14
|
+
|
15
|
+
require 'gmailer'
|
16
|
+
|
17
|
+
require 'archive/tar/minitar'
|
18
|
+
require 'zlib'
|
19
|
+
|
20
|
+
$LOAD_PATH.unshift('lib')
|
21
|
+
|
22
|
+
require 'mime/types'
|
23
|
+
|
24
|
+
$version = MIME::Types::VERSION
|
25
|
+
$name = MIME::Types.to_s
|
26
|
+
$project = MetaProject::Project::XForge::RubyForge.new('mime-types')
|
27
|
+
$distdir = "mime-types-#$version"
|
28
|
+
$tardist = "../#$distdir.tar.gz"
|
29
|
+
|
30
|
+
$release_date = nil
|
31
|
+
$release_date = Time.parse(ENV['RELEASE_DATE']) if ENV['RELEASE_DATE']
|
32
|
+
|
33
|
+
desc "Run the tests for #$name."
|
34
|
+
task :test do |t|
|
35
|
+
require 'test/unit/testsuite'
|
36
|
+
require 'test/unit/ui/console/testrunner'
|
37
|
+
|
38
|
+
runner = Test::Unit::UI::Console::TestRunner
|
39
|
+
|
40
|
+
$LOAD_PATH.unshift('tests')
|
41
|
+
$stderr.puts "Checking for test cases:" if t.verbose
|
42
|
+
Dir['tests/tc_*.rb'].each do |testcase|
|
43
|
+
$stderr.puts "\t#{testcase}" if t.verbose
|
44
|
+
load testcase
|
45
|
+
end
|
46
|
+
|
47
|
+
suite = Test::Unit::TestSuite.new($name)
|
48
|
+
|
49
|
+
ObjectSpace.each_object(Class) do |testcase|
|
50
|
+
suite << testcase.suite if testcase < Test::Unit::TestCase
|
51
|
+
end
|
52
|
+
|
53
|
+
runner.run(suite)
|
54
|
+
end
|
55
|
+
|
56
|
+
desc "Look for TODO and FIXME tags in the code"
|
57
|
+
task :todo do
|
58
|
+
rx = %r{#.*(FIXME|TODO|TBD|DEPRECATED)}
|
59
|
+
Pathname.new(File.dirname(__FILE__)).egrep(rx) do |match|
|
60
|
+
puts match
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
spec = eval(File.read("mime-types.gemspec"))
|
65
|
+
spec.version = $version
|
66
|
+
desc "Build the RubyGem for #$name."
|
67
|
+
task :gem => [ :test ]
|
68
|
+
Rake::GemPackageTask.new(spec) do |g|
|
69
|
+
g.need_tar = false
|
70
|
+
g.need_zip = false
|
71
|
+
g.package_dir = ".."
|
72
|
+
end
|
73
|
+
|
74
|
+
desc "Build a #$name .tar.gz distribution."
|
75
|
+
task :tar => [ $tardist ]
|
76
|
+
file $tardist => [ :test ] do |t|
|
77
|
+
current = File.basename(Dir.pwd)
|
78
|
+
Dir.chdir("..") do
|
79
|
+
begin
|
80
|
+
files = %W(bin/**/* lib/**/* tests/**/* ChangeLog README LICENCE
|
81
|
+
Rakefile mime-types.gemspec setup.rb pre-setup.rb)
|
82
|
+
files = FileList[files.map { |file| File.join(current, file) }].to_a
|
83
|
+
files.map! do |dd|
|
84
|
+
ddnew = dd.gsub(/^#{current}/, $distdir)
|
85
|
+
mtime = $release_date || File.stat(dd).mtime
|
86
|
+
if File.directory?(dd)
|
87
|
+
{ :name => ddnew, :mode => 0755, :dir => true, :mtime => mtime }
|
88
|
+
else
|
89
|
+
if dd =~ %r{bin/}
|
90
|
+
mode = 0755
|
91
|
+
else
|
92
|
+
mode = 0644
|
93
|
+
end
|
94
|
+
data = File.open(dd, "rb") { |ff| ff.read }
|
95
|
+
{ :name => ddnew, :mode => mode, :data => data, :size =>
|
96
|
+
data.size, :mtime => mtime }
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
ff = File.open(t.name.gsub(%r{^\.\./}o, ''), "wb")
|
101
|
+
gz = Zlib::GzipWriter.new(ff)
|
102
|
+
tw = Archive::Tar::Minitar::Writer.new(gz)
|
103
|
+
|
104
|
+
files.each do |entry|
|
105
|
+
if entry[:dir]
|
106
|
+
tw.mkdir(entry[:name], entry)
|
107
|
+
else
|
108
|
+
tw.add_file_simple(entry[:name], entry) { |os| os.write(entry[:data]) }
|
109
|
+
end
|
110
|
+
end
|
111
|
+
ensure
|
112
|
+
tw.close if tw
|
113
|
+
gz.finish if gz
|
114
|
+
ff.close
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
118
|
+
task $tardist => [ :test ]
|
119
|
+
|
120
|
+
desc "Build the RDoc documentation for #$name."
|
121
|
+
task :docs do
|
122
|
+
require 'rdoc/rdoc'
|
123
|
+
rdoc_options = %W(--title #$name --main README --line-numbers)
|
124
|
+
files = FileList[*%w(README LICENCE ChangeLog bin/**/*.rb lib/**/*.rb)]
|
125
|
+
rdoc_options += files.to_a
|
126
|
+
RDoc::RDoc.new.document(rdoc_options)
|
127
|
+
end
|
128
|
+
|
129
|
+
task :verify_rubyforge do
|
130
|
+
raise "RUBYFORGE_USER environment variable not set!" unless ENV['RUBYFORGE_USER']
|
131
|
+
raise "RUBYFORGE_PASSWORD environment variable not set!" unless ENV['RUBYFORGE_PASSWORD']
|
132
|
+
end
|
133
|
+
|
134
|
+
task :verify_gmail do
|
135
|
+
raise "GMAIL_USER environment variable not set!" unless ENV['GMAIL_USER']
|
136
|
+
raise "GMAIL_PASSWORD environment variable not set!" unless ENV['GMAIL_PASSWORD']
|
137
|
+
end
|
138
|
+
|
139
|
+
desc "Release files on RubyForge."
|
140
|
+
task :release_files => [ :verify_rubyforge, :tar, :gem ] do
|
141
|
+
release_files = FileList[$tardist, "../#$distdir.gem"]
|
142
|
+
Rake::XForge::Release.new($project) do |release|
|
143
|
+
release.user_name = ENV['RUBYFORGE_USER']
|
144
|
+
release.password = ENV['RUBYFORGE_PASSWORD']
|
145
|
+
release.files = release_files.to_a
|
146
|
+
release.release_name = "#$name #$version"
|
147
|
+
release.package_name = "mime-types"
|
148
|
+
|
149
|
+
notes = []
|
150
|
+
File.open("README") do |file|
|
151
|
+
file.each do |line|
|
152
|
+
line.chomp!
|
153
|
+
line.gsub!(/^#.*$/, '') and next
|
154
|
+
notes << line
|
155
|
+
end
|
156
|
+
end
|
157
|
+
release.release_notes = notes.join("\n")
|
158
|
+
|
159
|
+
changes = []
|
160
|
+
File.open("ChangeLog") do |file|
|
161
|
+
current = true
|
162
|
+
|
163
|
+
file.each do |line|
|
164
|
+
line.chomp!
|
165
|
+
current = false if current and line =~ /^==/
|
166
|
+
break if line.empty? and not current
|
167
|
+
changes << line
|
168
|
+
end
|
169
|
+
end
|
170
|
+
release.release_changes = changes.join("\n")
|
171
|
+
end
|
172
|
+
end
|
173
|
+
|
174
|
+
desc "Publish news on RubyForge"
|
175
|
+
task :publish_news => [ :verify_rubyforge, :tar, :gem ] do
|
176
|
+
Rake::XForge::NewsPublisher.new($project) do |news|
|
177
|
+
news.user_name = ENV['RUBYFORGE_USER']
|
178
|
+
news.password = ENV['RUBYFORGE_PASSWORD']
|
179
|
+
news.subject = "#$name #$version Released"
|
180
|
+
news.changes_file = nil
|
181
|
+
|
182
|
+
details = []
|
183
|
+
File.open("Release-Announcement") do |file|
|
184
|
+
file.each do |line|
|
185
|
+
line.chomp!
|
186
|
+
break if line =~ /^=/
|
187
|
+
details << line
|
188
|
+
end
|
189
|
+
end
|
190
|
+
news.details = details.join("\n")
|
191
|
+
end
|
192
|
+
end
|
193
|
+
|
194
|
+
desc "Post a release announcement via GMail."
|
195
|
+
task :email_announcement => [ :verify_gmail ] do
|
196
|
+
GMailer.connect(ENV["GMAIL_USER"], ENV["GMAIL_PASSWORD"]) do |gmail|
|
197
|
+
gmail.send :to => "ruby-talk@ruby-lang.org, #{ENV['GMAIL_USER']}@gmail.com",
|
198
|
+
:subject => "[ANN] #$name #$version",
|
199
|
+
:body => File.read("Release-Announcement")
|
200
|
+
end
|
201
|
+
end
|
202
|
+
|
203
|
+
desc "Release the latest version."
|
204
|
+
task :release => [ :verify_rubyforge, :verify_gmail, :release_files,
|
205
|
+
:publish_news, :email_announcement, :docs ]
|
206
|
+
|
207
|
+
desc "Build everything."
|
208
|
+
task :default => [ :tar, :gem ]
|
data/mime-types.gemspec
ADDED
@@ -0,0 +1,75 @@
|
|
1
|
+
# Gem::Specification.new do |s|
|
2
|
+
# s.name = %q{mime-types}
|
3
|
+
# s.version = %q{1.15.1}
|
4
|
+
# s.summary = %q{Manages a MIME Content-Type that will return the Content-Type for a given filename.}
|
5
|
+
# s.platform = Gem::Platform::RUBY
|
6
|
+
#
|
7
|
+
# s.has_rdoc = true
|
8
|
+
# s.rdoc_options = %w(--title MIME::Types --main README --line-numbers)
|
9
|
+
# s.extra_rdoc_files = %w(README ChangeLog Install)
|
10
|
+
#
|
11
|
+
# s.test_files = %w{tests/testall.rb}
|
12
|
+
#
|
13
|
+
# s.require_paths = %w{lib}
|
14
|
+
#
|
15
|
+
# s.files = FileList[*%w(bin/**/* lib/**/* tests/**/* ChangeLog README
|
16
|
+
# LICENCE setup.rb Rakefile mime-types.gemspec
|
17
|
+
# pre-setup.rb)].to_a.delete_if do |item|
|
18
|
+
# item.include?("CVS") or item.include?(".svn") or
|
19
|
+
# item == "install.rb" or item =~ /~$/ or
|
20
|
+
# item =~ /gem(?:spec)?$/
|
21
|
+
# end
|
22
|
+
#
|
23
|
+
# s.author = %q{Austin Ziegler (Nathan Herald additions)}
|
24
|
+
# s.email = %q{austin@rubyforge.org (myobie@gmail.com)}
|
25
|
+
# s.rubyforge_project = %q(mime-types)
|
26
|
+
# s.homepage = %q{http://mime-types.rubyforge.org/}
|
27
|
+
#
|
28
|
+
# description = []
|
29
|
+
# File.open("README") do |file|
|
30
|
+
# file.each do |line|
|
31
|
+
# line.chomp!
|
32
|
+
# break if line.empty?
|
33
|
+
# description << "#{line.gsub(/\[\d\]/, '')}"
|
34
|
+
# end
|
35
|
+
# end
|
36
|
+
# s.description = description[1..-1].join(" ")
|
37
|
+
# end
|
38
|
+
|
39
|
+
|
40
|
+
Gem::Specification.new do |s|
|
41
|
+
s.name = "mime-types"
|
42
|
+
s.version = "1.15.1"
|
43
|
+
# s.date = "2008-11-07"
|
44
|
+
s.summary = "Manages a MIME Content-Type that will return the Content-Type for a given filename."
|
45
|
+
s.email = "austin@rubyforge.org"
|
46
|
+
s.homepage = "http://mime-types.rubyforge.org/"
|
47
|
+
s.description = "See README"
|
48
|
+
s.has_rdoc = true
|
49
|
+
|
50
|
+
s.authors = ["Austin Ziegler", "Nathan Herald"]
|
51
|
+
|
52
|
+
s.files = ["bin/**/*",
|
53
|
+
"lib/**/*",
|
54
|
+
"tests/**/*",
|
55
|
+
"ChangeLog",
|
56
|
+
"README",
|
57
|
+
"LICENCE",
|
58
|
+
"setup.rb",
|
59
|
+
"Rakefile",
|
60
|
+
"mime-types.gemspec",
|
61
|
+
"pre-setup.rb"]
|
62
|
+
|
63
|
+
s.test_files = ["test/tc_mime_type.rb",
|
64
|
+
"test/tc_mime_type.rb",
|
65
|
+
"text/testall.rb"]
|
66
|
+
|
67
|
+
s.require_paths = ["lib"]
|
68
|
+
|
69
|
+
s.rdoc_options = %w(--title MIME::Types --main README --line-numbers)
|
70
|
+
s.extra_rdoc_files = ["Install", "ChangeLog", "README"]
|
71
|
+
|
72
|
+
s.add_dependency("diff-lcs", ["> 0.0.0"])
|
73
|
+
s.add_dependency("mime-types", ["> 0.0.0"])
|
74
|
+
s.add_dependency("open4", ["> 0.0.0"])
|
75
|
+
end
|
data/pre-setup.rb
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'rdoc/rdoc'
|
2
|
+
##
|
3
|
+
# Build the rdoc documentation. Also, try to build the RI documentation.
|
4
|
+
#
|
5
|
+
def build_rdoc(options)
|
6
|
+
RDoc::RDoc.new.document(options)
|
7
|
+
rescue RDoc::RDocError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
rescue Exception => e
|
10
|
+
$stderr.puts "Couldn't build RDoc documentation\n#{e.message}"
|
11
|
+
end
|
12
|
+
|
13
|
+
def build_ri(files)
|
14
|
+
RDoc::RDoc.new(["--ri-site", "--merge"] + files)
|
15
|
+
rescue RDoc::RDocError => e
|
16
|
+
$stderr.puts e.message
|
17
|
+
rescue Exception => e
|
18
|
+
$stderr.puts "Couldn't build Ri documentation\n#{e.message}"
|
19
|
+
end
|
20
|
+
|
21
|
+
def run_tests(test_list)
|
22
|
+
return if test_list.empty?
|
23
|
+
|
24
|
+
require 'test/unit/ui/console/testrunner'
|
25
|
+
$:.unshift "lib"
|
26
|
+
test_list.each do |test|
|
27
|
+
next if File.directory?(test)
|
28
|
+
require test
|
29
|
+
end
|
30
|
+
|
31
|
+
tests = []
|
32
|
+
ObjectSpace.each_object { |o| tests << o if o.kind_of?(Class) }
|
33
|
+
tests.delete_if { |o| !o.ancestors.include?(Test::Unit::TestCase) }
|
34
|
+
tests.delete_if { |o| o == Test::Unit::TestCase }
|
35
|
+
|
36
|
+
tests.each { |test| Test::Unit::UI::Console::TestRunner.run(test) }
|
37
|
+
$:.shift
|
38
|
+
end
|
39
|
+
|
40
|
+
rdoc = %w(--main README --line-numbers
|
41
|
+
--title MIME::Types)
|
42
|
+
ri = %w(--ri-site --merge)
|
43
|
+
dox = %w(README ChangeLog lib)
|
44
|
+
build_rdoc rdoc + dox
|
45
|
+
build_ri ri + dox
|
46
|
+
run_tests Dir["tests/**/*"]
|