glib2 0.90.5 → 0.90.6
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +79 -0
- data/Rakefile +8 -65
- data/ext/glib2/Makefile +169 -0
- data/ext/glib2/glib-enum-types.c +1065 -0
- data/ext/glib2/glib-enum-types.h +144 -0
- data/ext/glib2/glib-enum-types.o +0 -0
- data/ext/glib2/glib2.so +0 -0
- data/ext/glib2/rbglib.h +1 -1
- data/ext/glib2/rbglib.o +0 -0
- data/ext/glib2/rbglib_bookmarkfile.o +0 -0
- data/ext/glib2/rbglib_completion.o +0 -0
- data/ext/glib2/rbglib_convert.o +0 -0
- data/ext/glib2/rbglib_error.o +0 -0
- data/ext/glib2/rbglib_fileutils.o +0 -0
- data/ext/glib2/rbglib_i18n.o +0 -0
- data/ext/glib2/rbglib_int64.o +0 -0
- data/ext/glib2/rbglib_iochannel.o +0 -0
- data/ext/glib2/rbglib_keyfile.o +0 -0
- data/ext/glib2/rbglib_maincontext.o +0 -0
- data/ext/glib2/rbglib_mainloop.o +0 -0
- data/ext/glib2/rbglib_messages.o +0 -0
- data/ext/glib2/rbglib_pollfd.o +0 -0
- data/ext/glib2/rbglib_shell.o +0 -0
- data/ext/glib2/rbglib_source.o +0 -0
- data/ext/glib2/rbglib_spawn.o +0 -0
- data/ext/glib2/rbglib_threads.o +0 -0
- data/ext/glib2/rbglib_timer.o +0 -0
- data/ext/glib2/rbglib_unicode.o +0 -0
- data/ext/glib2/rbglib_utils.o +0 -0
- data/ext/glib2/rbglib_win32.o +0 -0
- data/ext/glib2/rbgobj_boxed.o +0 -0
- data/ext/glib2/rbgobj_closure.o +0 -0
- data/ext/glib2/rbgobj_convert.o +0 -0
- data/ext/glib2/rbgobj_enums.o +0 -0
- data/ext/glib2/rbgobj_fundamental.o +0 -0
- data/ext/glib2/rbgobj_object.o +0 -0
- data/ext/glib2/rbgobj_param.o +0 -0
- data/ext/glib2/rbgobj_paramspecs.o +0 -0
- data/ext/glib2/rbgobj_signal.o +0 -0
- data/ext/glib2/rbgobj_strv.o +0 -0
- data/ext/glib2/rbgobj_type.c +1 -1
- data/ext/glib2/rbgobj_type.o +0 -0
- data/ext/glib2/rbgobj_typeinstance.o +0 -0
- data/ext/glib2/rbgobj_typeinterface.o +0 -0
- data/ext/glib2/rbgobj_typemodule.o +0 -0
- data/ext/glib2/rbgobj_typeplugin.o +0 -0
- data/ext/glib2/rbgobj_value.o +0 -0
- data/ext/glib2/rbgobj_valuearray.o +0 -0
- data/ext/glib2/rbgobj_valuetypes.o +0 -0
- data/ext/glib2/rbgobject.o +0 -0
- data/ext/glib2/rbgutil.o +0 -0
- data/ext/glib2/rbgutil_callback.o +0 -0
- data/ext/glib2/ruby-glib2.pc +3 -0
- data/lib/glib2.rb +2 -2
- data/lib/gnome2-raketask.rb +185 -0
- data/lib/gnome2-win32-binary-downloader.rb +49 -9
- data/lib/mkmf-gnome2.rb +55 -43
- data/test-unit/History.txt +5 -0
- data/test-unit/html/index.html +2 -2
- data/test-unit/html/index.html.ja +2 -2
- data/test-unit/lib/test/unit/assertions.rb +9 -4
- data/test-unit/lib/test/unit/autorunner.rb +13 -1
- data/test-unit/lib/test/unit/testsuite.rb +4 -2
- data/test-unit/lib/test/unit/version.rb +1 -1
- data/test-unit/test/test-testcase.rb +11 -3
- data/test-unit/test/test_assertions.rb +24 -3
- metadata +205 -153
@@ -23,11 +23,13 @@ class GNOME2Win32BinaryDownloader
|
|
23
23
|
|
24
24
|
URL_BASE = "http://ftp.gnome.org/pub/gnome/binaries/win32"
|
25
25
|
def initialize(options={})
|
26
|
-
|
26
|
+
output_dir = options[:output_dir] || File.join("vendor", "local")
|
27
|
+
@output_dir = File.expand_path(output_dir)
|
27
28
|
end
|
28
29
|
|
29
30
|
def download_package(package)
|
30
|
-
|
31
|
+
version_page_url = "#{URL_BASE}/#{package}"
|
32
|
+
version_page = agent.get(version_page_url)
|
31
33
|
latest_version_link = version_page.links.sort_by do |link|
|
32
34
|
if /\A(\d+\.\d+)\/\z/ =~ link.href
|
33
35
|
$1.split(/\./).collect {|component| component.to_i}
|
@@ -36,11 +38,18 @@ class GNOME2Win32BinaryDownloader
|
|
36
38
|
end
|
37
39
|
end.last
|
38
40
|
|
41
|
+
escaped_package = Regexp.escape(package)
|
39
42
|
latest_version_page = latest_version_link.click
|
40
43
|
latest_version = latest_version_page.links.collect do |link|
|
41
|
-
|
44
|
+
case link.href
|
45
|
+
when /#{escaped_package}_([\d\.\-]+)_win32\.zip\z/,
|
46
|
+
/#{escaped_package}-([\d\.\-]+)-win32\.zip\z/, # old
|
47
|
+
/#{escaped_package}-([\d\.\-]+)\.zip\z/ # old
|
42
48
|
version = $1
|
43
|
-
|
49
|
+
normalized_version = version.split(/[\.\-]/).collect do |component|
|
50
|
+
component.to_i
|
51
|
+
end
|
52
|
+
[normalized_version, version]
|
44
53
|
else
|
45
54
|
[[-1], nil]
|
46
55
|
end
|
@@ -48,17 +57,33 @@ class GNOME2Win32BinaryDownloader
|
|
48
57
|
normalized_version
|
49
58
|
end.last[1]
|
50
59
|
|
60
|
+
if latest_version.nil?
|
61
|
+
raise "can't find package: <#{package}>:<#{version_page_url}>"
|
62
|
+
end
|
63
|
+
escaped_latest_version = Regexp.escape(latest_version)
|
51
64
|
latest_version_page.links.each do |link|
|
52
|
-
|
65
|
+
case link.href
|
66
|
+
when /#{escaped_package}(?:-dev)?_#{escaped_latest_version}_win32\.zip\z/,
|
67
|
+
/#{escaped_package}(?:-dev)?-#{escaped_latest_version}-win32\.zip\z/, # old
|
68
|
+
/#{escaped_package}(?:-dev)?-#{escaped_latest_version}\.zip\z/ # old
|
53
69
|
click_zip_link(link)
|
54
70
|
end
|
55
71
|
end
|
56
72
|
end
|
57
73
|
|
58
74
|
def download_dependency(dependency)
|
59
|
-
|
75
|
+
dependency_version = "any"
|
76
|
+
dependency_version_re = /[\d\.\-]+/
|
77
|
+
if dependency.is_a?(Array)
|
78
|
+
dependency, dependency_version = dependency
|
79
|
+
dependency_version_re = /#{Regexp.escape(dependency_version)}/
|
80
|
+
end
|
81
|
+
escaped_dependency = Regexp.escape(dependency)
|
82
|
+
dependencies_url = "#{URL_BASE}/dependencies"
|
83
|
+
dependencies_page = agent.get(dependencies_url)
|
60
84
|
latest_version = dependencies_page.links.collect do |link|
|
61
|
-
|
85
|
+
case link.href
|
86
|
+
when /\A#{escaped_dependency}_(#{dependency_version_re})_win32\.zip\z/
|
62
87
|
version = $1
|
63
88
|
[version.split(/[\.\-]/).collect {|component| component.to_i}, version]
|
64
89
|
else
|
@@ -67,8 +92,16 @@ class GNOME2Win32BinaryDownloader
|
|
67
92
|
end.sort_by do |normalized_version, version|
|
68
93
|
normalized_version
|
69
94
|
end.last[1]
|
95
|
+
|
96
|
+
if latest_version.nil?
|
97
|
+
message = "can't find dependency package: " +
|
98
|
+
"<#{dependency}>(#{dependency_version}):<#{dependencies_url}>"
|
99
|
+
raise message
|
100
|
+
end
|
101
|
+
escaped_latest_version = Regexp.escape(latest_version)
|
70
102
|
dependencies_page.links.each do |link|
|
71
|
-
|
103
|
+
case link.href
|
104
|
+
when /\A#{escaped_dependency}(?:-dev)?_#{escaped_latest_version}_win32.zip/
|
72
105
|
click_zip_link(link)
|
73
106
|
end
|
74
107
|
end
|
@@ -86,7 +119,14 @@ class GNOME2Win32BinaryDownloader
|
|
86
119
|
open(zip.filename, "wb") do |file|
|
87
120
|
file.print(zip.body)
|
88
121
|
end
|
89
|
-
system("unzip
|
122
|
+
system("unzip", "-o", zip.filename)
|
123
|
+
Dir.glob("lib/pkgconfig/*.pc") do |pc_path|
|
124
|
+
pc = File.read(pc_path)
|
125
|
+
pc = pc.gsub(/\Aprefix=.+$/) {"prefix=#{@output_dir}"}
|
126
|
+
File.open(pc_path, "w") do |pc_file|
|
127
|
+
pc_file.print(pc)
|
128
|
+
end
|
129
|
+
end
|
90
130
|
end
|
91
131
|
end
|
92
132
|
end
|
data/lib/mkmf-gnome2.rb
CHANGED
@@ -9,6 +9,7 @@
|
|
9
9
|
# license of Ruby-GNOME2.
|
10
10
|
#
|
11
11
|
|
12
|
+
require 'English'
|
12
13
|
require 'mkmf'
|
13
14
|
begin
|
14
15
|
require 'pkg-config'
|
@@ -58,10 +59,11 @@ def setup_win32(target_name, base_dir=nil)
|
|
58
59
|
base_dir ||= Pathname($0).dirname.parent.parent.expand_path
|
59
60
|
base_dir = Pathname(base_dir) if base_dir.is_a?(String)
|
60
61
|
binary_base_dir = base_dir + "vendor" + "local"
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
62
|
+
if binary_base_dir.exist?
|
63
|
+
$CFLAGS += " -I#{binary_base_dir}/include"
|
64
|
+
pkg_config_dir = binary_base_dir + "lib" + "pkgconfig"
|
65
|
+
PKGConfig.add_path(pkg_config_dir.to_s)
|
66
|
+
end
|
65
67
|
true
|
66
68
|
else
|
67
69
|
false
|
@@ -69,7 +71,7 @@ def setup_win32(target_name, base_dir=nil)
|
|
69
71
|
end
|
70
72
|
end
|
71
73
|
|
72
|
-
#add_depend_package("glib2", "
|
74
|
+
#add_depend_package("glib2", "ext/glib2", "/...../ruby-gnome2")
|
73
75
|
def add_depend_package(target_name, target_srcdir, top_srcdir, options={})
|
74
76
|
[top_srcdir, $configure_args['--topdir']].each do |topdir|
|
75
77
|
topdir = File.expand_path(topdir)
|
@@ -93,12 +95,23 @@ def add_depend_package(target_name, target_srcdir, top_srcdir, options={})
|
|
93
95
|
next unless File.exist?(target_build_dir_full_path)
|
94
96
|
$INCFLAGS = "-I#{target_build_dir_full_path} #{$INCFLAGS}"
|
95
97
|
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
98
|
+
case RUBY_PLATFORM
|
99
|
+
when /cygwin|mingw|mswin32/
|
100
|
+
case RUBY_PLATFORM
|
101
|
+
when /cygwin|mingw/
|
102
|
+
$LDFLAGS << " -L#{target_build_dir_full_path}"
|
103
|
+
$libs << " -lruby-#{target_name}"
|
104
|
+
when /mswin32/
|
105
|
+
$DLDFLAGS << " /libpath:#{target_build_dir_full_path}"
|
106
|
+
$libs << " libruby-#{target_name}.lib"
|
107
|
+
end
|
108
|
+
target_base_dir = Pathname.new(target_source_dir_full_path).parent.parent
|
109
|
+
target_binary_base_dir = target_base_dir + "vendor" + "local"
|
110
|
+
if target_binary_base_dir.exist?
|
111
|
+
$INCFLAGS = "-I#{target_binary_base_dir}/include #{$INCFLAGS}"
|
112
|
+
target_pkg_config_dir = target_binary_base_dir + "lib" + "pkgconfig"
|
113
|
+
PKGConfig.add_path(target_pkg_config_dir.to_s)
|
114
|
+
end
|
102
115
|
end
|
103
116
|
end
|
104
117
|
end
|
@@ -239,8 +252,17 @@ end
|
|
239
252
|
# This is used for the library which doesn't support version info.
|
240
253
|
def make_version_header(app_name, pkgname, dir = "src")
|
241
254
|
version = PKGConfig.modversion(pkgname).split(/\./)
|
255
|
+
version = "2.0b7".split(/\./)
|
242
256
|
(0..2).each do |v|
|
243
257
|
version[v] = "0" unless version[v]
|
258
|
+
if /\A(\d+)/ =~ version[v]
|
259
|
+
number = $1
|
260
|
+
tag = $POSTMATCH
|
261
|
+
unless tag.empty?
|
262
|
+
version[v] = number
|
263
|
+
version[3] = tag
|
264
|
+
end
|
265
|
+
end
|
244
266
|
end
|
245
267
|
filename = "rb#{app_name.downcase}version.h"
|
246
268
|
|
@@ -251,6 +273,12 @@ def make_version_header(app_name, pkgname, dir = "src")
|
|
251
273
|
FileUtils.mkdir_p(dir)
|
252
274
|
out = File.open(File.join(dir, filename), "w")
|
253
275
|
|
276
|
+
version_definitions = []
|
277
|
+
["MAJOR", "MINOR", "MICRO", "TAG"].each_with_index do |type, i|
|
278
|
+
_version = version[i]
|
279
|
+
next if _version.nil?
|
280
|
+
version_definitions << "#define #{app_name}_#{type}_VERSION (#{_version})"
|
281
|
+
end
|
254
282
|
out.print %Q[/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
255
283
|
/************************************************
|
256
284
|
|
@@ -263,9 +291,7 @@ def make_version_header(app_name, pkgname, dir = "src")
|
|
263
291
|
#ifndef __RB#{app_name}_VERSION_H__
|
264
292
|
#define __RB#{app_name}_VERSION_H__
|
265
293
|
|
266
|
-
#
|
267
|
-
#define #{app_name}_MINOR_VERSION (#{version[1]})
|
268
|
-
#define #{app_name}_MICRO_VERSION (#{version[2]})
|
294
|
+
#{version_definitions.join("\n")}
|
269
295
|
|
270
296
|
#define #{app_name}_CHECK_VERSION(major,minor,micro) \\
|
271
297
|
(#{app_name}_MAJOR_VERSION > (major) || \\
|
@@ -320,48 +346,34 @@ def glib_mkenums(prefix, files, g_type_prefix, include_files, options={})
|
|
320
346
|
end
|
321
347
|
|
322
348
|
def check_cairo(options={})
|
323
|
-
return false unless PKGConfig.have_package('cairo')
|
324
|
-
|
325
349
|
rcairo_source_dir = options[:rcairo_source_dir]
|
326
350
|
if rcairo_source_dir and !File.exist?(rcairo_source_dir)
|
327
351
|
rcairo_source_dir = nil
|
328
352
|
end
|
329
|
-
|
330
|
-
have_rb_cairo_h = have_header('rb_cairo.h')
|
331
|
-
unless have_rb_cairo_h
|
353
|
+
if rcairo_source_dir.nil?
|
332
354
|
begin
|
333
355
|
require 'rubygems'
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
if rcairo_gem
|
338
|
-
rcairo_source_dir = rcairo_gem.full_gem_path
|
339
|
-
rb_cairo_h_dir = File.join(rcairo_source_dir, "ext", "cairo")
|
340
|
-
$CFLAGS += " -I#{rb_cairo_h_dir} "
|
341
|
-
have_rb_cairo_h = have_header('rb_cairo.h')
|
342
|
-
else
|
343
|
-
require "cairo"
|
344
|
-
rcairo_source_dir = File.dirname($".grep(/cairo\.(?!rb\z)\w+\z/).first)
|
345
|
-
rb_cairo_h_dir = rcairo_source_dir
|
346
|
-
$CFLAGS += " -I#{rcairo_h_dir} "
|
347
|
-
have_rb_cairo_h = have_header('rb_cairo.h')
|
356
|
+
cairo_gem_spec = Gem.source_index.find_name("cairo").last
|
357
|
+
if cairo_gem_spec
|
358
|
+
rcairo_source_dir = cairo_gem_spec.full_gem_path
|
348
359
|
end
|
349
360
|
rescue LoadError
|
350
361
|
end
|
351
362
|
end
|
363
|
+
return false if rcairo_source_dir.nil?
|
352
364
|
|
353
|
-
if
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
options[:target_build_dir] = build_dir
|
359
|
-
end
|
360
|
-
add_depend_package("cairo", "ext/cairo", rcairo_source_dir, options)
|
361
|
-
$defs << "-DRUBY_CAIRO_PLATFORM_WIN32"
|
365
|
+
if /mingw|cygwin|mswin32/ =~ RUBY_PLATFORM
|
366
|
+
options = {}
|
367
|
+
build_dir = "tmp/#{RUBY_PLATFORM}/cairo/#{RUBY_VERSION}"
|
368
|
+
if File.exist?(File.join(rcairo_source_dir, build_dir))
|
369
|
+
options[:target_build_dir] = build_dir
|
362
370
|
end
|
371
|
+
add_depend_package("cairo", "ext/cairo", rcairo_source_dir, options)
|
372
|
+
$defs << "-DRUBY_CAIRO_PLATFORM_WIN32"
|
363
373
|
end
|
364
|
-
|
374
|
+
|
375
|
+
$CFLAGS += " -I#{rcairo_source_dir}/ext/cairo"
|
376
|
+
PKGConfig.have_package('cairo') and have_header('rb_cairo.h')
|
365
377
|
end
|
366
378
|
|
367
379
|
add_include_path = Proc.new do |dir_variable|
|
data/test-unit/History.txt
CHANGED
data/test-unit/html/index.html
CHANGED
@@ -78,7 +78,7 @@ require "test/unit"</pre>
|
|
78
78
|
</p>
|
79
79
|
<h3 id="test-unit-latest">test-unit: The latest release</h3>
|
80
80
|
<p>
|
81
|
-
2.1.
|
81
|
+
2.1.2 is the latest release. It had been released at 2010-11-25.
|
82
82
|
</p>
|
83
83
|
<h3 id="test-unit-install">test-unit: Install</h3>
|
84
84
|
<p>
|
@@ -112,7 +112,7 @@ require "test/unit"</pre>
|
|
112
112
|
</p>
|
113
113
|
<h3 id="test-unit-notify-latest">test-unit-notify: The latest release</h3>
|
114
114
|
<p>
|
115
|
-
0.0
|
115
|
+
0.1.0 is the latest release. It had been released at 2010-11-25.
|
116
116
|
</p>
|
117
117
|
<h3 id="test-unit-notify-install">test-unit-notify: Install</h3>
|
118
118
|
<p>
|
@@ -91,7 +91,7 @@ require "test/unit"</pre>
|
|
91
91
|
</p>
|
92
92
|
<h3 id="test-unit-latest">test-unit最新リリース</h3>
|
93
93
|
<p>
|
94
|
-
2010-
|
94
|
+
2010-11-25にリリースされた2.1.2が最新リリースです。
|
95
95
|
</p>
|
96
96
|
<h3 id="test-unit-install">test-unitのインストール</h3>
|
97
97
|
<p>
|
@@ -133,7 +133,7 @@ require "test/unit"</pre>
|
|
133
133
|
</p>
|
134
134
|
<h3 id="test-unit-notify-latest">test-unit-notify最新リリース</h3>
|
135
135
|
<p>
|
136
|
-
2010-
|
136
|
+
2010-11-25にリリースされた0.1.0が最新リリースです。
|
137
137
|
</p>
|
138
138
|
<h3 id="test-unit-notify-install">test-unit-notifyのインストール</h3>
|
139
139
|
<p>
|
@@ -579,6 +579,7 @@ EOT
|
|
579
579
|
"The arguments must respond to to_f; " +
|
580
580
|
"the #{name} did not")
|
581
581
|
end
|
582
|
+
delta = delta.to_f
|
582
583
|
assert_operator(delta, :>=, 0.0, "The delta should not be negative")
|
583
584
|
end
|
584
585
|
|
@@ -597,12 +598,16 @@ EOT
|
|
597
598
|
if normalized_actual < normalized_expected - normalized_delta
|
598
599
|
relation_format = "<<?> < <?>-<?>(?) <= <?>+<?>(?)>"
|
599
600
|
relation_arguments = [actual_float,
|
600
|
-
expected_float, delta,
|
601
|
-
|
601
|
+
expected_float, delta,
|
602
|
+
normalized_expected - normalized_delta,
|
603
|
+
expected_float, delta,
|
604
|
+
normalized_expected + normalized_delta]
|
602
605
|
elsif normalized_expected - normalized_delta < normalized_actual
|
603
606
|
relation_format = "<<?>-<?>(?) <= <?>+<?>(?) < <?>>"
|
604
|
-
relation_arguments = [expected_float, delta,
|
605
|
-
|
607
|
+
relation_arguments = [expected_float, delta,
|
608
|
+
normalized_expected - normalized_delta,
|
609
|
+
expected_float, delta,
|
610
|
+
normalized_expected + normalized_delta,
|
606
611
|
actual_float]
|
607
612
|
end
|
608
613
|
|
@@ -7,6 +7,7 @@ module Test
|
|
7
7
|
RUNNERS = {}
|
8
8
|
COLLECTORS = {}
|
9
9
|
ADDITIONAL_OPTIONS = []
|
10
|
+
PREPARE_HOOKS = []
|
10
11
|
|
11
12
|
class << self
|
12
13
|
def register_runner(id, runner_builder=Proc.new)
|
@@ -43,15 +44,20 @@ module Test
|
|
43
44
|
def setup_option(option_builder=Proc.new)
|
44
45
|
ADDITIONAL_OPTIONS << option_builder
|
45
46
|
end
|
47
|
+
|
48
|
+
def prepare(hook=Proc.new)
|
49
|
+
PREPARE_HOOKS << hook
|
50
|
+
end
|
46
51
|
end
|
47
52
|
|
48
53
|
def self.run(force_standalone=false, default_dir=nil, argv=ARGV, &block)
|
49
54
|
r = new(force_standalone || standalone?, &block)
|
50
55
|
r.base = default_dir
|
56
|
+
r.prepare
|
51
57
|
r.process_args(argv)
|
52
58
|
r.run
|
53
59
|
end
|
54
|
-
|
60
|
+
|
55
61
|
def self.standalone?
|
56
62
|
return false unless("-e" == $0)
|
57
63
|
ObjectSpace.each_object(Class) do |klass|
|
@@ -123,6 +129,12 @@ module Test
|
|
123
129
|
yield(self) if block_given?
|
124
130
|
end
|
125
131
|
|
132
|
+
def prepare
|
133
|
+
PREPARE_HOOKS.each do |handler|
|
134
|
+
handler.call(self)
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
126
138
|
def process_args(args = ARGV)
|
127
139
|
begin
|
128
140
|
args.unshift(*@default_arguments)
|
@@ -27,6 +27,7 @@ module Test
|
|
27
27
|
@name = name
|
28
28
|
@tests = []
|
29
29
|
@test_case = test_case
|
30
|
+
@n_tests = 0
|
30
31
|
end
|
31
32
|
|
32
33
|
# Runs the tests and/or suites contained in this
|
@@ -34,7 +35,8 @@ module Test
|
|
34
35
|
def run(result, &progress_block)
|
35
36
|
yield(STARTED, name)
|
36
37
|
run_startup(result)
|
37
|
-
@tests.
|
38
|
+
while test = @tests.shift
|
39
|
+
@n_tests += test.size
|
38
40
|
test.run(result, &progress_block)
|
39
41
|
end
|
40
42
|
run_shutdown(result)
|
@@ -55,7 +57,7 @@ module Test
|
|
55
57
|
# i.e. if the suite contains other suites, it counts the
|
56
58
|
# tests within those suites, not the suites themselves.
|
57
59
|
def size
|
58
|
-
total_size =
|
60
|
+
total_size = @n_tests
|
59
61
|
@tests.each { |test| total_size += test.size }
|
60
62
|
total_size
|
61
63
|
end
|
@@ -284,8 +284,15 @@ module Test
|
|
284
284
|
def test_startup_shutdown
|
285
285
|
called = []
|
286
286
|
test_case = Class.new(TestCase) do
|
287
|
-
@@called = called
|
288
287
|
class << self
|
288
|
+
def called
|
289
|
+
@@called
|
290
|
+
end
|
291
|
+
|
292
|
+
def called=(called)
|
293
|
+
@@called = called
|
294
|
+
end
|
295
|
+
|
289
296
|
def startup
|
290
297
|
@@called << :startup
|
291
298
|
end
|
@@ -294,13 +301,14 @@ module Test
|
|
294
301
|
@@called << :shutdown
|
295
302
|
end
|
296
303
|
end
|
304
|
+
self.called = called
|
297
305
|
|
298
306
|
def setup
|
299
|
-
|
307
|
+
self.class.called << :setup
|
300
308
|
end
|
301
309
|
|
302
310
|
def teardown
|
303
|
-
|
311
|
+
self.class.called << :teardown
|
304
312
|
end
|
305
313
|
|
306
314
|
def test1
|