rroonga 0.9.3-x86-mingw32 → 0.9.4-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. data/NEWS.ja.rdoc +13 -0
  2. data/NEWS.rdoc +13 -0
  3. data/Rakefile +1 -1
  4. data/ext/groonga/extconf.rb +4 -3
  5. data/ext/groonga/rb-grn.h +698 -0
  6. data/html/developer.html +10 -7
  7. data/html/index.html +1 -1
  8. data/lib/1.8/groonga.so +0 -0
  9. data/lib/1.9/groonga.so +0 -0
  10. data/pkg-config.rb +1 -1
  11. data/test/run-test.rb +9 -3
  12. data/vendor/local/bin/libgroonga-0.dll +0 -0
  13. data/vendor/local/include/groonga.h +2285 -0
  14. data/vendor/local/lib/libgroonga.la +41 -0
  15. metadata +37 -85
  16. data/ext/groonga/mkmf.log +0 -99
  17. data/test-unit/Rakefile +0 -40
  18. data/test-unit/TODO +0 -5
  19. data/test-unit/bin/testrb +0 -5
  20. data/test-unit/html/classic.html +0 -15
  21. data/test-unit/html/index.html +0 -25
  22. data/test-unit/html/index.html.ja +0 -27
  23. data/test-unit/lib/test/unit/assertionfailederror.rb +0 -25
  24. data/test-unit/lib/test/unit/assertions.rb +0 -1230
  25. data/test-unit/lib/test/unit/attribute.rb +0 -125
  26. data/test-unit/lib/test/unit/autorunner.rb +0 -360
  27. data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
  28. data/test-unit/lib/test/unit/collector/dir.rb +0 -108
  29. data/test-unit/lib/test/unit/collector/load.rb +0 -144
  30. data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
  31. data/test-unit/lib/test/unit/collector.rb +0 -36
  32. data/test-unit/lib/test/unit/color-scheme.rb +0 -102
  33. data/test-unit/lib/test/unit/color.rb +0 -96
  34. data/test-unit/lib/test/unit/diff.rb +0 -724
  35. data/test-unit/lib/test/unit/error.rb +0 -130
  36. data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
  37. data/test-unit/lib/test/unit/failure.rb +0 -136
  38. data/test-unit/lib/test/unit/fixture.rb +0 -176
  39. data/test-unit/lib/test/unit/notification.rb +0 -129
  40. data/test-unit/lib/test/unit/omission.rb +0 -191
  41. data/test-unit/lib/test/unit/pending.rb +0 -150
  42. data/test-unit/lib/test/unit/priority.rb +0 -180
  43. data/test-unit/lib/test/unit/runner/console.rb +0 -52
  44. data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
  45. data/test-unit/lib/test/unit/runner/tap.rb +0 -8
  46. data/test-unit/lib/test/unit/testcase.rb +0 -476
  47. data/test-unit/lib/test/unit/testresult.rb +0 -89
  48. data/test-unit/lib/test/unit/testsuite.rb +0 -110
  49. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
  50. data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -466
  51. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -63
  52. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +0 -92
  53. data/test-unit/lib/test/unit/ui/testrunner.rb +0 -28
  54. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
  55. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  56. data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -41
  57. data/test-unit/lib/test/unit/util/method-owner-finder.rb +0 -28
  58. data/test-unit/lib/test/unit/util/observable.rb +0 -90
  59. data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
  60. data/test-unit/lib/test/unit/version.rb +0 -7
  61. data/test-unit/lib/test/unit.rb +0 -323
  62. data/test-unit/sample/adder.rb +0 -13
  63. data/test-unit/sample/subtracter.rb +0 -12
  64. data/test-unit/sample/test_adder.rb +0 -20
  65. data/test-unit/sample/test_subtracter.rb +0 -20
  66. data/test-unit/sample/test_user.rb +0 -23
  67. data/test-unit/test/collector/test-descendant.rb +0 -133
  68. data/test-unit/test/collector/test-load.rb +0 -442
  69. data/test-unit/test/collector/test_dir.rb +0 -406
  70. data/test-unit/test/collector/test_objectspace.rb +0 -100
  71. data/test-unit/test/run-test.rb +0 -15
  72. data/test-unit/test/test-attribute.rb +0 -86
  73. data/test-unit/test/test-color-scheme.rb +0 -67
  74. data/test-unit/test/test-color.rb +0 -47
  75. data/test-unit/test/test-diff.rb +0 -518
  76. data/test-unit/test/test-emacs-runner.rb +0 -60
  77. data/test-unit/test/test-fixture.rb +0 -287
  78. data/test-unit/test/test-notification.rb +0 -33
  79. data/test-unit/test/test-omission.rb +0 -81
  80. data/test-unit/test/test-pending.rb +0 -70
  81. data/test-unit/test/test-priority.rb +0 -119
  82. data/test-unit/test/test-testcase.rb +0 -544
  83. data/test-unit/test/test_assertions.rb +0 -1151
  84. data/test-unit/test/test_error.rb +0 -26
  85. data/test-unit/test/test_failure.rb +0 -33
  86. data/test-unit/test/test_testresult.rb +0 -113
  87. data/test-unit/test/test_testsuite.rb +0 -129
  88. data/test-unit/test/testunit-test-util.rb +0 -14
  89. data/test-unit/test/ui/test_testrunmediator.rb +0 -20
  90. data/test-unit/test/util/test-method-owner-finder.rb +0 -38
  91. data/test-unit/test/util/test_backtracefilter.rb +0 -41
  92. data/test-unit/test/util/test_observable.rb +0 -102
  93. data/test-unit/test/util/test_procwrapper.rb +0 -36
