buildr 1.4.21 → 1.4.22
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +32 -0
- data/addon/buildr/checkstyle.rb +1 -1
- data/addon/buildr/gwt.rb +6 -5
- data/addon/buildr/sonar.rb +8 -11
- data/buildr.gemspec +6 -6
- data/doc/download.textile +18 -6
- data/doc/index.textile +17 -29
- data/doc/more_stuff.textile +18 -0
- data/lib/buildr.rb +1 -1
- data/lib/buildr/core/checks.rb +4 -3
- data/lib/buildr/core/test.rb +5 -0
- data/lib/buildr/ide/idea.rb +102 -9
- data/lib/buildr/java/test_result.rb +45 -37
- data/lib/buildr/rspec_check.rb +51 -0
- data/lib/buildr/version.rb +1 -1
- data/rakelib/release.rake +31 -17
- data/spec/ide/idea_spec.rb +54 -0
- data/spec/spec_helpers.rb +3 -1
- metadata +47 -46
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c24f0f4f9ffc98f5cc51c62f3d1c2222664fe251
|
4
|
+
data.tar.gz: 4e2f497dd9d822aefcb8d7cb91d117c8fbfc3ab7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ed55e814fff9b5d1d747b4738b1645729b0e4c9dc8850f9a4a4ba36ff909ad8f3aeccf2e43f1124b9f987d63addd1da11f4a2f613b2b9f747a66c143949c4d68
|
7
|
+
data.tar.gz: d4d0a184e33a455fcf00d2d7d006ab7de4f86ecd5a1e2e24f961124a13c50041cb0514e5e6337fb6f1213e64d435b3f6d7f658ce428b6660910328049757b8be
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,35 @@
|
|
1
|
+
1.4.22 (2015-02-28)
|
2
|
+
* Change: BUILDR-704 - Updated the Sonar addon to support the latest version of SonarQube
|
3
|
+
Runner. Submitted by Ross Mahony.
|
4
|
+
* Added: Add support for ipr.add_glassfish_remote_configuration method that generates
|
5
|
+
a remote glassfish configuration in IntelliJ IDEA project files.
|
6
|
+
* Added: Add support for iml.prefix and ipr.prefix settings that prefix the generated
|
7
|
+
IntelliJ IDEA project and module files.
|
8
|
+
* Change: Update the buildr gemspec so that rspec is no longer a required dependency.
|
9
|
+
This enables end-users to use a different version of rspec and buildr in
|
10
|
+
the same project. The rspec version MUST be be compatible with the version
|
11
|
+
used by Buildr if rspec features are used from within Buildr. Buildr also
|
12
|
+
issues a warning if the `check` method is called and rspec has not been loaded.
|
13
|
+
The warning includes directions on how to resolve the issue. Submitted by r6p.
|
14
|
+
* Fixed: A long standing bug existed such that if tests failed to compile, and the
|
15
|
+
option Buildr.options.test is set to :all then the compilation error would
|
16
|
+
not result in a failed build. As many people set the Buildr.options.test to
|
17
|
+
:all in their continuous delivery/integration tools, this has caused some
|
18
|
+
problems. This has been fixed by ensuring all the problems associated with
|
19
|
+
the resolving the prerequisites are not caught when Buildr.options.test is
|
20
|
+
set to :all.
|
21
|
+
* Change: Update checkstyle to 6.1.1. Submitted by neher.
|
22
|
+
* Fixed: Avoid empty dependency issue in gwt addon if the attempting to gwt compile
|
23
|
+
a project that has no src/main/java.
|
24
|
+
* Fixed: Support dependencies in the gwt addon that are other local projects rather
|
25
|
+
that artifacts, without forcing a compilation of dependency when parsing
|
26
|
+
buildfile.
|
27
|
+
* Added: Support configuration of sql dialect mapping in IDEA generated project files
|
28
|
+
through methods on the ipr extension ipr.mssql_dialect_mapping,
|
29
|
+
ipr.postgres_dialect_mapping and ipr.sql_dialect_mappings
|
30
|
+
* Added: Support specification of the target project to which the gwt compilation
|
31
|
+
artifacts are added as an asset, by using :target_project option.
|
32
|
+
|
1
33
|
1.4.21 (2014-11-28)
|
2
34
|
* Change: Upgrade atoulme-Antwrap to 0.7.5 to remove deprecation warnings in
|
3
35
|
modern JRuby. Suggested by Pepijn Van Eeckhoudt.
|
data/addon/buildr/checkstyle.rb
CHANGED
@@ -23,7 +23,7 @@ module Buildr
|
|
23
23
|
# The specs for requirements
|
24
24
|
def dependencies
|
25
25
|
[
|
26
|
-
'com.puppycrawl.tools:checkstyle:jar:6.
|
26
|
+
'com.puppycrawl.tools:checkstyle:jar:6.1.1',
|
27
27
|
'antlr:antlr:jar:2.7.7',
|
28
28
|
'org.antlr:antlr4-runtime:jar:4.3',
|
29
29
|
'com.google.guava:guava:jar:18.0',
|
data/addon/buildr/gwt.rb
CHANGED
@@ -112,12 +112,14 @@ module Buildr
|
|
112
112
|
include Extension
|
113
113
|
|
114
114
|
def gwt(module_names, options = {})
|
115
|
+
p = options[:target_project]
|
116
|
+
target_project = p.nil? ? project : p.is_a?(String) ? project(p) : p
|
115
117
|
output_key = options[:output_key] || project.id
|
116
118
|
output_dir = project._(:target, :generated, :gwt, output_key)
|
117
|
-
artifacts = ([project.compile.target] + project.compile.sources + project.resources.sources).collect do |a|
|
119
|
+
artifacts = ([project.compile.target] + project.compile.sources + project.resources.sources).flatten.compact.collect do |a|
|
118
120
|
a.is_a?(String) ? file(a) : a
|
119
121
|
end
|
120
|
-
dependencies = options[:dependencies] ? artifacts(options[:dependencies]) : (project.compile.dependencies + [project.compile.target]).collect do |dep|
|
122
|
+
dependencies = options[:dependencies] ? artifacts(options[:dependencies]) : (project.compile.dependencies + [project.compile.target]).flatten.compact.collect do |dep|
|
121
123
|
dep.is_a?(String) ? file(dep) : dep
|
122
124
|
end
|
123
125
|
|
@@ -126,10 +128,9 @@ module Buildr
|
|
126
128
|
version = gwt_detect_version(dependencies) || Buildr::GWT.version
|
127
129
|
|
128
130
|
if project.iml?
|
129
|
-
|
130
131
|
existing_deps = project.compile.dependencies.collect do |d|
|
131
132
|
a = artifact(d)
|
132
|
-
a.invoke if a.
|
133
|
+
a.invoke if a.is_a?(Buildr::Artifact)
|
133
134
|
a.to_s
|
134
135
|
end
|
135
136
|
Buildr::GWT.dependencies(version).each do |d|
|
@@ -148,7 +149,7 @@ module Buildr
|
|
148
149
|
end
|
149
150
|
task.enhance(dependencies)
|
150
151
|
task.enhance([project.compile])
|
151
|
-
|
152
|
+
target_project.assets.paths << task
|
152
153
|
task
|
153
154
|
end
|
154
155
|
|
data/addon/buildr/sonar.rb
CHANGED
@@ -21,7 +21,7 @@ module Buildr
|
|
21
21
|
# The specs for requirements
|
22
22
|
def dependencies
|
23
23
|
[
|
24
|
-
'org.codehaus.sonar-plugins:sonar-ant-task:jar:
|
24
|
+
'org.codehaus.sonar-plugins:sonar-ant-task:jar:2.2'
|
25
25
|
]
|
26
26
|
end
|
27
27
|
|
@@ -32,17 +32,14 @@ module Buildr
|
|
32
32
|
|
33
33
|
cp = Buildr.artifacts(self.dependencies).each(&:invoke).map(&:to_s).join(File::PATH_SEPARATOR)
|
34
34
|
|
35
|
-
args = {
|
36
|
-
:key => key,
|
37
|
-
:version => '1',
|
38
|
-
'xmlns:sonar' => 'antlib:org.sonar.ant'
|
39
|
-
}
|
40
|
-
|
41
35
|
Buildr.ant('sonar') do |ant|
|
42
|
-
ant.taskdef
|
36
|
+
ant.taskdef :name => 'sonar', :classname => 'org.sonar.ant.SonarTask', :classpath => cp
|
43
37
|
|
44
38
|
ant.property :name => 'sonar.projectName', :value => project_name
|
45
39
|
|
40
|
+
ant.property :name => 'sonar.projectKey', :value => key
|
41
|
+
ant.property :name => 'sonar.projectVersion', :value => '1.0'
|
42
|
+
|
46
43
|
ant.property :name => 'sonar.jdbc.url', :value => jdbc_url
|
47
44
|
ant.property :name => 'sonar.jdbc.driverClassName', :value => jdbc_driver_class_name
|
48
45
|
ant.property :name => 'sonar.jdbc.username', :value => jdbc_username
|
@@ -52,10 +49,10 @@ module Buildr
|
|
52
49
|
ant.property :name => 'sonar.checkstyle.generateXml', :value => 'true'
|
53
50
|
|
54
51
|
ant.property :name => 'sonar.sources', :value => sources.join(',')
|
55
|
-
ant.property :name => 'sonar.binaries', :value => binaries.join(',')
|
56
|
-
ant.property :name => 'sonar.libraries', :value => libraries.join(',')
|
52
|
+
ant.property :name => 'sonar.java.binaries', :value => binaries.join(',')
|
53
|
+
ant.property :name => 'sonar.java.libraries', :value => libraries.join(',')
|
57
54
|
|
58
|
-
ant.sonar
|
55
|
+
ant.sonar
|
59
56
|
|
60
57
|
end
|
61
58
|
end
|
data/buildr.gemspec
CHANGED
@@ -68,10 +68,6 @@ for those one-off tasks, with a language that's a joy to use.
|
|
68
68
|
spec.add_dependency 'rjb', '1.5.1' if ($platform.to_s == 'x86-mswin32' || $platform.to_s == 'ruby')
|
69
69
|
spec.add_dependency 'atoulme-Antwrap', '0.7.5'
|
70
70
|
spec.add_dependency 'diff-lcs', '1.2.4'
|
71
|
-
spec.add_dependency 'rspec-expectations', '2.14.3'
|
72
|
-
spec.add_dependency 'rspec-mocks', '2.14.3'
|
73
|
-
spec.add_dependency 'rspec-core', '2.14.5'
|
74
|
-
spec.add_dependency 'rspec', '2.14.1'
|
75
71
|
spec.add_dependency 'xml-simple', '1.1.2'
|
76
72
|
spec.add_dependency 'minitar', '0.5.4'
|
77
73
|
spec.add_dependency 'jruby-openssl', '~> 0.8.2' if $platform.to_s == 'java'
|
@@ -87,8 +83,12 @@ for those one-off tasks, with a language that's a joy to use.
|
|
87
83
|
spec.add_development_dependency 'rdoc', '4.0.1'
|
88
84
|
end
|
89
85
|
|
90
|
-
spec.add_development_dependency 'rspec-
|
91
|
-
spec.add_development_dependency '
|
86
|
+
spec.add_development_dependency 'rspec-expectations', '2.14.3'
|
87
|
+
spec.add_development_dependency 'rspec-mocks', '2.14.3'
|
88
|
+
spec.add_development_dependency 'rspec-core', '2.14.5'
|
89
|
+
spec.add_development_dependency 'rspec', '2.14.1'
|
90
|
+
spec.add_development_dependency 'rspec-retry', '0.2.1'
|
91
|
+
spec.add_development_dependency 'ci_reporter', '1.9.0'
|
92
92
|
# Ideally we would depend on psych when the platform has >= 1.9.2 support and jruby platform version > 1.6.6
|
93
93
|
#spec.add_development_dependency 'psych' if RUBY_VERSION >= '1.9.2'
|
94
94
|
spec.add_development_dependency 'pygmentize', '0.0.3'
|
data/doc/download.textile
CHANGED
@@ -18,16 +18,28 @@ The source code is included in both source and binary distribution, the Gem dist
|
|
18
18
|
|
19
19
|
h2(#dist). Binaries and Source Code
|
20
20
|
|
21
|
+
h3. buildr 1.4.21 (2014-11-28)
|
22
|
+
|
23
|
+
|_. Package |_. MD5 Checksum |_. PGP |
|
24
|
+
| "buildr-1.4.21-java.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.21/buildr-1.4.21-java.gem | "71dda93f4e3f093046342fd8b081ad3f":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21-java.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21-java.gem.asc |
|
25
|
+
| "buildr-1.4.21-x86-mswin32.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.21/buildr-1.4.21-x86-mswin32.gem | "7157a4bda149ccd408934bdce1c220bf":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21-x86-mswin32.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21-x86-mswin32.gem.asc |
|
26
|
+
| "buildr-1.4.21.gem":http://www.apache.org/dyn/closer.cgi/buildr/1.4.21/buildr-1.4.21.gem | "52a7462fc521261f136c9cd8b6bfd89d":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.gem.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.gem.asc |
|
27
|
+
| "buildr-1.4.21.tgz":http://www.apache.org/dyn/closer.cgi/buildr/1.4.21/buildr-1.4.21.tgz | "a4bc7ce263eff547f40c752ecd2fa80c":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.tgz.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.tgz.asc |
|
28
|
+
| "buildr-1.4.21.zip":http://www.apache.org/dyn/closer.cgi/buildr/1.4.21/buildr-1.4.21.zip | "7e8ec75d426b39d5f93410286860cc19":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.zip.md5 | "Sig":http://www.apache.org/dist/buildr/1.4.21/buildr-1.4.21.zip.asc |
|
29
|
+
|
30
|
+
p>. ("Release signing keys":http://www.apache.org/dist/buildr/1.4.21/KEYS)
|
31
|
+
|
32
|
+
|
21
33
|
h3. buildr 1.4.20 (2014-08-23)
|
22
34
|
|
23
35
|
|_. Package |_. MD5 Checksum |_. PGP |
|
24
|
-
| "buildr-1.4.20-java.gem":http://
|
25
|
-
| "buildr-1.4.20-x86-mswin32.gem":http://
|
26
|
-
| "buildr-1.4.20.gem":http://
|
27
|
-
| "buildr-1.4.20.tgz":http://
|
28
|
-
| "buildr-1.4.20.zip":http://
|
36
|
+
| "buildr-1.4.20-java.gem":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-java.gem | "5c556432d31d1b6a8b7f6dc4d40adfd7":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-java.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-java.gem.asc |
|
37
|
+
| "buildr-1.4.20-x86-mswin32.gem":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem | "4db296ff90d82306d80b47c763f771ae":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20-x86-mswin32.gem.asc |
|
38
|
+
| "buildr-1.4.20.gem":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.gem | "78987c8048d9c30c96f07b485df7077c":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.gem.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.gem.asc |
|
39
|
+
| "buildr-1.4.20.tgz":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.tgz | "682d1574dbc9c17db841df6a9632497e":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.tgz.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.tgz.asc |
|
40
|
+
| "buildr-1.4.20.zip":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.zip | "ad04e82d76268ec91a6bc33afcb77490":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.zip.md5 | "Sig":http://archive.apache.org/dist/buildr/1.4.20/buildr-1.4.20.zip.asc |
|
29
41
|
|
30
|
-
p>. ("Release signing keys":http://
|
42
|
+
p>. ("Release signing keys":http://archive.apache.org/dist/buildr/1.4.20/KEYS)
|
31
43
|
|
32
44
|
|
33
45
|
h3. buildr 1.4.19 (2014-07-06)
|
data/doc/index.textile
CHANGED
@@ -46,35 +46,23 @@ So let's get started. You can "read the documentation online":quick_start.html,
|
|
46
46
|
|
47
47
|
h2(#news). What's New
|
48
48
|
|
49
|
-
Highlights from Buildr 1.4.
|
50
|
-
* Change:
|
51
|
-
|
52
|
-
*
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
*
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
* Change: Enhance ipr.add_glassfish_configuration to support the ability to
|
67
|
-
define the version of GlassFish in uses. Change the default to 4.1.0
|
68
|
-
as that is the latest supported variant.
|
69
|
-
* Fixed: Change the name of the GlassFish install in ipr.add_glassfish_configuration
|
70
|
-
to use the same convention that IDEA uses by default. i.e. Name the
|
71
|
-
installation "GlassFish 4.1.0" rather than "Glassfish 4.1.0".
|
72
|
-
* Change: Change the default version of the jdk in IDEA project files to 1.7.
|
73
|
-
* Change: Change the default version of the IDEA project files created to the
|
74
|
-
current release version 13. To revert to the older versions specify
|
75
|
-
ipr.version = '12' in your buildfile.
|
76
|
-
* Added: Enhance the IdeaFile class to easily support mixing in of custom
|
77
|
-
components from either the filesystem or from an artifact.
|
49
|
+
Highlights from Buildr 1.4.22 (2015-02-28)
|
50
|
+
* Change: BUILDR-704 - Updated the Sonar addon to support the latest version of SonarQube
|
51
|
+
Runner. Submitted by Ross Mahony.
|
52
|
+
* Change: Update the buildr gemspec so that rspec is no longer a required dependency.
|
53
|
+
This enables end-users to use a different version of rspec and buildr in
|
54
|
+
the same project. The rspec version MUST be be compatible with the version
|
55
|
+
used by Buildr if rspec features are used from within Buildr. Buildr also
|
56
|
+
issues a warning if the `check` method is called and rspec has not been loaded.
|
57
|
+
The warning includes directions on how to resolve the issue. Submitted by r6p.
|
58
|
+
* Fixed: A long standing bug existed such that if tests failed to compile, and the
|
59
|
+
option Buildr.options.test is set to :all then the compilation error would
|
60
|
+
not result in a failed build. As many people set the Buildr.options.test to
|
61
|
+
:all in their continuous delivery/integration tools, this has caused some
|
62
|
+
problems. This has been fixed by ensuring all the problems associated with
|
63
|
+
the resolving the prerequisites are not caught when Buildr.options.test is
|
64
|
+
set to :all.
|
65
|
+
* Change: Update checkstyle to 6.1.1. Submitted by neher.
|
78
66
|
|
79
67
|
This is a partial list -- see the "CHANGELOG":CHANGELOG for full details.
|
80
68
|
|
data/doc/more_stuff.textile
CHANGED
@@ -528,6 +528,24 @@ foo-suffix2.iml
|
|
528
528
|
bar/bar-suffix2.iml
|
529
529
|
</pre>
|
530
530
|
|
531
|
+
h5. Example: Setting prefix
|
532
|
+
|
533
|
+
{% highlight ruby %}
|
534
|
+
define "foo" do
|
535
|
+
ipr.prefix = "prefix1-"
|
536
|
+
iml.prefix = "prefix2-"
|
537
|
+
define "bar"
|
538
|
+
end
|
539
|
+
{% endhighlight %}
|
540
|
+
|
541
|
+
Will generate:
|
542
|
+
|
543
|
+
<pre>
|
544
|
+
prefix1-foo.ipr
|
545
|
+
prefix2-foo.iml
|
546
|
+
bar/prefix2-bar.iml
|
547
|
+
</pre>
|
548
|
+
|
531
549
|
h4. Disabling project file generation
|
532
550
|
|
533
551
|
The extension will not generate an iml file for a project if the "project.no_iml" method is invoked. Generation of ipr files can be disabled by invoking the method "project.no_ipr".
|
data/lib/buildr.rb
CHANGED
@@ -28,7 +28,6 @@ autoload :YAML, 'yaml'
|
|
28
28
|
autoload :REXML, 'rexml/document'
|
29
29
|
autoload :XmlSimple, 'xmlsimple'
|
30
30
|
autoload :Builder, 'builder' # A different kind of buildr, one we use to create XML.
|
31
|
-
autoload :RSpec, 'rspec'
|
32
31
|
require 'erb'
|
33
32
|
require 'find'
|
34
33
|
require 'uri'
|
@@ -37,6 +36,7 @@ require 'fileutils'
|
|
37
36
|
require 'orderedhash'
|
38
37
|
require 'securerandom'
|
39
38
|
|
39
|
+
require 'buildr/rspec_check'
|
40
40
|
require 'buildr/core/util'
|
41
41
|
require 'buildr/core/console'
|
42
42
|
require 'buildr/core/common'
|
data/lib/buildr/core/checks.rb
CHANGED
@@ -84,7 +84,7 @@ module Buildr #:nodoc:
|
|
84
84
|
def initialize(*args, &block)
|
85
85
|
@description = args.pop if String === args.last
|
86
86
|
@subject = args.shift
|
87
|
-
raise ArgumentError,
|
87
|
+
raise ArgumentError, 'Expecting subject followed by description, and either one is optional. Not quite sure what to do with this list of arguments.' unless args.empty?
|
88
88
|
@block = block || lambda { |klass| info "Pending: #{description}" }
|
89
89
|
end
|
90
90
|
|
@@ -150,9 +150,9 @@ module Buildr #:nodoc:
|
|
150
150
|
end
|
151
151
|
end or fail "Checks failed for project #{project.name} (see errors above)."
|
152
152
|
end
|
153
|
-
project.task(
|
153
|
+
project.task('package').enhance do |task|
|
154
154
|
# Run all actions before checks.
|
155
|
-
task.enhance { project.task(
|
155
|
+
task.enhance { project.task('check').invoke }
|
156
156
|
end
|
157
157
|
end
|
158
158
|
|
@@ -186,6 +186,7 @@ module Buildr #:nodoc:
|
|
186
186
|
# During development you can write placeholder expectations by omitting the block. This will simply report
|
187
187
|
# the expectation as pending.
|
188
188
|
def check(*args, &block)
|
189
|
+
Buildr.ensure_rspec('check() method invoked in buildfile')
|
189
190
|
expectations << Checks::Expectation.new(*args, &block)
|
190
191
|
end
|
191
192
|
|
data/lib/buildr/core/test.rb
CHANGED
@@ -154,6 +154,11 @@ module Buildr #:nodoc:
|
|
154
154
|
projects = ([project] + project.projects).select { |project| !(project.test.options[:integration] ^ integration) }
|
155
155
|
projects.each do |project|
|
156
156
|
info "Testing #{project.name}"
|
157
|
+
# Invoke the prerequisites outside of the rescue block, otherwise errors converging
|
158
|
+
# the prerequisites are swallowed (and treated like failed test results). Moving the
|
159
|
+
# code outside means problems such as test code that does not compile will result in a
|
160
|
+
# build failure even if Buildr.options.test is set to :all
|
161
|
+
project.test.prerequisites.each{|p|p.is_a?(String) ? file(p).invoke : p.invoke}
|
157
162
|
begin
|
158
163
|
project.test.invoke
|
159
164
|
rescue
|
data/lib/buildr/ide/idea.rb
CHANGED
@@ -21,10 +21,12 @@ module Buildr #:nodoc:
|
|
21
21
|
|
22
22
|
# Abstract base class for IdeaModule and IdeaProject
|
23
23
|
class IdeaFile
|
24
|
+
DEFAULT_PREFIX = ''
|
24
25
|
DEFAULT_SUFFIX = ''
|
25
26
|
DEFAULT_LOCAL_REPOSITORY_ENV_OVERRIDE = 'MAVEN_REPOSITORY'
|
26
27
|
|
27
28
|
attr_reader :buildr_project
|
29
|
+
attr_writer :prefix
|
28
30
|
attr_writer :suffix
|
29
31
|
attr_writer :id
|
30
32
|
attr_accessor :template
|
@@ -34,6 +36,10 @@ module Buildr #:nodoc:
|
|
34
36
|
@local_repository_env_override = DEFAULT_LOCAL_REPOSITORY_ENV_OVERRIDE
|
35
37
|
end
|
36
38
|
|
39
|
+
def prefix
|
40
|
+
@prefix ||= DEFAULT_PREFIX
|
41
|
+
end
|
42
|
+
|
37
43
|
def suffix
|
38
44
|
@suffix ||= DEFAULT_SUFFIX
|
39
45
|
end
|
@@ -72,7 +78,7 @@ module Buildr #:nodoc:
|
|
72
78
|
end
|
73
79
|
|
74
80
|
def name
|
75
|
-
"#{self.id}#{suffix}"
|
81
|
+
"#{prefix}#{self.id}#{suffix}"
|
76
82
|
end
|
77
83
|
|
78
84
|
protected
|
@@ -682,6 +688,25 @@ module Buildr #:nodoc:
|
|
682
688
|
end
|
683
689
|
end
|
684
690
|
|
691
|
+
def mssql_dialect_mapping
|
692
|
+
sql_dialect_mappings(buildr_project.base_dir => 'TSQL')
|
693
|
+
end
|
694
|
+
|
695
|
+
def postgres_dialect_mapping
|
696
|
+
sql_dialect_mappings(buildr_project.base_dir => 'PostgreSQL')
|
697
|
+
end
|
698
|
+
|
699
|
+
def sql_dialect_mappings(mappings)
|
700
|
+
add_component('SqlDialectMappings') do |component|
|
701
|
+
mappings.each_pair do |path, dialect|
|
702
|
+
file_path = file_path(path).gsub(/\/.$/, '')
|
703
|
+
|
704
|
+
puts "#{file_path} => #{dialect}"
|
705
|
+
component.file :url => file_path, :dialect => dialect
|
706
|
+
end
|
707
|
+
end
|
708
|
+
end
|
709
|
+
|
685
710
|
def add_postgres_data_source(name, options = {})
|
686
711
|
if options[:url].nil? && options[:database]
|
687
712
|
default_url = "jdbc:postgresql://#{(options[:host] || '127.0.0.1')}:#{(options[:port] || '5432')}/#{options[:database]}"
|
@@ -775,7 +800,7 @@ module Buildr #:nodoc:
|
|
775
800
|
end
|
776
801
|
|
777
802
|
if options[:enable_war].nil? || options[:enable_war] || (options[:war_module_names] && options[:war_module_names].size > 0)
|
778
|
-
module_names = options[:war_module_names] || [project.iml.
|
803
|
+
module_names = options[:war_module_names] || [project.iml.name]
|
779
804
|
module_names.each do |module_name|
|
780
805
|
facet_name = options[:war_facet_name] || 'Web'
|
781
806
|
xml.element :id => 'javaee-facet-resources', :facet => "#{module_name}/web/#{facet_name}"
|
@@ -783,7 +808,7 @@ module Buildr #:nodoc:
|
|
783
808
|
end
|
784
809
|
|
785
810
|
if options[:enable_gwt] || (options[:gwt_module_names] && options[:gwt_module_names].size > 0)
|
786
|
-
module_names = options[:gwt_module_names] || [project.iml.
|
811
|
+
module_names = options[:gwt_module_names] || [project.iml.name]
|
787
812
|
module_names.each do |module_name|
|
788
813
|
facet_name = options[:gwt_facet_name] || 'GWT'
|
789
814
|
xml.element :id => 'gwt-compiler-output', :facet => "#{module_name}/gwt/#{facet_name}"
|
@@ -845,7 +870,7 @@ module Buildr #:nodoc:
|
|
845
870
|
args = options[:args] || ''
|
846
871
|
dir = options[:dir] || 'file://$PROJECT_DIR$/'
|
847
872
|
debug_port = options[:debug_port] || 2599
|
848
|
-
module_name = options[:module_name] || project.iml.
|
873
|
+
module_name = options[:module_name] || project.iml.name
|
849
874
|
jvm_args = options[:jvm_args] || ''
|
850
875
|
name = options[:name] || classname
|
851
876
|
|
@@ -886,7 +911,7 @@ module Buildr #:nodoc:
|
|
886
911
|
add_to_composite_component(self.configurations) do |xml|
|
887
912
|
xml.configuration(:name => name, :type => 'RubyRunConfigurationType', :factoryName => 'Ruby', :default => !!options[:default]) do |xml|
|
888
913
|
|
889
|
-
xml.module(:name => project.iml.
|
914
|
+
xml.module(:name => project.iml.name)
|
890
915
|
xml.RUBY_RUN_CONFIG(:NAME => 'RUBY_ARGS', :VALUE => '-e STDOUT.sync=true;STDERR.sync=true;load($0=ARGV.shift)')
|
891
916
|
xml.RUBY_RUN_CONFIG(:NAME => 'WORK DIR', :VALUE => dir)
|
892
917
|
xml.RUBY_RUN_CONFIG(:NAME => 'SHOULD_USE_SDK', :VALUE => 'true')
|
@@ -917,7 +942,7 @@ module Buildr #:nodoc:
|
|
917
942
|
start_javascript_debugger = options[:start_javascript_debugger].nil? ? true : !!options[:start_javascript_debugger]
|
918
943
|
|
919
944
|
add_configuration(name, 'GWT.ConfigurationType', 'GWT Configuration', false, :singleton => singleton) do |xml|
|
920
|
-
xml.module(:name => project.iml.
|
945
|
+
xml.module(:name => project.iml.name)
|
921
946
|
|
922
947
|
xml.option(:name => 'VM_PARAMETERS', :value => vm_parameters)
|
923
948
|
xml.option(:name => 'RUN_PAGE', :value => launch_page) if launch_page
|
@@ -1009,6 +1034,74 @@ module Buildr #:nodoc:
|
|
1009
1034
|
end
|
1010
1035
|
end
|
1011
1036
|
|
1037
|
+
def add_glassfish_remote_configuration(project, options = {})
|
1038
|
+
artifact_name = options[:name] || project.iml.id
|
1039
|
+
version = options[:version] || '4.1.0'
|
1040
|
+
server_name = options[:server_name] || "GlassFish #{version}"
|
1041
|
+
configuration_name = options[:configuration_name] || "Remote #{server_name}"
|
1042
|
+
domain_port = options[:port] || '9009'
|
1043
|
+
packaged = options[:packaged] || {}
|
1044
|
+
exploded = options[:exploded] || {}
|
1045
|
+
|
1046
|
+
add_to_composite_component(self.configurations) do |xml|
|
1047
|
+
xml.configuration(:name => configuration_name, :type => 'GlassfishConfiguration', :factoryName => 'Remote', :default => false, :APPLICATION_SERVER_NAME => server_name) do |xml|
|
1048
|
+
xml.option(:name => 'LOCAL', :value => 'false')
|
1049
|
+
xml.option(:name => 'UPDATING_POLICY', :value => 'hot-swap-classes')
|
1050
|
+
|
1051
|
+
xml.deployment do |deployment|
|
1052
|
+
packaged.each do |name, deployable|
|
1053
|
+
artifact = Buildr.artifact(deployable)
|
1054
|
+
artifact.invoke
|
1055
|
+
deployment.file(:path => resolve_path(artifact.to_s)) do |file|
|
1056
|
+
file.settings do |settings|
|
1057
|
+
settings.option(:name => 'contextRoot', :value => "/#{name}")
|
1058
|
+
settings.option(:name => 'defaultContextRoot', :value => 'false')
|
1059
|
+
end
|
1060
|
+
end
|
1061
|
+
end
|
1062
|
+
exploded.each do |deployable_name|
|
1063
|
+
deployment.artifact(:name => deployable_name) do |artifact|
|
1064
|
+
artifact.settings
|
1065
|
+
end
|
1066
|
+
end
|
1067
|
+
end
|
1068
|
+
|
1069
|
+
xml.tag! 'server-settings' do |server_settings|
|
1070
|
+
server_settings.option(:name => 'VIRTUAL_SERVER')
|
1071
|
+
server_settings.data do |data|
|
1072
|
+
data.option(:name => 'adminServerHost', :value => '')
|
1073
|
+
data.option(:name => 'clusterName', :value => '')
|
1074
|
+
data.option(:name => 'stagingRemotePath', :value => '')
|
1075
|
+
data.option(:name => 'transportHostId')
|
1076
|
+
data.option(:name => 'transportStagingTarget') do |option|
|
1077
|
+
option.TransportTarget do |tt|
|
1078
|
+
tt.option(:name => 'id', :value => 'X')
|
1079
|
+
end
|
1080
|
+
end
|
1081
|
+
end
|
1082
|
+
end
|
1083
|
+
|
1084
|
+
xml.predefined_log_file(:id => 'GlassFish', :enabled => 'true')
|
1085
|
+
|
1086
|
+
add_glassfish_runner_settings(xml, 'Debug', {
|
1087
|
+
:DEBUG_PORT => domain_port.to_s,
|
1088
|
+
:TRANSPORT => '0',
|
1089
|
+
:LOCAL => 'false',
|
1090
|
+
})
|
1091
|
+
add_glassfish_configuration_wrapper(xml, 'Debug')
|
1092
|
+
|
1093
|
+
add_glassfish_runner_settings(xml, 'Run')
|
1094
|
+
add_glassfish_configuration_wrapper(xml, 'Run')
|
1095
|
+
|
1096
|
+
xml.method do |method|
|
1097
|
+
method.option(:name => 'BuildArtifacts', :enabled => 'true') do |option|
|
1098
|
+
option.artifact(:name => artifact_name)
|
1099
|
+
end
|
1100
|
+
end
|
1101
|
+
end
|
1102
|
+
end
|
1103
|
+
end
|
1104
|
+
|
1012
1105
|
def add_default_testng_configuration(options = {})
|
1013
1106
|
jvm_args = options[:jvm_args] || '-ea'
|
1014
1107
|
dir = options[:dir] || '$PROJECT_DIR$'
|
@@ -1225,7 +1318,7 @@ module Buildr #:nodoc:
|
|
1225
1318
|
|
1226
1319
|
def emit_module_output(xml, projects)
|
1227
1320
|
projects.each do |p|
|
1228
|
-
xml.element :id => 'module-output', :name => p.iml.
|
1321
|
+
xml.element :id => 'module-output', :name => p.iml.name
|
1229
1322
|
end
|
1230
1323
|
end
|
1231
1324
|
|
@@ -1237,7 +1330,7 @@ module Buildr #:nodoc:
|
|
1237
1330
|
|
1238
1331
|
def emit_ejb_descriptors(xml, project, options)
|
1239
1332
|
if options[:enable_ejb] || (options[:ejb_module_names] && options[:ejb_module_names].size > 0)
|
1240
|
-
module_names = options[:ejb_module_names] || [project.iml.
|
1333
|
+
module_names = options[:ejb_module_names] || [project.iml.name]
|
1241
1334
|
module_names.each do |module_name|
|
1242
1335
|
facet_name = options[:ejb_facet_name] || 'EJB'
|
1243
1336
|
xml.element :id => 'javaee-facet-resources', :facet => "#{module_name}/ejb/#{facet_name}"
|
@@ -1247,7 +1340,7 @@ module Buildr #:nodoc:
|
|
1247
1340
|
|
1248
1341
|
def emit_jpa_descriptors(xml, project, options)
|
1249
1342
|
if options[:enable_jpa] || (options[:jpa_module_names] && options[:jpa_module_names].size > 0)
|
1250
|
-
module_names = options[:jpa_module_names] || [project.iml.
|
1343
|
+
module_names = options[:jpa_module_names] || [project.iml.name]
|
1251
1344
|
module_names.each do |module_name|
|
1252
1345
|
facet_name = options[:jpa_facet_name] || 'JPA'
|
1253
1346
|
xml.element :id => 'jpa-descriptors', :facet => "#{module_name}/jpa/#{facet_name}"
|
@@ -15,7 +15,11 @@
|
|
15
15
|
|
16
16
|
# It is necessary to require these files here as the bdd plugin directly includes this file
|
17
17
|
require 'yaml'
|
18
|
-
|
18
|
+
begin
|
19
|
+
require 'rspec/core/formatters/base_formatter'
|
20
|
+
rescue LoadError
|
21
|
+
# If Rspec is not present then assume we do no need Yaml formatter
|
22
|
+
end
|
19
23
|
|
20
24
|
module Buildr #:nodoc:
|
21
25
|
module TestFramework #:nodoc:
|
@@ -52,49 +56,53 @@ module Buildr #:nodoc:
|
|
52
56
|
@failed, @succeeded = [], []
|
53
57
|
end
|
54
58
|
|
55
|
-
|
56
|
-
|
57
|
-
attr_reader :result
|
59
|
+
if Buildr.rspec_present?
|
60
|
+
require 'rspec/core/formatters/base_formatter'
|
58
61
|
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
@result[:succeeded] = []
|
63
|
-
@result[:failed] = []
|
64
|
-
end
|
62
|
+
# An Rspec formatter used by buildr
|
63
|
+
class YamlFormatter < ::RSpec::Core::Formatters::BaseFormatter
|
64
|
+
attr_reader :result
|
65
65
|
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
66
|
+
def initialize(output)
|
67
|
+
super(output)
|
68
|
+
@result = Hash.new
|
69
|
+
@result[:succeeded] = []
|
70
|
+
@result[:failed] = []
|
71
|
+
end
|
70
72
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
73
|
+
def example_passed(example)
|
74
|
+
super(example)
|
75
|
+
result.succeeded << example_name(example)
|
76
|
+
end
|
75
77
|
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
78
|
+
def example_pending(example)
|
79
|
+
super(example)
|
80
|
+
result.succeeded << example_name(example)
|
81
|
+
end
|
80
82
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
83
|
+
def example_failed(example)
|
84
|
+
super(example)
|
85
|
+
result.failed << example_name(example)
|
86
|
+
end
|
85
87
|
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
end
|
88
|
+
def start(example_count)
|
89
|
+
super(example_count)
|
90
|
+
@result = TestResult.new
|
91
|
+
end
|
91
92
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
93
|
+
def close
|
94
|
+
super
|
95
|
+
result.succeeded = result.succeeded - result.failed
|
96
|
+
output.puts YAML.dump(result)
|
97
|
+
end
|
98
|
+
|
99
|
+
private
|
100
|
+
def example_name(example)
|
101
|
+
example.file_path
|
102
|
+
end
|
103
|
+
end # YamlFormatter
|
97
104
|
|
98
|
-
|
105
|
+
end # TestResult
|
106
|
+
end
|
99
107
|
end
|
100
108
|
end
|
@@ -0,0 +1,51 @@
|
|
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
|
+
module Buildr #:nodoc:
|
17
|
+
|
18
|
+
@@rspec_checked = false
|
19
|
+
|
20
|
+
def self.rspec_present?
|
21
|
+
unless @@rspec_checked
|
22
|
+
begin
|
23
|
+
require 'rspec'
|
24
|
+
rescue LoadError
|
25
|
+
# If Rspec is not present then that is ok
|
26
|
+
end
|
27
|
+
@@rspec_checked = true
|
28
|
+
end
|
29
|
+
|
30
|
+
$LOADED_FEATURES.any?{|f| f=~ /[\\\/]rspec\.rb$/ }
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.ensure_rspec(context)
|
34
|
+
unless rspec_present?
|
35
|
+
# Has the rspec dependency been loaded?
|
36
|
+
message =
|
37
|
+
"#{context} but RSpec has not been loaded.\n" +
|
38
|
+
"\n" +
|
39
|
+
"Buildr prior to version 1.4.22, included rspec as a dependency but as\n" +
|
40
|
+
"of version 1.4.22, it is expected users manually add RSpec to their\n" +
|
41
|
+
"Gemfile. The following lines should be added to restore the version\n" +
|
42
|
+
"of rspec included in 1.4.22:\n" +
|
43
|
+
"\n" +
|
44
|
+
"gem 'rspec-expectations', '= 2.14.3'\n" +
|
45
|
+
"gem 'rspec-mocks', '= 2.14.3'\n" +
|
46
|
+
"gem 'rspec-core', '= 2.14.5'\n" +
|
47
|
+
"gem 'rspec', '= 2.14.1'\n"
|
48
|
+
fail message
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
data/lib/buildr/version.rb
CHANGED
data/rakelib/release.rake
CHANGED
@@ -13,8 +13,25 @@
|
|
13
13
|
# License for the specific language governing permissions and limitations under
|
14
14
|
# the License.
|
15
15
|
|
16
|
-
desc
|
17
|
-
task '
|
16
|
+
desc 'Checkout or update dist to local directory'
|
17
|
+
task 'setup-local-dist-svn' do
|
18
|
+
if File.exist?('dist')
|
19
|
+
sh 'svn', 'up', 'site'
|
20
|
+
sh 'svn', 'revert', '--recursive', 'dist'
|
21
|
+
else
|
22
|
+
sh 'svn', 'co', 'https://dist.apache.org/repos/dist/release/buildr', 'dist'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
task 'publish-dist-svn' do
|
27
|
+
cd 'dist'
|
28
|
+
sh 'svn', 'add', '--force', '.'
|
29
|
+
cd '..'
|
30
|
+
sh 'svn', 'commit', 'dist', '-m', 'Publish latest release'
|
31
|
+
end
|
32
|
+
|
33
|
+
desc 'Release the next version of buildr from existing staged repository'
|
34
|
+
task 'release' => %w{setup-local-site-svn setup-local-dist-svn} do
|
18
35
|
# First, we need to get all the staged files from Apache to _release.
|
19
36
|
mkpath '_release'
|
20
37
|
lambda do
|
@@ -26,25 +43,22 @@ task 'release' => %w{setup-local-site-svn} do
|
|
26
43
|
|
27
44
|
# Upload binary and source packages and new Web site
|
28
45
|
lambda do
|
29
|
-
target = "
|
30
|
-
puts
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
sh 'ssh', host, 'mkdir', remote_dir
|
46
|
+
target = "dist/#{spec.version}"
|
47
|
+
puts "Copying packages to #{target}"
|
48
|
+
FileUtils.rm_rf(target)
|
49
|
+
existing_dirs = `ls dist`.split
|
50
|
+
FileUtils.mkdir_p(target)
|
35
51
|
sh 'rsync', '--progress', '--recursive', '--delete', "_release/#{spec.version}/dist/", target
|
36
|
-
sh '
|
37
|
-
puts
|
52
|
+
sh 'chmod', '-f', '-R', 'g+w', target
|
53
|
+
puts "[X] Copying packages to #{target}"
|
38
54
|
|
39
55
|
puts "[X] Removing existing packages #{existing_dirs.join(', ')}"
|
40
56
|
existing_dirs.each do |dir|
|
41
|
-
sh '
|
57
|
+
sh 'svn', 'rm', '--force', "dist/#{dir}"
|
42
58
|
end
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
task('publish-site-svn').invoke
|
47
|
-
puts "[X] Uploaded new site to #{spec.name}.apache.org"
|
59
|
+
puts "Publishing #{spec.name}"
|
60
|
+
task('publish-dist-svn').invoke
|
61
|
+
puts "[X] Publishing #{spec.name}"
|
48
62
|
end.call
|
49
63
|
|
50
64
|
# Push gems to Rubyforge.org
|
@@ -79,7 +93,6 @@ task 'release' => %w{setup-local-site-svn} do
|
|
79
93
|
end
|
80
94
|
end.call
|
81
95
|
|
82
|
-
|
83
96
|
# Update CHANGELOG to next release number.
|
84
97
|
lambda do
|
85
98
|
next_version = spec.version.to_s.split('.').map { |v| v.to_i }.
|
@@ -158,5 +171,6 @@ The Apache Buildr Team
|
|
158
171
|
end.call
|
159
172
|
end
|
160
173
|
|
174
|
+
task('clobber') { rm_rf 'dist' }
|
161
175
|
task('clobber') { rm_rf '_release' }
|
162
176
|
task('clobber') { rm_rf 'announce-email.txt' }
|
data/spec/ide/idea_spec.rb
CHANGED
@@ -1293,6 +1293,60 @@ describe Buildr::IntellijIdea do
|
|
1293
1293
|
doc.should have_nodes("#{xpath_to_module}[@fileurl='file://#{module_ref}' and @filepath='#{module_ref}']", 1)
|
1294
1294
|
end
|
1295
1295
|
end
|
1296
|
+
|
1297
|
+
describe "and a prefix defined" do
|
1298
|
+
before do
|
1299
|
+
@foo = define "foo" do
|
1300
|
+
ipr.prefix = 'ipr-prefix-'
|
1301
|
+
iml.prefix = 'iml-prefix-'
|
1302
|
+
end
|
1303
|
+
invoke_generate_task
|
1304
|
+
end
|
1305
|
+
|
1306
|
+
it "generate an IPR in the root directory" do
|
1307
|
+
File.should be_exist(@foo._("ipr-prefix-foo.ipr"))
|
1308
|
+
end
|
1309
|
+
|
1310
|
+
it "generates an IML in the root directory" do
|
1311
|
+
File.should be_exist(@foo._("iml-prefix-foo.iml"))
|
1312
|
+
end
|
1313
|
+
|
1314
|
+
it "generate an IPR with the reference to correct module file" do
|
1315
|
+
File.should be_exist(@foo._("ipr-prefix-foo.ipr"))
|
1316
|
+
doc = xml_document(@foo._("ipr-prefix-foo.ipr"))
|
1317
|
+
doc.should have_nodes("#{xpath_to_module}", 1)
|
1318
|
+
module_ref = "$PROJECT_DIR$/iml-prefix-foo.iml"
|
1319
|
+
doc.should have_nodes("#{xpath_to_module}[@fileurl='file://#{module_ref}' and @filepath='#{module_ref}']", 1)
|
1320
|
+
end
|
1321
|
+
end
|
1322
|
+
|
1323
|
+
describe "and a suffix and a prefix defined" do
|
1324
|
+
before do
|
1325
|
+
@foo = define "foo" do
|
1326
|
+
ipr.suffix = '-ipr-suffix'
|
1327
|
+
iml.suffix = '-iml-suffix'
|
1328
|
+
ipr.prefix = 'ipr-prefix-'
|
1329
|
+
iml.prefix = 'iml-prefix-'
|
1330
|
+
end
|
1331
|
+
invoke_generate_task
|
1332
|
+
end
|
1333
|
+
|
1334
|
+
it "generate an IPR in the root directory" do
|
1335
|
+
File.should be_exist(@foo._("ipr-prefix-foo-ipr-suffix.ipr"))
|
1336
|
+
end
|
1337
|
+
|
1338
|
+
it "generates an IML in the root directory" do
|
1339
|
+
File.should be_exist(@foo._("iml-prefix-foo-iml-suffix.iml"))
|
1340
|
+
end
|
1341
|
+
|
1342
|
+
it "generate an IPR with the reference to correct module file" do
|
1343
|
+
File.should be_exist(@foo._("ipr-prefix-foo-ipr-suffix.ipr"))
|
1344
|
+
doc = xml_document(@foo._("ipr-prefix-foo-ipr-suffix.ipr"))
|
1345
|
+
doc.should have_nodes("#{xpath_to_module}", 1)
|
1346
|
+
module_ref = "$PROJECT_DIR$/iml-prefix-foo-iml-suffix.iml"
|
1347
|
+
doc.should have_nodes("#{xpath_to_module}[@fileurl='file://#{module_ref}' and @filepath='#{module_ref}']", 1)
|
1348
|
+
end
|
1349
|
+
end
|
1296
1350
|
end
|
1297
1351
|
|
1298
1352
|
describe "with a subproject" do
|
data/spec/spec_helpers.rb
CHANGED
@@ -23,7 +23,9 @@ unless defined?(SpecHelpers)
|
|
23
23
|
# For testing we use the gem requirements specified on the buildr.gemspec
|
24
24
|
spec = Gem::Specification.load(File.expand_path('../buildr.gemspec', File.dirname(__FILE__)))
|
25
25
|
# Dependency.version_requirements deprecated in rubygems 1.3.6
|
26
|
-
spec.dependencies.
|
26
|
+
spec.dependencies.
|
27
|
+
select {|dep| dep.type == :runtime || (dep.type == :development && dep.name.to_s =~ /^rspec.*/) }.
|
28
|
+
each { |dep| gem dep.name, (dep.respond_to?(:requirement) ? dep.requirement.to_s : dep.version_requirements.to_s) }
|
27
29
|
|
28
30
|
# Make sure to load from these paths first, we don't want to load any
|
29
31
|
# code from Gem library.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buildr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.22
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Apache Buildr
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-03-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -151,173 +151,173 @@ dependencies:
|
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: 1.2.4
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
|
-
name:
|
154
|
+
name: xml-simple
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
157
|
- - '='
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version:
|
159
|
+
version: 1.1.2
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - '='
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version:
|
166
|
+
version: 1.1.2
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
|
-
name:
|
168
|
+
name: minitar
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
171
|
- - '='
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version:
|
173
|
+
version: 0.5.4
|
174
174
|
type: :runtime
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
178
|
- - '='
|
179
179
|
- !ruby/object:Gem::Version
|
180
|
-
version:
|
180
|
+
version: 0.5.4
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
|
-
name:
|
182
|
+
name: bundler
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
184
184
|
requirements:
|
185
|
-
- -
|
185
|
+
- - ">="
|
186
186
|
- !ruby/object:Gem::Version
|
187
|
-
version:
|
187
|
+
version: '0'
|
188
188
|
type: :runtime
|
189
189
|
prerelease: false
|
190
190
|
version_requirements: !ruby/object:Gem::Requirement
|
191
191
|
requirements:
|
192
|
-
- -
|
192
|
+
- - ">="
|
193
193
|
- !ruby/object:Gem::Version
|
194
|
-
version:
|
194
|
+
version: '0'
|
195
195
|
- !ruby/object:Gem::Dependency
|
196
|
-
name:
|
196
|
+
name: orderedhash
|
197
197
|
requirement: !ruby/object:Gem::Requirement
|
198
198
|
requirements:
|
199
199
|
- - '='
|
200
200
|
- !ruby/object:Gem::Version
|
201
|
-
version:
|
201
|
+
version: 0.0.6
|
202
202
|
type: :runtime
|
203
203
|
prerelease: false
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
205
205
|
requirements:
|
206
206
|
- - '='
|
207
207
|
- !ruby/object:Gem::Version
|
208
|
-
version:
|
208
|
+
version: 0.0.6
|
209
209
|
- !ruby/object:Gem::Dependency
|
210
|
-
name:
|
210
|
+
name: jekyll
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
212
212
|
requirements:
|
213
213
|
- - '='
|
214
214
|
- !ruby/object:Gem::Version
|
215
|
-
version:
|
216
|
-
type: :
|
215
|
+
version: 0.11.2
|
216
|
+
type: :development
|
217
217
|
prerelease: false
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
219
219
|
requirements:
|
220
220
|
- - '='
|
221
221
|
- !ruby/object:Gem::Version
|
222
|
-
version:
|
222
|
+
version: 0.11.2
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
|
-
name:
|
224
|
+
name: RedCloth
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|
226
226
|
requirements:
|
227
227
|
- - '='
|
228
228
|
- !ruby/object:Gem::Version
|
229
|
-
version:
|
230
|
-
type: :
|
229
|
+
version: 4.2.9
|
230
|
+
type: :development
|
231
231
|
prerelease: false
|
232
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
233
|
requirements:
|
234
234
|
- - '='
|
235
235
|
- !ruby/object:Gem::Version
|
236
|
-
version:
|
236
|
+
version: 4.2.9
|
237
237
|
- !ruby/object:Gem::Dependency
|
238
|
-
name:
|
238
|
+
name: jekylltask
|
239
239
|
requirement: !ruby/object:Gem::Requirement
|
240
240
|
requirements:
|
241
|
-
- -
|
241
|
+
- - '='
|
242
242
|
- !ruby/object:Gem::Version
|
243
|
-
version:
|
244
|
-
type: :
|
243
|
+
version: 1.1.0
|
244
|
+
type: :development
|
245
245
|
prerelease: false
|
246
246
|
version_requirements: !ruby/object:Gem::Requirement
|
247
247
|
requirements:
|
248
|
-
- -
|
248
|
+
- - '='
|
249
249
|
- !ruby/object:Gem::Version
|
250
|
-
version:
|
250
|
+
version: 1.1.0
|
251
251
|
- !ruby/object:Gem::Dependency
|
252
|
-
name:
|
252
|
+
name: rdoc
|
253
253
|
requirement: !ruby/object:Gem::Requirement
|
254
254
|
requirements:
|
255
255
|
- - '='
|
256
256
|
- !ruby/object:Gem::Version
|
257
|
-
version:
|
258
|
-
type: :
|
257
|
+
version: 4.0.1
|
258
|
+
type: :development
|
259
259
|
prerelease: false
|
260
260
|
version_requirements: !ruby/object:Gem::Requirement
|
261
261
|
requirements:
|
262
262
|
- - '='
|
263
263
|
- !ruby/object:Gem::Version
|
264
|
-
version:
|
264
|
+
version: 4.0.1
|
265
265
|
- !ruby/object:Gem::Dependency
|
266
|
-
name:
|
266
|
+
name: rspec-expectations
|
267
267
|
requirement: !ruby/object:Gem::Requirement
|
268
268
|
requirements:
|
269
269
|
- - '='
|
270
270
|
- !ruby/object:Gem::Version
|
271
|
-
version:
|
271
|
+
version: 2.14.3
|
272
272
|
type: :development
|
273
273
|
prerelease: false
|
274
274
|
version_requirements: !ruby/object:Gem::Requirement
|
275
275
|
requirements:
|
276
276
|
- - '='
|
277
277
|
- !ruby/object:Gem::Version
|
278
|
-
version:
|
278
|
+
version: 2.14.3
|
279
279
|
- !ruby/object:Gem::Dependency
|
280
|
-
name:
|
280
|
+
name: rspec-mocks
|
281
281
|
requirement: !ruby/object:Gem::Requirement
|
282
282
|
requirements:
|
283
283
|
- - '='
|
284
284
|
- !ruby/object:Gem::Version
|
285
|
-
version:
|
285
|
+
version: 2.14.3
|
286
286
|
type: :development
|
287
287
|
prerelease: false
|
288
288
|
version_requirements: !ruby/object:Gem::Requirement
|
289
289
|
requirements:
|
290
290
|
- - '='
|
291
291
|
- !ruby/object:Gem::Version
|
292
|
-
version:
|
292
|
+
version: 2.14.3
|
293
293
|
- !ruby/object:Gem::Dependency
|
294
|
-
name:
|
294
|
+
name: rspec-core
|
295
295
|
requirement: !ruby/object:Gem::Requirement
|
296
296
|
requirements:
|
297
297
|
- - '='
|
298
298
|
- !ruby/object:Gem::Version
|
299
|
-
version:
|
299
|
+
version: 2.14.5
|
300
300
|
type: :development
|
301
301
|
prerelease: false
|
302
302
|
version_requirements: !ruby/object:Gem::Requirement
|
303
303
|
requirements:
|
304
304
|
- - '='
|
305
305
|
- !ruby/object:Gem::Version
|
306
|
-
version:
|
306
|
+
version: 2.14.5
|
307
307
|
- !ruby/object:Gem::Dependency
|
308
|
-
name:
|
308
|
+
name: rspec
|
309
309
|
requirement: !ruby/object:Gem::Requirement
|
310
310
|
requirements:
|
311
311
|
- - '='
|
312
312
|
- !ruby/object:Gem::Version
|
313
|
-
version:
|
313
|
+
version: 2.14.1
|
314
314
|
type: :development
|
315
315
|
prerelease: false
|
316
316
|
version_requirements: !ruby/object:Gem::Requirement
|
317
317
|
requirements:
|
318
318
|
- - '='
|
319
319
|
- !ruby/object:Gem::Version
|
320
|
-
version:
|
320
|
+
version: 2.14.1
|
321
321
|
- !ruby/object:Gem::Dependency
|
322
322
|
name: rspec-retry
|
323
323
|
requirement: !ruby/object:Gem::Requirement
|
@@ -562,6 +562,7 @@ files:
|
|
562
562
|
- lib/buildr/resources/completed.png
|
563
563
|
- lib/buildr/resources/failed.png
|
564
564
|
- lib/buildr/resources/icons-license.txt
|
565
|
+
- lib/buildr/rspec_check.rb
|
565
566
|
- lib/buildr/run.rb
|
566
567
|
- lib/buildr/scala.rb
|
567
568
|
- lib/buildr/scala/bdd.rb
|