vic-buildr 1.3.1 → 1.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (127) hide show
  1. data/CHANGELOG +90 -8
  2. data/{README → README.rdoc} +29 -16
  3. data/Rakefile +17 -19
  4. data/_buildr +50 -0
  5. data/addon/buildr/cobertura.rb +47 -44
  6. data/addon/buildr/emma.rb +237 -0
  7. data/addon/buildr/jetty.rb +1 -1
  8. data/addon/buildr/nailgun.rb +581 -661
  9. data/{lib/buildr/java → addon/buildr}/org/apache/buildr/BuildrNail$Main.class +0 -0
  10. data/{lib/buildr/java → addon/buildr}/org/apache/buildr/BuildrNail.class +0 -0
  11. data/{lib/buildr/java → addon/buildr}/org/apache/buildr/BuildrNail.java +0 -0
  12. data/addon/buildr/xmlbeans.rb +1 -1
  13. data/bin/buildr +9 -2
  14. data/buildr.buildfile +53 -0
  15. data/buildr.gemspec +23 -15
  16. data/doc/css/default.css +51 -48
  17. data/doc/css/print.css +60 -55
  18. data/doc/css/syntax.css +40 -31
  19. data/doc/images/growl-icon.tiff +0 -0
  20. data/doc/images/project-structure.png +0 -0
  21. data/doc/pages/artifacts.textile +46 -156
  22. data/doc/pages/building.textile +63 -324
  23. data/doc/pages/contributing.textile +116 -88
  24. data/doc/pages/download.textile +20 -15
  25. data/doc/pages/extending.textile +27 -81
  26. data/doc/pages/getting_started.textile +47 -111
  27. data/doc/pages/index.textile +19 -37
  28. data/doc/pages/languages.textile +407 -0
  29. data/doc/pages/more_stuff.textile +92 -173
  30. data/doc/pages/packaging.textile +72 -237
  31. data/doc/pages/projects.textile +58 -233
  32. data/doc/pages/recipes.textile +19 -43
  33. data/doc/pages/settings_profiles.textile +39 -104
  34. data/doc/pages/testing.textile +41 -304
  35. data/doc/pages/troubleshooting.textile +29 -47
  36. data/doc/pages/whats_new.textile +66 -157
  37. data/doc/print.haml +0 -1
  38. data/doc/print.toc.yaml +1 -0
  39. data/doc/scripts/buildr-git.rb +1 -1
  40. data/doc/scripts/install-jruby.sh +1 -1
  41. data/doc/scripts/install-linux.sh +4 -4
  42. data/doc/site.toc.yaml +8 -5
  43. data/{KEYS → etc/KEYS} +0 -0
  44. data/etc/git-svn-authors +16 -0
  45. data/lib/buildr.rb +2 -13
  46. data/lib/buildr/core/application.rb +200 -95
  47. data/lib/buildr/core/application_cli.rb +6 -1
  48. data/lib/buildr/core/build.rb +140 -91
  49. data/lib/buildr/core/checks.rb +5 -5
  50. data/lib/buildr/core/common.rb +1 -1
  51. data/lib/buildr/core/compile.rb +14 -12
  52. data/lib/buildr/core/filter.rb +151 -46
  53. data/lib/buildr/core/generate.rb +9 -7
  54. data/lib/buildr/core/progressbar.rb +1 -1
  55. data/lib/buildr/core/project.rb +8 -7
  56. data/lib/buildr/core/test.rb +54 -29
  57. data/lib/buildr/core/transports.rb +25 -20
  58. data/lib/buildr/core/util.rb +80 -26
  59. data/lib/buildr/groovy.rb +18 -0
  60. data/lib/buildr/groovy/bdd.rb +105 -0
  61. data/lib/buildr/groovy/compiler.rb +138 -0
  62. data/lib/buildr/ide/eclipse.rb +102 -71
  63. data/lib/buildr/ide/idea.rb +7 -12
  64. data/lib/buildr/ide/idea7x.rb +20 -20
  65. data/lib/buildr/java.rb +4 -7
  66. data/lib/buildr/java/ant.rb +26 -5
  67. data/lib/buildr/java/bdd.rb +447 -0
  68. data/lib/buildr/java/commands.rb +8 -9
  69. data/lib/buildr/java/{compilers.rb → compiler.rb} +8 -90
  70. data/lib/buildr/java/jruby.rb +29 -11
  71. data/lib/buildr/java/jtestr_runner.rb.erb +114 -0
  72. data/lib/buildr/java/org/apache/buildr/JavaTestFilter.class +0 -0
  73. data/lib/buildr/java/org/apache/buildr/JavaTestFilter.java +4 -1
  74. data/lib/buildr/java/packaging.rb +23 -16
  75. data/lib/buildr/java/pom.rb +1 -1
  76. data/lib/buildr/java/rjb.rb +21 -8
  77. data/lib/buildr/java/test_result.rb +277 -0
  78. data/lib/buildr/java/{test_frameworks.rb → tests.rb} +121 -88
  79. data/lib/buildr/packaging/artifact.rb +12 -11
  80. data/lib/buildr/packaging/artifact_namespace.rb +7 -4
  81. data/lib/buildr/packaging/gems.rb +3 -3
  82. data/lib/buildr/packaging/zip.rb +13 -10
  83. data/lib/buildr/resources/buildr.icns +0 -0
  84. data/lib/buildr/scala.rb +19 -0
  85. data/lib/buildr/scala/compiler.rb +109 -0
  86. data/lib/buildr/scala/tests.rb +203 -0
  87. data/rakelib/apache.rake +31 -41
  88. data/rakelib/doc.rake +2 -2
  89. data/rakelib/package.rake +31 -2
  90. data/rakelib/rspec.rake +22 -20
  91. data/rakelib/rubyforge.rake +1 -0
  92. data/rakelib/setup.rake +34 -9
  93. data/spec/addon/cobertura_spec.rb +77 -0
  94. data/spec/addon/emma_spec.rb +120 -0
  95. data/spec/addon/test_coverage_spec.rb +249 -0
  96. data/spec/{application_spec.rb → core/application_spec.rb} +82 -4
  97. data/spec/{artifact_namespace_spec.rb → core/artifact_namespace_spec.rb} +12 -1
  98. data/spec/core/build_spec.rb +415 -0
  99. data/spec/{checks_spec.rb → core/checks_spec.rb} +1 -1
  100. data/spec/{common_spec.rb → core/common_spec.rb} +119 -30
  101. data/spec/{compile_spec.rb → core/compile_spec.rb} +17 -13
  102. data/spec/{project_spec.rb → core/project_spec.rb} +9 -6
  103. data/spec/{test_spec.rb → core/test_spec.rb} +226 -32
  104. data/spec/{transport_spec.rb → core/transport_spec.rb} +35 -23
  105. data/spec/groovy/bdd_spec.rb +80 -0
  106. data/spec/{groovy_compilers_spec.rb → groovy/compiler_spec.rb} +1 -1
  107. data/spec/ide/eclipse_spec.rb +243 -0
  108. data/spec/{java_spec.rb → java/ant.rb} +7 -17
  109. data/spec/java/bdd_spec.rb +358 -0
  110. data/spec/{java_compilers_spec.rb → java/compiler_spec.rb} +1 -1
  111. data/spec/java/java_spec.rb +88 -0
  112. data/spec/{java_packaging_spec.rb → java/packaging_spec.rb} +65 -4
  113. data/spec/{java_test_frameworks_spec.rb → java/tests_spec.rb} +50 -10
  114. data/spec/{archive_spec.rb → packaging/archive_spec.rb} +12 -2
  115. data/spec/{artifact_spec.rb → packaging/artifact_spec.rb} +10 -3
  116. data/spec/{packaging_helper.rb → packaging/packaging_helper.rb} +0 -0
  117. data/spec/{packaging_spec.rb → packaging/packaging_spec.rb} +1 -1
  118. data/spec/sandbox.rb +25 -4
  119. data/spec/{scala_compilers_spec.rb → scala/compiler_spec.rb} +1 -1
  120. data/spec/scala/tests_spec.rb +215 -0
  121. data/spec/spec_helpers.rb +38 -17
  122. metadata +119 -69
  123. data/lib/buildr/java/bdd_frameworks.rb +0 -265
  124. data/lib/buildr/java/groovyc.rb +0 -137
  125. data/spec/build_spec.rb +0 -193
  126. data/spec/java_bdd_frameworks_spec.rb +0 -238
  127. data/spec/spec.opts +0 -6