@@ -1,125 +0,0 @@
1
- module Test
2
- module Unit
3
- module Attribute
4
- class << self
5
- def included(base)
6
- base.extend(BaseClassMethods)
7
- base.extend(ClassMethods)
8
- end
9
- end
10
-
11
- module BaseClassMethods
12
- def attributes_table
13
- {}
14
- end
15
- end
16
-
17
- module ClassMethods
18
- def method_added(name)
19
- super
20
- return unless defined?(@current_attributes)
21
-
22
- attributes = {}
23
- kept_attributes = {}
24
- @current_attributes.each do |attribute_name, attribute|
25
- attributes[attribute_name] = attribute[:value]
26
- kept_attributes[attribute_name] = attribute if attribute[:keep]
27
- end
28
- set_attributes(name, attributes)
29
- @current_attributes = kept_attributes
30
- end
31
-
32
- def attribute(name, value, options={}, *method_names)
33
- unless options.is_a?(Hash)
34
- method_names << options
35
- options = {}
36
- end
37
- @current_attributes ||= {}
38
- if method_names.empty?
39
- @current_attributes[name] = options.merge(:value => value)
40
- else
41
- method_names.each do |method_name|
42
- set_attributes(method_name, {name => value})
43
- end
44
- end
45
- end
46
-
47
- def attributes_table
48
- @attributes_table ||= {}
49
- super.merge(@attributes_table)
50
- end
51
-
52
- def set_attributes(method_name, new_attributes)
53
- return if new_attributes.empty?
54
- method_name = normalize_method_name(method_name)
55
- @attributes_table ||= {}
56
- @attributes_table[method_name] ||= {}
57
- current_attributes = @attributes_table[method_name]
58
- new_attributes.each do |key, value|
59
- key = normalize_attribute_name(key)
60
- observers = attribute_observers(key) || []
61
- observers.each do |observer|
62
- observer.call(self,
63
- key,
64
- (attributes(method_name) || {})[key],
65
- value,
66
- method_name)
67
- end
68
- current_attributes[key] = value
69
- end
70
- end
71
-
72
- def attributes(method_name)
73
- method_name = normalize_method_name(method_name)
74
- attributes = attributes_table[method_name]
75
- ancestors[1..-1].each do |ancestor|
76
- if ancestor.is_a?(Class) and ancestor < Test::Unit::Attribute
77
- parent_attributes = ancestor.attributes(method_name)
78
- if attributes
79
- attributes = (parent_attributes || {}).merge(attributes)
80
- else
81
- attributes = parent_attributes
82
- end
83
- break
84
- end
85
- end
86
- attributes
87
- end
88
-
89
- def get_attribute(method_name, attribute_name)
90
- attribute_name = normalize_attribute_name(attribute_name)
91
- (attributes(method_name) || {})[attribute_name]
92
- end
93
-
94
- @@attribute_observers = {}
95
- def register_attribute_observer(attribute_name, observer=Proc.new)
96
- attribute_name = normalize_attribute_name(attribute_name)
97
- @@attribute_observers[attribute_name] ||= []
98
- @@attribute_observers[attribute_name] << observer
99
- end
100
-
101
- def attribute_observers(attribute_name)
102
- attribute_name = normalize_attribute_name(attribute_name)
103
- @@attribute_observers[attribute_name]
104
- end
105
-
106
- private
107
- def normalize_attribute_name(name)
108
- name.to_s
109
- end
110
-
111
- def normalize_method_name(name)
112
- name.to_s
113
- end
114
- end
115
-
116
- def attributes
117
- self.class.attributes(@method_name) || {}
118
- end
119
-
120
- def [](name)
121
- self.class.get_attribute(@method_name, name)
122
- end
123
- end
124
- end
125
- end
@@ -1,360 +0,0 @@
1
- require 'test/unit/color-scheme'
2
- require 'optparse'
3
-
4
- module Test
5
- module Unit
6
- class AutoRunner
7
- RUNNERS = {}
8
- COLLECTORS = {}
9
- ADDITIONAL_OPTIONS = []
10
-
11
- class << self
12
- def register_runner(id, runner_builder=Proc.new)
13
- RUNNERS[id] = runner_builder
14
- RUNNERS[id.to_s] = runner_builder
15
- end
16
-
17
- def runner(id)
18
- RUNNERS[id.to_s]
19
- end
20
-
21
- @@default_runner = nil
22
- def default_runner
23
- runner(@@default_runner)
24
- end
25
-
26
- def default_runner=(id)
27
- @@default_runner = id
28
- end
29
-
30
- def register_collector(id, collector_builder=Proc.new)
31
- COLLECTORS[id] = collector_builder
32
- COLLECTORS[id.to_s] = collector_builder
33
- end
34
-
35
- def collector(id)
36
- COLLECTORS[id.to_s]
37
- end
38
-
39
- def register_color_scheme(id, scheme)
40
- ColorScheme[id] = scheme
41
- end
42
-
43
- def setup_option(option_builder=Proc.new)
44
- ADDITIONAL_OPTIONS << option_builder
45
- end
46
- end
47
-
48
- def self.run(force_standalone=false, default_dir=nil, argv=ARGV, &block)
49
- r = new(force_standalone || standalone?, &block)
50
- r.base = default_dir
51
- r.process_args(argv)
52
- r.run
53
- end
54
-
55
- def self.standalone?
56
- return false unless("-e" == $0)
57
- ObjectSpace.each_object(Class) do |klass|
58
- return false if(klass < TestCase)
59
- end
60
- true
61
- end
62
-
63
- register_collector(:descendant) do |auto_runner|
64
- require 'test/unit/collector/descendant'
65
- collector = Collector::Descendant.new
66
- collector.filter = auto_runner.filters
67
- collector.collect($0.sub(/\.rb\Z/, ''))
68
- end
69
-
70
- register_collector(:load) do |auto_runner|
71
- require 'test/unit/collector/load'
72
- collector = Collector::Load.new
73
- collector.patterns.concat(auto_runner.pattern) if auto_runner.pattern
74
- collector.excludes.concat(auto_runner.exclude) if auto_runner.exclude
75
- collector.base = auto_runner.base
76
- collector.filter = auto_runner.filters
77
- collector.collect(*auto_runner.to_run)
78
- end
79
-
80
- # deprecated
81
- register_collector(:object_space) do |auto_runner|
82
- require 'test/unit/collector/objectspace'
83
- c = Collector::ObjectSpace.new
84
- c.filter = auto_runner.filters
85
- c.collect($0.sub(/\.rb\Z/, ''))
86
- end
87
-
88
- # deprecated
89
- register_collector(:dir) do |auto_runner|
90
- require 'test/unit/collector/dir'
91
- c = Collector::Dir.new
92
- c.filter = auto_runner.filters
93
- c.pattern.concat(auto_runner.pattern) if auto_runner.pattern
94
- c.exclude.concat(auto_runner.exclude) if auto_runner.exclude
95
- c.base = auto_runner.base
96
- $:.push(auto_runner.base) if auto_runner.base
97
- c.collect(*(auto_runner.to_run.empty? ? ['.'] : auto_runner.to_run))
98
- end
99
-
100
- attr_reader :suite, :runner_options
101
- attr_accessor :filters, :to_run, :pattern, :exclude, :base, :workdir
102
- attr_accessor :color_scheme
103
- attr_writer :runner, :collector
104
-
105
- def initialize(standalone)
106
- Unit.run = true
107
- @standalone = standalone
108
- @runner = default_runner
109
- @collector = default_collector
110
- @filters = []
111
- @to_run = []
112
- @color_scheme = ColorScheme.default
113
- @runner_options = {}
114
- @default_arguments = []
115
- @workdir = nil
116
- config_file = "test-unit.yml"
117
- if File.exist?(config_file)
118
- load_config(config_file)
119
- else
120
- load_global_config
121
- end
122
- yield(self) if block_given?
123
- end
124
-
125
- def process_args(args = ARGV)
126
- begin
127
- args.unshift(*@default_arguments)
128
- options.order!(args) {|arg| @to_run << arg}
129
- rescue OptionParser::ParseError => e
130
- puts e
131
- puts options
132
- exit(false)
133
- end
134
- not @to_run.empty?
135
- end
136
-
137
- def options
138
- @options ||= OptionParser.new do |o|
139
- o.banner = "Test::Unit automatic runner."
140
- o.banner << "\nUsage: #{$0} [options] [-- untouched arguments]"
141
-
142
- o.on
143
- o.on('-r', '--runner=RUNNER', RUNNERS,
144
- "Use the given RUNNER.",
145
- "(" + keyword_display(RUNNERS) + ")") do |r|
146
- @runner = r
147
- end
148
-
149
- if (@standalone)
150
- o.on('-b', '--basedir=DIR', "Base directory of test suites.") do |b|
151
- @base = b
152
- end
153
-
154
- o.on('-w', '--workdir=DIR', "Working directory to run tests.") do |w|
155
- @workdir = w
156
- end
157
-
158
- o.on('-a', '--add=TORUN', Array,
159
- "Add TORUN to the list of things to run;",
160
- "can be a file or a directory.") do |a|
161
- @to_run.concat(a)
162
- end
163
-
164
- @pattern = []
165
- o.on('-p', '--pattern=PATTERN', Regexp,
166
- "Match files to collect against PATTERN.") do |e|
167
- @pattern << e
168
- end
169
-
170
- @exclude = []
171
- o.on('-x', '--exclude=PATTERN', Regexp,
172
- "Ignore files to collect against PATTERN.") do |e|
173
- @exclude << e
174
- end
175
- end
176
-
177
- o.on('-n', '--name=NAME', String,
178
- "Runs tests matching NAME.",
179
- "(patterns may be used).") do |n|
180
- n = (%r{\A/(.*)/\Z} =~ n ? Regexp.new($1) : n)
181
- case n
182
- when Regexp
183
- @filters << proc{|t| n =~ t.method_name ? true : false}
184
- else
185
- @filters << proc{|t| n == t.method_name}
186
- end
187
- end
188
-
189
- o.on('-t', '--testcase=TESTCASE', String,
190
- "Runs tests in TestCases matching TESTCASE.",
191
- "(patterns may be used).") do |n|
192
- n = (%r{\A/(.*)/\Z} =~ n ? Regexp.new($1) : n)
193
- case n
194
- when Regexp
195
- @filters << proc{|t| n =~ t.class.name ? true : false}
196
- else
197
- @filters << proc{|t| n == t.class.name}
198
- end
199
- end
200
-
201
- priority_filter = Proc.new do |test|
202
- if @filters == [priority_filter]
203
- Priority::Checker.new(test).need_to_run?
204
- else
205
- nil
206
- end
207
- end
208
- o.on("--[no-]priority-mode",
209
- "Runs some tests based on their priority.") do |priority_mode|
210
- if priority_mode
211
- Priority.enable
212
- @filters |= [priority_filter]
213
- else
214
- Priority.disable
215
- @filters -= [priority_filter]
216
- end
217
- end
218
-
219
- o.on("--default-priority=PRIORITY",
220
- Priority.available_values,
221
- "Uses PRIORITY as default priority",
222
- "(#{keyword_display(Priority.available_values)})") do |priority|
223
- Priority.default = priority
224
- end
225
-
226
- o.on('-I', "--load-path=DIR[#{File::PATH_SEPARATOR}DIR...]",
227
- "Appends directory list to $LOAD_PATH.") do |dirs|
228
- $LOAD_PATH.concat(dirs.split(File::PATH_SEPARATOR))
229
- end
230
-
231
- color_schemes = ColorScheme.all
232
- o.on("--color-scheme=SCHEME", color_schemes,
233
- "Use SCHEME as color scheme.",
234
- "(#{keyword_display(color_schemes)})") do |scheme|
235
- @color_scheme = scheme
236
- end
237
-
238
- o.on("--config=FILE",
239
- "Use YAML fomat FILE content as configuration file.") do |file|
240
- load_config(file)
241
- end
242
-
243
- o.on("--order=ORDER", TestCase::AVAILABLE_ORDERS,
244
- "Run tests in a test case in ORDER order.",
245
- "(#{keyword_display(TestCase::AVAILABLE_ORDERS)})") do |order|
246
- TestCase.test_order = order
247
- end
248
-
249
- ADDITIONAL_OPTIONS.each do |option_builder|
250
- option_builder.call(self, o)
251
- end
252
-
253
- o.on('--',
254
- "Stop processing options so that the",
255
- "remaining options will be passed to the",
256
- "test."){o.terminate}
257
-
258
- o.on('-h', '--help', 'Display this help.'){puts o; exit}
259
-
260
- o.on_tail
261
- o.on_tail('Deprecated options:')
262
-
263
- o.on_tail('--console', 'Console runner (use --runner).') do
264
- warn("Deprecated option (--console).")
265
- @runner = self.class.runner(:console)
266
- end
267
-
268
- if RUNNERS[:fox]
269
- o.on_tail('--fox', 'Fox runner (use --runner).') do
270
- warn("Deprecated option (--fox).")
271
- @runner = self.class.runner(:fox)
272
- end
273
- end
274
-
275
- o.on_tail
276
- end
277
- end
278
-
279
- def keyword_display(keywords)
280
- keywords = keywords.collect do |keyword, _|
281
- keyword.to_s
282
- end.uniq.sort
283
-
284
- i = 0
285
- keywords.collect do |keyword|
286
- if (i > 0 and keyword[0] == keywords[i - 1][0]) or
287
- ((i < keywords.size - 1) and (keyword[0] == keywords[i + 1][0]))
288
- n = 2
289
- else
290
- n = 1
291
- end
292
- i += 1
293
- keyword.sub(/^(.{#{n}})([A-Za-z]+)(?=\w*$)/, '\\1[\\2]')
294
- end.join(", ")
295
- end
296
-
297
- def run
298
- suite = @collector[self]
299
- return false if suite.nil?
300
- runner = @runner[self]
301
- return false if runner.nil?
302
- @runner_options[:color_scheme] ||= @color_scheme
303
- Dir.chdir(@workdir) if @workdir
304
- runner.run(suite, @runner_options).passed?
305
- end
306
-
307
- def load_config(file)
308
- require 'yaml'
309
- config = YAML.load(File.read(file))
310
- runner_name = config["runner"]
311
- @runner = self.class.runner(runner_name) || @runner
312
- @collector = self.class.collector(config["collector"]) || @collector
313
- (config["color_schemes"] || {}).each do |name, options|
314
- ColorScheme[name] = options
315
- end
316
- runner_options = {}
317
- (config["#{runner_name}_options"] || {}).each do |key, value|
318
- key = key.to_sym
319
- value = ColorScheme[value] if key == :color_scheme
320
- if key == :arguments
321
- @default_arguments.concat(value.split)
322
- else
323
- runner_options[key.to_sym] = value
324
- end
325
- end
326
- @runner_options = @runner_options.merge(runner_options)
327
- end
328
-
329
- private
330
- def default_runner
331
- runner = self.class.default_runner
332
- if ENV["EMACS"] == "t"
333
- runner ||= self.class.runner(:emacs)
334
- else
335
- runner ||= self.class.runner(:console)
336
- end
337
- runner
338
- end
339
-
340
- def default_collector
341
- self.class.collector(@standalone ? :load : :descendant)
342
- end
343
-
344
- def global_config_file
345
- File.expand_path("~/.test-unit.xml")
346
- rescue ArgumentError
347
- nil
348
- end
349
-
350
- def load_global_config
351
- file = global_config_file
352
- load_config(file) if file and File.exist?(file)
353
- end
354
- end
355
- end
356
- end
357
-
358
- require 'test/unit/runner/console'
359
- require 'test/unit/runner/emacs'
360
- require 'test/unit/runner/tap'
@@ -1,23 +0,0 @@
1
- require 'test/unit/collector'
2
-
3
- module Test
4
- module Unit
5
- module Collector
6
- class Descendant
7
- include Collector
8
-
9
- NAME = 'collected from the subclasses of TestCase'
10
-
11
- def collect(name=NAME)
12
- suite = TestSuite.new(name)
13
- sub_suites = []
14
- TestCase::DESCENDANTS.each do |descendant_test_case|
15
- add_suite(sub_suites, descendant_test_case.suite)
16
- end
17
- sort(sub_suites).each {|s| suite << s}
18
- suite
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,108 +0,0 @@
1
- require 'test/unit/testsuite'
2
- require 'test/unit/collector'
3
-
4
- module Test
5
- module Unit
6
- module Collector
7
- class Dir
8
- include Collector
9
-
10
- attr_reader :pattern, :exclude
11
- attr_accessor :base
12
-
13
- def initialize(dir=::Dir, file=::File, object_space=::ObjectSpace, req=nil)
14
- super()
15
- @dir = dir
16
- @file = file
17
- @object_space = object_space
18
- @req = req
19
- @pattern = [/\btest_.*\.rb\Z/m]
20
- @exclude = []
21
- @base = nil
22
- end
23
-
24
- def collect(*from)
25
- basedir = @base
26
- $:.push(basedir) if basedir
27
- if(from.empty?)
28
- recursive_collect('.', find_test_cases)
29
- elsif(from.size == 1)
30
- recursive_collect(from.first, find_test_cases)
31
- else
32
- suites = []
33
- from.each do |f|
34
- suite = recursive_collect(f, find_test_cases)
35
- suites << suite unless(suite.tests.empty?)
36
- end
37
- suite = TestSuite.new("[#{from.join(', ')}]")
38
- sort(suites).each{|s| suite << s}
39
- suite
40
- end
41
- ensure
42
- $:.delete_at($:.rindex(basedir)) if basedir
43
- end
44
-
45
- def find_test_cases(ignore=[])
46
- cases = []
47
- @object_space.each_object(Class) do |c|
48
- cases << c if(c < TestCase && !ignore.include?(c))
49
- end
50
- ignore.concat(cases)
51
- cases
52
- end
53
-
54
- def recursive_collect(name, already_gathered)
55
- sub_suites = []
56
- path = realdir(name)
57
- if @file.directory?(path)
58
- dir_name = name unless name == '.'
59
- @dir.entries(path).each do |e|
60
- next if(e == '.' || e == '..')
61
- e_name = dir_name ? @file.join(dir_name, e) : e
62
- if @file.directory?(realdir(e_name))
63
- next if /\A(?:CVS|\.svn|\.git)\z/ =~ e
64
- sub_suite = recursive_collect(e_name, already_gathered)
65
- sub_suites << sub_suite unless(sub_suite.empty?)
66
- else
67
- next if /~\z/ =~ e_name or /\A\.\#/ =~ e
68
- if @pattern and !@pattern.empty?
69
- next unless @pattern.any? {|pat| pat =~ e_name}
70
- end
71
- if @exclude and !@exclude.empty?
72
- next if @exclude.any? {|pat| pat =~ e_name}
73
- end
74
- collect_file(e_name, sub_suites, already_gathered)
75
- end
76
- end
77
- else
78
- collect_file(name, sub_suites, already_gathered)
79
- end
80
- suite = TestSuite.new(@file.basename(name))
81
- sort(sub_suites).each{|s| suite << s}
82
- suite
83
- end
84
-
85
- def collect_file(name, suites, already_gathered)
86
- dir = @file.dirname(@file.expand_path(name, @base))
87
- $:.unshift(dir)
88
- if(@req)
89
- @req.require(name)
90
- else
91
- require(name)
92
- end
93
- find_test_cases(already_gathered).each{|t| add_suite(suites, t.suite)}
94
- ensure
95
- $:.delete_at($:.rindex(dir)) if(dir)
96
- end
97
-
98
- def realdir(path)
99
- if @base
100
- @file.join(@base, path)
101
- else
102
- path
103
- end
104
- end
105
- end
106
- end
107
- end
108
- end