@@ -16,10 +16,10 @@
16
16
 
17
17
  # This file gets loaded twice when running 'spec spec/*' and not with pleasent results,
18
18
  # so ignore the second attempt to load it.
19
- unless self.class.const_defined?('SpecHelpers')
19
+ unless defined?(SpecHelpers)
20
20
 
21
21
  require 'rubygems'
22
- $LOAD_PATH.unshift File.expand_path('../lib', File.dirname(__FILE__))
22
+ $LOAD_PATH.unshift File.expand_path('../lib', File.dirname(__FILE__)), File.expand_path('../addon', File.dirname(__FILE__))
23
23
  require 'buildr'
24
24
 
25
25
  require File.expand_path('sandbox', File.dirname(__FILE__))
@@ -28,13 +28,15 @@ unless self.class.const_defined?('SpecHelpers')
28
28
 
29
29
  include Checks::Matchers
30
30
 
31
- module ::Kernel #:nodoc:
32
- def warn(message)
33
- $warning ||= []
34
- $warning << message
31
+ [:info, :warn, :error].each do |severity|
32
+ ::Object.class_eval do
33
+ define_method severity do |message|
34
+ $messages ||= {}
35
+ ($messages[severity] ||= []) << message
36
+ end
35
37
  end
36
38
  end
37
-
39
+
38
40
  class << Buildr.application
39
41
  alias :deprecated_without_capture :deprecated
40
42
  def deprecated(message)
@@ -42,32 +44,50 @@ unless self.class.const_defined?('SpecHelpers')
42
44
  end
43
45
  end
44
46
 
45
- class WarningMatcher
46
- def initialize(message)
47
+ class MessageWithSeverityMatcher
48
+ def initialize(severity, message)
49
+ @severity = severity
47
50
  @expect = message
48
51
  end
49
52
 
50
53
  def matches?(target)
51
- $warning = []
54
+ $messages = {@severity => []}
52
55
  target.call
53
- return Regexp === @expect ? $warning.join('\n') =~ @expect : $warning.include?(@expect.to_s)
56
+ return Regexp === @expect ? $messages[@severity].join('\n') =~ @expect : $messages[@severity].include?(@expect.to_s)
54
57
  end
55
58
 
56
59
  def failure_message
57
- $warning ? "Expected warning #{@expect.source}, found #{$warning}" : "Expected warning #{@expect.source}, no warning issued"
60
+ "Expected #{@severity} #{@expect.inspect}, " +
61
+ ($messages[@severity].empty? ? "no #{@severity} issued" : "found #{$messages[@severity].inspect}")
58
62
  end
59
63
 
60
64
  def negative_failure_message
61
- "Found unexpected #{$warning}"
65
+ "Found unexpected #{$messages[@severity].inspect}"
62
66
  end
63
67
  end
64
68
 
69
+ # Test if an info message was shown. You can use a string or regular expression.
70
+ #
71
+ # For example:
72
+ # lambda { info 'ze test' }.should show_info(/ze test/)
73
+ def show_info(message)
74
+ MessageWithSeverityMatcher.new :info, message
75
+ end
76
+
65
77
  # Tests if a warning was issued. You can use a string or regular expression.
66
78
  #
67
79
  # For example:
68
- # lambda { warn 'ze test' }.should warn_that(/ze test/)
69
- def warn_that(message)
70
- WarningMatcher.new message
80
+ # lambda { warn 'ze test' }.should show_warning(/ze test/)
81
+ def show_warning(message)
82
+ MessageWithSeverityMatcher.new :warn, message
83
+ end
84
+
85
+ # Test if an error message was shown. You can use a string or regular expression.
86
+ #
87
+ # For example:
88
+ # lambda { error 'ze test' }.should show_error(/ze test/)
89
+ def show_error(message)
90
+ MessageWithSeverityMatcher.new :error, message
71
91
  end
72
92
 
73
93
 
@@ -95,7 +115,8 @@ unless self.class.const_defined?('SpecHelpers')
95
115
 
96
116
  def failure_message
97
117
  return @but_not.negative_failure_message if all_ran? && @but_not
98
- "Expected the tasks #{expected} to run, but #{remaining} did not run, or not in the order we expected them to."
118
+ "Expected the tasks #{expected} to run, but #{remaining} did not run, or not in the order we expected them to." +
119
+ " Tasks that ran: #{$executed.inspect}"
99
120
  end
100
121
 
101
122
  def negative_failure_message
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vic-buildr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Apache Buildr
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-05-14 00:00:00 -07:00
12
+ date: 2008-08-13 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -37,7 +37,7 @@ dependencies:
37
37
  requirements:
38
38
  - - "="
39
39
  - !ruby/object:Gem::Version
40
- version: 2.0.1
40
+ version: 2.0.4
41
41
  version:
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: net-sftp
@@ -46,7 +46,7 @@ dependencies:
46
46
  requirements:
47
47
  - - "="
48
48
  - !ruby/object:Gem::Version
49
- version: 2.0.0
49
+ version: 2.0.1
50
50
  version:
51
51
  - !ruby/object:Gem::Dependency
52
52
  name: rubyzip
@@ -67,49 +67,67 @@ dependencies:
67
67
  version: 1.4.0
68
68
  version:
69
69
  - !ruby/object:Gem::Dependency
70
- name: Antwrap
70
+ name: rubyforge
71
71
  version_requirement:
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - "="
75
75
  - !ruby/object:Gem::Version
76
- version: 0.7.0
76
+ version: 1.0.0
77
77
  version:
78
78
  - !ruby/object:Gem::Dependency
79
- name: rspec
79
+ name: hoe
80
80
  version_requirement:
81
81
  version_requirements: !ruby/object:Gem::Requirement
82
82
  requirements:
83
83
  - - "="
84
84
  - !ruby/object:Gem::Version
85
- version: 1.1.4
85
+ version: 1.7.0
86
86
  version:
87
87
  - !ruby/object:Gem::Dependency
88
- name: xml-simple
88
+ name: rjb
89
89
  version_requirement:
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
92
  - - "="
93
93
  - !ruby/object:Gem::Version
94
- version: 1.0.11
94
+ version: 1.1.6
95
95
  version:
96
96
  - !ruby/object:Gem::Dependency
97
- name: archive-tar-minitar
97
+ name: Antwrap
98
98
  version_requirement:
99
99
  version_requirements: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "="
102
102
  - !ruby/object:Gem::Version
103
- version: 0.5.2
103
+ version: 0.7.0
104
104
  version:
105
105
  - !ruby/object:Gem::Dependency
106
- name: rubyforge
106
+ name: rspec
107
107
  version_requirement:
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - "="
111
111
  - !ruby/object:Gem::Version
112
- version: 1.0.0
112
+ version: 1.1.5
113
+ version:
114
+ - !ruby/object:Gem::Dependency
115
+ name: xml-simple
116
+ version_requirement:
117
+ version_requirements: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "="
120
+ - !ruby/object:Gem::Version
121
+ version: 1.0.11
122
+ version:
123
+ - !ruby/object:Gem::Dependency
124
+ name: archive-tar-minitar
125
+ version_requirement:
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "="
129
+ - !ruby/object:Gem::Version
130
+ version: 0.5.2
113
131
  version:
114
132
  description:
115
133
  email: buildr-user@incubator.apache.org
@@ -118,7 +136,7 @@ executables:
118
136
  extensions: []
119
137
 
120
138
  extra_rdoc_files:
121
- - README
139
+ - README.rdoc
122
140
  - CHANGELOG
123
141
  - LICENSE
124
142
  - NOTICE
@@ -152,25 +170,33 @@ files:
152
170
  - lib/buildr/java/org/apache
153
171
  - lib/buildr/java/org/apache/buildr
154
172
  - lib/buildr/java/org/apache/buildr/JavaTestFilter.class
155
- - lib/buildr/java/org/apache/buildr/BuildrNail.java
156
- - lib/buildr/java/org/apache/buildr/BuildrNail$Main.class
157
- - lib/buildr/java/org/apache/buildr/BuildrNail.class
158
173
  - lib/buildr/java/org/apache/buildr/JavaTestFilter.java
159
174
  - lib/buildr/java/packaging.rb
160
- - lib/buildr/java/test_frameworks.rb
161
175
  - lib/buildr/java/commands.rb
162
176
  - lib/buildr/java/jruby.rb
177
+ - lib/buildr/java/jtestr_runner.rb.erb
178
+ - lib/buildr/java/compiler.rb
163
179
  - lib/buildr/java/version_requirement.rb
164
- - lib/buildr/java/groovyc.rb
165
- - lib/buildr/java/compilers.rb
166
- - lib/buildr/java/bdd_frameworks.rb
180
+ - lib/buildr/java/tests.rb
167
181
  - lib/buildr/java/deprecated.rb
182
+ - lib/buildr/java/bdd.rb
168
183
  - lib/buildr/java/ant.rb
169
184
  - lib/buildr/java/pom.rb
170
185
  - lib/buildr/java/rjb.rb
186
+ - lib/buildr/java/test_result.rb
171
187
  - lib/buildr/core.rb
172
188
  - lib/buildr/packaging.rb
189
+ - lib/buildr/scala
190
+ - lib/buildr/scala/compiler.rb
191
+ - lib/buildr/scala/tests.rb
192
+ - lib/buildr/scala.rb
193
+ - lib/buildr/groovy
194
+ - lib/buildr/groovy/compiler.rb
195
+ - lib/buildr/groovy/bdd.rb
173
196
  - lib/buildr/ide.rb
197
+ - lib/buildr/groovy.rb
198
+ - lib/buildr/resources
199
+ - lib/buildr/resources/buildr.icns
174
200
  - lib/buildr/packaging
175
201
  - lib/buildr/packaging/artifact_search.rb
176
202
  - lib/buildr/packaging/artifact_namespace.rb
@@ -181,66 +207,29 @@ files:
181
207
  - lib/buildr/packaging/package.rb
182
208
  - lib/buildr/java.rb
183
209
  - lib/buildr.rb
210
+ - bin/buildr
184
211
  - addon/buildr
185
212
  - addon/buildr/org
186
213
  - addon/buildr/org/apache
187
214
  - addon/buildr/org/apache/buildr
188
215
  - addon/buildr/org/apache/buildr/JettyWrapper.java
189
216
  - addon/buildr/org/apache/buildr/JettyWrapper$BuildrHandler.class
217
+ - addon/buildr/org/apache/buildr/BuildrNail.java
190
218
  - addon/buildr/org/apache/buildr/JettyWrapper.class
219
+ - addon/buildr/org/apache/buildr/BuildrNail$Main.class
220
+ - addon/buildr/org/apache/buildr/BuildrNail.class
191
221
  - addon/buildr/org/apache/buildr/JettyWrapper$1.class
192
222
  - addon/buildr/nailgun.rb
193
223
  - addon/buildr/cobertura.rb
194
224
  - addon/buildr/hibernate.rb
195
225
  - addon/buildr/antlr.rb
196
226
  - addon/buildr/jetty.rb
227
+ - addon/buildr/emma.rb
197
228
  - addon/buildr/xmlbeans.rb
198
229
  - addon/buildr/openjpa.rb
199
230
  - addon/buildr/javacc.rb
200
231
  - addon/buildr/jdepend.rb
201
232
  - addon/buildr/jibx.rb
202
- - README
203
- - CHANGELOG
204
- - LICENSE
205
- - NOTICE
206
- - DISCLAIMER
207
- - KEYS
208
- - buildr.gemspec
209
- - Rakefile
210
- - rakelib/apache.rake
211
- - rakelib/changelog.rake
212
- - rakelib/rubyforge.rake
213
- - rakelib/scm.rake
214
- - rakelib/rspec.rake
215
- - rakelib/stage.rake
216
- - rakelib/setup.rake
217
- - rakelib/release.rake
218
- - rakelib/doc.rake
219
- - rakelib/package.rake
220
- - spec/java_bdd_frameworks_spec.rb
221
- - spec/artifact_namespace_spec.rb
222
- - spec/build_spec.rb
223
- - spec/sandbox.rb
224
- - spec/test_spec.rb
225
- - spec/artifact_spec.rb
226
- - spec/compile_spec.rb
227
- - spec/spec_helpers.rb
228
- - spec/packaging_spec.rb
229
- - spec/java_packaging_spec.rb
230
- - spec/scala_compilers_spec.rb
231
- - spec/java_test_frameworks_spec.rb
232
- - spec/checks_spec.rb
233
- - spec/transport_spec.rb
234
- - spec/groovy_compilers_spec.rb
235
- - spec/common_spec.rb
236
- - spec/java_spec.rb
237
- - spec/packaging_helper.rb
238
- - spec/java_compilers_spec.rb
239
- - spec/spec.opts
240
- - spec/version_requirement_spec.rb
241
- - spec/archive_spec.rb
242
- - spec/application_spec.rb
243
- - spec/project_spec.rb
244
233
  - doc/css
245
234
  - doc/css/default.css
246
235
  - doc/css/syntax.css
@@ -259,6 +248,7 @@ files:
259
248
  - doc/pages/contributing.textile
260
249
  - doc/pages/download.textile
261
250
  - doc/pages/building.textile
251
+ - doc/pages/languages.textile
262
252
  - doc/pages/getting_started.textile
263
253
  - doc/pages/packaging.textile
264
254
  - doc/pages/troubleshooting.textile
@@ -275,22 +265,82 @@ files:
275
265
  - doc/images/tip.png
276
266
  - doc/images/zbuildr.tif
277
267
  - doc/images/buildr.png
268
+ - doc/images/growl-icon.tiff
278
269
  - doc/images/buildr-hires.png
270
+ - doc/images/project-structure.png
279
271
  - doc/site.haml
280
272
  - doc/print.haml
273
+ - spec/ide
274
+ - spec/ide/eclipse_spec.rb
275
+ - spec/core
276
+ - spec/core/artifact_namespace_spec.rb
277
+ - spec/core/build_spec.rb
278
+ - spec/core/test_spec.rb
279
+ - spec/core/compile_spec.rb
280
+ - spec/core/checks_spec.rb
281
+ - spec/core/transport_spec.rb
282
+ - spec/core/common_spec.rb
283
+ - spec/core/application_spec.rb
284
+ - spec/core/project_spec.rb
285
+ - spec/java
286
+ - spec/java/compiler_spec.rb
287
+ - spec/java/tests_spec.rb
288
+ - spec/java/packaging_spec.rb
289
+ - spec/java/ant.rb
290
+ - spec/java/java_spec.rb
291
+ - spec/java/bdd_spec.rb
292
+ - spec/addon
293
+ - spec/addon/test_coverage_spec.rb
294
+ - spec/addon/emma_spec.rb
295
+ - spec/addon/cobertura_spec.rb
296
+ - spec/scala
297
+ - spec/scala/compiler_spec.rb
298
+ - spec/scala/tests_spec.rb
299
+ - spec/sandbox.rb
300
+ - spec/spec_helpers.rb
301
+ - spec/groovy
302
+ - spec/groovy/compiler_spec.rb
303
+ - spec/groovy/bdd_spec.rb
304
+ - spec/version_requirement_spec.rb
305
+ - spec/packaging
306
+ - spec/packaging/artifact_spec.rb
307
+ - spec/packaging/packaging_spec.rb
308
+ - spec/packaging/packaging_helper.rb
309
+ - spec/packaging/archive_spec.rb
310
+ - README.rdoc
311
+ - LICENSE
312
+ - NOTICE
313
+ - DISCLAIMER
314
+ - CHANGELOG
315
+ - buildr.gemspec
316
+ - buildr.buildfile
317
+ - Rakefile
318
+ - rakelib/apache.rake
319
+ - rakelib/changelog.rake
320
+ - rakelib/rubyforge.rake
321
+ - rakelib/scm.rake
322
+ - rakelib/rspec.rake
323
+ - rakelib/stage.rake
324
+ - rakelib/setup.rake
325
+ - rakelib/release.rake
326
+ - rakelib/doc.rake
327
+ - rakelib/package.rake
328
+ - _buildr
329
+ - etc/KEYS
330
+ - etc/git-svn-authors
281
331
  has_rdoc: true
282
- homepage: http://incubator.apache.org/buildr/
332
+ homepage: http://incubator.apache.org/buildr
283
333
  post_install_message:
284
334
  rdoc_options:
285
335
  - --title
286
- - Buildr -- A build system that doesn't suck
336
+ - Buildr
287
337
  - --main
288
- - README
338
+ - README.rdoc
289
339
  - --line-numbers
290
340
  - --inline-source
291
341
  - -p
292
342
  - --webcvs
293
- - http://svn.apache.org/repos/asf/incubator/#{spec.name}/trunk/
343
+ - http://svn.apache.org/repos/asf/incubator/buildr/trunk/
294
344
  require_paths:
295
345
  - lib
296
346
  - addon
@@ -309,7 +359,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
309
359
  requirements: []
310
360
 
311
361
  rubyforge_project: buildr
312
- rubygems_version: 1.0.1
362
+ rubygems_version: 1.2.0
313
363
  signing_key:
314
364
  specification_version: 2
315
365
  summary: A build system that doesn't suck
@@ -1,265 +0,0 @@
1
- # Licensed to the Apache Software Foundation (ASF) under one or more
2
- # contributor license agreements. See the NOTICE file distributed with this
3
- # work for additional information regarding copyright ownership. The ASF
4
- # licenses this file to you under the Apache License, Version 2.0 (the
5
- # "License"); you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- #
8
- # http://www.apache.org/licenses/LICENSE-2.0
9
- #
10
- # Unless required by applicable law or agreed to in writing, software
11
- # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12
- # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13
- # License for the specific language governing permissions and limitations under
14
- # the License.
15
-
16
-
17
- require 'buildr/java/test_frameworks'
18
-
19
-
20
- module Buildr
21
-
22
- # Mixin for test frameworks using src/spec/{lang}
23
- module TestFramework::JavaBDD #:nodoc:
24
-
25
- class << self
26
- def included(mod)
27
- mod.module_eval do
28
- include TestFramework::JavaTest
29
- include ClassMethods
30
- end
31
- mod.extend ClassMethods
32
- mod.bdd_dir = :spec
33
- mod.lang = :java
34
- super
35
- end
36
- end
37
-
38
- module ClassMethods
39
- attr_accessor :lang, :bdd_dir
40
- end
41
-
42
- def initialize(task, options)
43
- self.bdd_dir = self.class.bdd_dir
44
- project = task.project
45
- project.task('test:compile').tap do |comp|
46
- comp.send :associate_with, project, bdd_dir
47
- self.lang = comp.language || self.class.lang
48
- end
49
- project.task('test:resources').tap do |res|
50
- res.send :associate_with, project, bdd_dir
51
- res.filter.clear
52
- project.path_to(:source, bdd_dir, :resources).tap { |dir| res.from dir if File.exist?(dir) }
53
- end
54
- super
55
- end
56
- end
57
-
58
- class RSpec < TestFramework::Base
59
- include TestFramework::JavaBDD
60
- self.lang = :ruby
61
-
62
-
63
- REQUIRES = []
64
- REQUIRES.unshift 'org.jruby:jruby-complete:jar:1.1.1' unless RUBY_PLATFORM =~ /java/
65
-
66
- TESTS_PATTERN = [ /_spec.rb$/ ]
67
- OPTIONS = [:properties, :java_args]
68
-
69
- def self.applies_to?(project) #:nodoc:
70
- !Dir[project.path_to(:source, bdd_dir, lang, '**/*_spec.rb')].empty?
71
- end
72
-
73
- def tests(dependencies) #:nodoc:
74
- Dir[task.project.path_to(:source, bdd_dir, lang, '**/*_spec.rb')].
75
- select do |name|
76
- selector = ENV['SPEC']
77
- selector.nil? || Regexp.new(selector) === name
78
- end
79
- end
80
-
81
- def run(tests, dependencies) #:nodoc:
82
- cmd_options = task.options.only(:properties, :java_args)
83
- dependencies.push *Dir.glob(File.join(jruby_home, "lib/*.jar")) if RUBY_PLATFORM =~ /java/
84
- cmd_options.update :classpath => dependencies, :project => task.project
85
-
86
- # TODO: Setting up JRuby is something to do before running Buildr.
87
- #install_gems(cmd_options)
88
-
89
- report_dir = task.report_to.to_s
90
- FileUtils.rm_rf report_dir
91
- ENV['CI_REPORTS'] = report_dir
92
-
93
- jruby("-Ilib", "-S", "spec",
94
- "--require", "ci/reporter/rake/rspec_loader",
95
- "--format", "CI::Reporter::RSpecDoc", tests,
96
- cmd_options.merge({:name => "RSpec"}))
97
- tests
98
- end
99
-
100
- private
101
- def jruby_home
102
- @jruby_home ||= RUBY_PLATFORM =~ /java/ ? Config::CONFIG['prefix'] : File.expand_path(".jruby", ENV['HOME'])
103
- end
104
-
105
- def gem_path(project, gem_name, *additional)
106
- dir = Dir["#{jruby_home(project)}/lib/ruby/gems/1.8/gems/#{gem_name}*"].to_a.first
107
- dir = File.join(dir, *additional) unless additional.empty?
108
- dir
109
- end
110
-
111
- def required_gems(options)
112
- ["ci_reporter", options[:required_gems]].flatten.compact
113
- end
114
-
115
- def jruby(*args)
116
- java_args = ["org.jruby.Main", *args]
117
- java_args << {} unless Hash === args.last
118
- cmd_options = java_args.last
119
- project = cmd_options.delete(:project)
120
- cmd_options[:java_args] ||= []
121
- cmd_options[:java_args] << "-Xmx512m" unless cmd_options[:java_args].detect {|a| a =~ /^-Xmx/}
122
- cmd_options[:properties] ||= {}
123
- cmd_options[:properties]["jruby.home"] = jruby_home
124
- Java::Commands.java(*java_args)
125
- end
126
-
127
- #def install_gems(options)
128
- # unless required_gems(options).all? {|g| gem_path(options[:project], g)}
129
- # args = ["-S", "maybe_install_gems", *required_gems(options)]
130
- # args << {:name => "JRuby Setup"}.merge(options)
131
- # jruby(*args)
132
- # end
133
- #end
134
-
135
- end
136
-
137
- class JtestR < TestFramework::Base
138
- include TestFramework::JavaBDD
139
- self.lang = :ruby
140
- end
141
-
142
- # JBehave is a Java BDD framework. To use in your project:
143
- # test.using :jbehave
144
- #
145
- # This framework will search in your project for:
146
- # src/spec/java/**/*Behaviour.java
147
- #
148
- # JMock libraries are included on runtime.
149
- #
150
- # Support the following options:
151
- # * :properties -- Hash of properties to the test suite
152
- # * :java_args -- Arguments passed to the JVM
153
- class JBehave < TestFramework::Base
154
- include TestFramework::JavaBDD
155
-
156
- VERSION = "1.0.1" unless const_defined?('VERSION')
157
- REQUIRES = ["org.jbehave:jbehave:jar:#{VERSION}",
158
- "jmock:jmock-cglib:jar:#{JMock::VERSION}",
159
- "cglib:cglib-full:jar:2.0.2",
160
- ] + JUnit::REQUIRES
161
- TESTS_PATTERN = [ /Behaviou?r$/ ]
162
-
163
- def self.applies_to?(project) #:nodoc:
164
- %w{
165
- **/*Behaviour.java **/*Behavior.java
166
- }.any? { |glob| !Dir[project.path_to(:source, bdd_dir, lang, glob)].empty? }
167
- end
168
-
169
- def tests(dependencies) #:nodoc:
170
- filter_classes(dependencies, :class_names => TESTS_PATTERN,
171
- :interfaces => %w{ org.jbehave.core.behaviour.Behaviours })
172
- end
173
-
174
- def run(tests, dependencies) #:nodoc:
175
- cmd_args = ['org.jbehave.core.BehaviourRunner']
176
- cmd_options = { :properties=>options[:properties], :java_args=>options[:java_args], :classpath=>dependencies }
177
- tests.inject([]) do |passed, test|
178
- begin
179
- Java::Commands.java cmd_args, test, cmd_options
180
- passed << test
181
- rescue
182
- passed
183
- end
184
- end
185
- end
186
-
187
- end
188
-
189
- # EasyB is a Groovy based BDD framework.
190
- # To use in your project:
191
- #
192
- # test.using :easyb
193
- #
194
- # This framework will search in your project for:
195
- # src/spec/groovy/**/*Story.groovy
196
- # src/spec/groovy/**/*Behavior.groovy
197
- #
198
- # Support the following options:
199
- # * :format -- Report format :txt or :xml, default is :txt
200
- # * :properties -- Hash of properties passed to the test suite.
201
- # * :java_args -- Arguments passed to the JVM.
202
- class EasyB < TestFramework::Base
203
- include TestFramework::JavaBDD
204
- self.lang = :groovy
205
-
206
- VERSION = "0.7" unless const_defined?(:VERSION)
207
- REQUIRES = ["org.easyb:easyb:jar:#{VERSION}",
208
- 'org.codehaus.groovy:groovy:jar:1.5.3',
209
- 'asm:asm:jar:2.2.3',
210
- 'commons-cli:commons-cli:jar:1.0',
211
- 'antlr:antlr:jar:2.7.7']
212
- TESTS_PATTERN = [ /(Story|Behavior).groovy$/ ]
213
- OPTIONS = [:format, :properties, :java_args]
214
-
215
- def self.applies_to?(project) #:nodoc:
216
- %w{
217
- **/*Behaviour.groovy **/*Behavior.groovy **/*Story.groovy
218
- }.any? { |glob| !Dir[project.path_to(:source, bdd_dir, lang, glob)].empty? }
219
- end
220
-
221
- def tests(dependencies) #:nodoc:
222
- Dir[task.project.path_to(:source, bdd_dir, lang, "**/*.groovy")].
223
- select { |name| TESTS_PATTERN.any? { |pat| pat === name } }
224
- end
225
-
226
- def run(tests, dependencies) #:nodoc:
227
- options = { :format => :txt }.merge(self.options).only(*OPTIONS)
228
-
229
- if :txt == options[:format]
230
- easyb_format, ext = 'txtstory', '.txt'
231
- elsif :xml == options[:format]
232
- easyb_format, ext = 'xmlbehavior', '.xml'
233
- else
234
- raise "Invalid format #{options[:format]} expected one of :txt :xml"
235
- end
236
-
237
- cmd_args = [ 'org.disco.easyb.SpecificationRunner' ]
238
- cmd_options = { :properties => options[:properties],
239
- :java_args => options[:java_args],
240
- :classpath => dependencies }
241
-
242
- tests.inject([]) do |passed, test|
243
- name = test.sub(/.*?groovy[\/\\]/, '').pathmap('%X')
244
- report = File.join(task.report_to.to_s, name + ext)
245
- mkpath report.pathmap('%d'), :verbose => false
246
- begin
247
- Java::Commands.java cmd_args,
248
- "-#{easyb_format}", report,
249
- test, cmd_options.merge(:name => name)
250
- rescue => e
251
- passed
252
- else
253
- passed << test
254
- end
255
- end
256
- end
257
-
258
- end # EasyB
259
-
260
- end
261
-
262
- Buildr::TestFramework << Buildr::RSpec
263
- Buildr::TestFramework << Buildr::JtestR
264
- Buildr::TestFramework << Buildr::JBehave
265
- Buildr::TestFramework << Buildr::EasyB