buildr 1.4.4-x86-mswin32 → 1.4.5-x86-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +46 -0
- data/Rakefile +0 -1
- data/addon/buildr/bnd.rb +147 -0
- data/addon/buildr/jaxb_xjc.rb +72 -0
- data/addon/buildr/protobuf.rb +14 -1
- data/buildr.gemspec +6 -2
- data/doc/artifacts.textile +6 -0
- data/doc/contributing.textile +3 -0
- data/doc/download.textile +60 -0
- data/doc/index.textile +9 -15
- data/doc/installing.textile +23 -6
- data/doc/mailing_lists.textile +4 -0
- data/doc/more_stuff.textile +333 -6
- data/doc/packaging.textile +187 -1
- data/lib/buildr.rb +8 -1
- data/lib/buildr/clojure.rb +34 -0
- data/lib/buildr/clojure/shell.rb +52 -0
- data/lib/buildr/core.rb +3 -0
- data/lib/buildr/core/#application.rb# +700 -0
- data/lib/buildr/core/application.rb +18 -8
- data/lib/buildr/core/build.rb +2 -2
- data/lib/buildr/core/cc.rb +57 -63
- data/lib/buildr/core/checks.rb +4 -5
- data/lib/buildr/core/doc.rb +3 -1
- data/lib/buildr/core/generate.rb +2 -0
- data/lib/buildr/core/jrebel.rb +42 -0
- data/lib/buildr/core/linux.rb +30 -0
- data/lib/buildr/core/project.rb +9 -8
- data/lib/buildr/core/run.rb +3 -3
- data/lib/buildr/core/shell.rb +29 -90
- data/lib/buildr/core/test.rb +3 -3
- data/lib/buildr/core/transports.rb +5 -5
- data/lib/buildr/core/util.rb +2 -2
- data/lib/buildr/groovy.rb +1 -0
- data/lib/buildr/groovy/compiler.rb +12 -1
- data/lib/buildr/groovy/doc.rb +76 -0
- data/lib/buildr/groovy/shell.rb +24 -15
- data/lib/buildr/ide.rb +1 -1
- data/lib/buildr/ide/idea.rb +527 -141
- data/lib/buildr/java/bdd.rb +18 -13
- data/lib/buildr/java/ecj.rb +1 -3
- data/lib/buildr/java/jtestr_result.rb +295 -0
- data/lib/buildr/java/jtestr_runner.rb.erb +4 -6
- data/lib/buildr/java/packaging.rb +14 -3
- data/lib/buildr/java/pom.rb +6 -2
- data/lib/buildr/java/test_result.rb +15 -243
- data/lib/buildr/java/tests.rb +1 -1
- data/lib/buildr/packaging.rb +2 -1
- data/lib/buildr/packaging/#package.rb.rej# +19 -0
- data/lib/buildr/packaging/archive.rb +13 -3
- data/lib/buildr/packaging/artifact.rb +11 -12
- data/lib/buildr/packaging/tar.rb +4 -1
- data/lib/buildr/packaging/zip.rb +106 -1
- data/lib/buildr/resources/completed.png +0 -0
- data/lib/buildr/resources/failed.png +0 -0
- data/lib/buildr/resources/icons-license.txt +17 -0
- data/lib/buildr/run.rb +7 -14
- data/lib/buildr/scala/#Untitled-2# +7 -0
- data/lib/buildr/scala/bdd.rb +1 -1
- data/lib/buildr/scala/compiler.rb +1 -1
- data/lib/buildr/scala/doc.rb +20 -2
- data/lib/buildr/scala/shell.rb +14 -22
- data/lib/buildr/scala/tests.rb +2 -2
- data/lib/buildr/shell.rb +113 -108
- data/lib/buildr/version.rb +1 -1
- data/rakelib/checks.rake +9 -7
- data/rakelib/doc.rake +10 -0
- data/rakelib/release.rake +9 -0
- data/rakelib/rspec.rake +27 -28
- data/rakelib/setup.rake +1 -1
- data/rakelib/stage.rake +2 -2
- data/spec/addon/bnd_spec.rb +330 -0
- data/spec/addon/jaxb_xjc_spec.rb +125 -0
- data/spec/core/application_spec.rb +1 -1
- data/spec/core/build_spec.rb +7 -7
- data/spec/core/cc_spec.rb +154 -104
- data/spec/core/compile_spec.rb +3 -3
- data/spec/core/project_spec.rb +10 -0
- data/spec/core/run_spec.rb +1 -0
- data/spec/core/shell_spec.rb +146 -0
- data/spec/groovy/doc_spec.rb +65 -0
- data/spec/ide/eclipse_spec.rb +1 -1
- data/spec/ide/idea_spec.rb +1145 -0
- data/spec/java/bdd_spec.rb +3 -3
- data/spec/java/emma_spec.rb +2 -0
- data/spec/java/packaging_spec.rb +40 -11
- data/spec/java/test_coverage_helper.rb +1 -1
- data/spec/packaging/archive_spec.rb +76 -21
- data/spec/packaging/artifact_namespace_spec.rb +1 -1
- data/spec/packaging/artifact_spec.rb +14 -7
- data/spec/sandbox.rb +11 -4
- data/spec/scala/bdd_spec.rb +2 -2
- data/spec/scala/compiler_spec.rb +2 -2
- data/spec/scala/doc_spec.rb +24 -4
- data/spec/scala/scala.rb +2 -2
- data/spec/scala/tests_spec.rb +2 -2
- data/spec/spec_helpers.rb +9 -8
- data/spec/xpath_matchers.rb +121 -0
- metadata +246 -166
- data/lib/buildr/ide/idea.ipr.template +0 -300
- data/lib/buildr/ide/idea7x.ipr.template +0 -290
- data/lib/buildr/ide/idea7x.rb +0 -231
- data/spec/ide/idea7x_spec.rb +0 -96
data/spec/java/bdd_spec.rb
CHANGED
@@ -29,7 +29,7 @@ describe Buildr::RSpec do
|
|
29
29
|
|
30
30
|
it 'should read passed specs from result yaml' do
|
31
31
|
write('src/spec/ruby/success_spec.rb', 'describe("success") { it("is true") { nil.should be_nil } }')
|
32
|
-
|
32
|
+
|
33
33
|
project('foo').test.invoke
|
34
34
|
project('foo').test.passed_tests.should eql([File.expand_path('src/spec/ruby/success_spec.rb')])
|
35
35
|
end
|
@@ -41,7 +41,7 @@ describe Buildr::RSpec do
|
|
41
41
|
write(failure, 'describe("failure") { it("is false") { true.should == false } }')
|
42
42
|
error = File.expand_path('src/spec/ruby/error_spec.rb')
|
43
43
|
write(error, 'describe("error") { it("raises") { lambda; } }')
|
44
|
-
|
44
|
+
|
45
45
|
lambda { project('foo').test.invoke }.should raise_error(/Tests failed/)
|
46
46
|
project('foo').test.tests.should include(success, failure, error)
|
47
47
|
project('foo').test.failed_tests.sort.should eql([failure, error].sort)
|
@@ -234,7 +234,7 @@ describe Buildr::JtestR do
|
|
234
234
|
failure = File.expand_path('src/spec/ruby/failure_expect.rb')
|
235
235
|
write(failure, 'Expectations { expect(true) { false } }')
|
236
236
|
error = File.expand_path('src/spec/ruby/error_expect.rb')
|
237
|
-
write(error, 'Expectations { expect(nil) { lambda; } }')
|
237
|
+
write(error, 'Expectations { expect(nil) { lambda {}; } }')
|
238
238
|
foo do
|
239
239
|
lambda { test.invoke }.should raise_error(/Tests failed/)
|
240
240
|
test.tests.should include(success, failure, error)
|
data/spec/java/emma_spec.rb
CHANGED
data/spec/java/packaging_spec.rb
CHANGED
@@ -346,7 +346,7 @@ describe Project, '#meta_inf' do
|
|
346
346
|
end
|
347
347
|
|
348
348
|
|
349
|
-
|
349
|
+
shared_examples_for 'package with meta_inf' do
|
350
350
|
|
351
351
|
def package_with_meta_inf(meta_inf = nil)
|
352
352
|
packaging = @packaging
|
@@ -778,6 +778,39 @@ describe Packaging, 'ear' do
|
|
778
778
|
inspect_application_xml { |xml| xml.get_text('/application/display-name').should == 'bar' }
|
779
779
|
end
|
780
780
|
|
781
|
+
it 'should set description in application.xml to project comment if not specified' do
|
782
|
+
desc "MyDescription"
|
783
|
+
define 'foo', :version=>'1.0' do
|
784
|
+
package(:ear)
|
785
|
+
end
|
786
|
+
inspect_application_xml { |xml| xml.get_text('/application/description').should == 'MyDescription' }
|
787
|
+
end
|
788
|
+
|
789
|
+
it 'should not set description in application.xml if not specified and no project comment' do
|
790
|
+
define 'foo', :version=>'1.0' do
|
791
|
+
package(:ear)
|
792
|
+
end
|
793
|
+
inspect_application_xml { |xml| xml.get_text('/application/description').should be_nil }
|
794
|
+
end
|
795
|
+
|
796
|
+
it 'should set description in application.xml if specified' do
|
797
|
+
define 'foo', :version=>'1.0' do
|
798
|
+
package(:ear).description = "MyDescription"
|
799
|
+
end
|
800
|
+
inspect_application_xml { |xml| xml.get_text('/application/description').should == 'MyDescription' }
|
801
|
+
end
|
802
|
+
|
803
|
+
it 'should add security-roles to application.xml if given' do
|
804
|
+
define 'foo', :version=>'1.0' do
|
805
|
+
package(:ear).security_roles << {:id=>'sr1',
|
806
|
+
:description=>'System Administrator', :name=>'systemadministrator'}
|
807
|
+
end
|
808
|
+
inspect_application_xml do |xml|
|
809
|
+
xml.get_text("/application/security-role[@id='sr1']/description").to_s.should eql('System Administrator')
|
810
|
+
xml.get_text("/application/security-role[@id='sr1']/role-name").to_s.should eql('systemadministrator')
|
811
|
+
end
|
812
|
+
end
|
813
|
+
|
781
814
|
it 'should map WARs to /war directory' do
|
782
815
|
define 'foo', :version=>'1.0' do
|
783
816
|
package(:ear) << package(:war)
|
@@ -1136,16 +1169,15 @@ describe Packaging, 'sources' do
|
|
1136
1169
|
end
|
1137
1170
|
end
|
1138
1171
|
|
1139
|
-
|
1140
1172
|
describe Packaging, 'javadoc' do
|
1141
1173
|
it_should_behave_like 'packaging'
|
1142
|
-
before { @packaging, @package_type = :javadoc, :
|
1174
|
+
before { @packaging, @package_type = :javadoc, :jar }
|
1143
1175
|
|
1144
1176
|
it 'should create package of type :zip and classifier \'javadoc\'' do
|
1145
1177
|
define 'foo', :version=>'1.0' do
|
1146
|
-
package(:javadoc).type.should eql(:
|
1178
|
+
package(:javadoc).type.should eql(:jar)
|
1147
1179
|
package(:javadoc).classifier.should eql('javadoc')
|
1148
|
-
package(:javadoc).name.pathmap('%f').should eql('foo-1.0-javadoc.
|
1180
|
+
package(:javadoc).name.pathmap('%f').should eql('foo-1.0-javadoc.jar')
|
1149
1181
|
end
|
1150
1182
|
end
|
1151
1183
|
|
@@ -1171,7 +1203,6 @@ describe Packaging, 'javadoc' do
|
|
1171
1203
|
end
|
1172
1204
|
end
|
1173
1205
|
|
1174
|
-
|
1175
1206
|
shared_examples_for 'package_with_' do
|
1176
1207
|
|
1177
1208
|
def prepare(options = {})
|
@@ -1190,9 +1221,7 @@ shared_examples_for 'package_with_' do
|
|
1190
1221
|
|
1191
1222
|
it 'should create package of the right packaging with classifier' do
|
1192
1223
|
prepare
|
1193
|
-
|
1194
|
-
ext = "jar" if @packaging == :sources
|
1195
|
-
project('foo').packages.first.to_s.should =~ /foo-1.0-#{@packaging}.#{ext}/
|
1224
|
+
project('foo').packages.first.to_s.should =~ /foo-1.0-#{@packaging}.#{@ext}/
|
1196
1225
|
end
|
1197
1226
|
|
1198
1227
|
it 'should create package for projects that have source files' do
|
@@ -1228,10 +1257,10 @@ end
|
|
1228
1257
|
|
1229
1258
|
describe 'package_with_sources' do
|
1230
1259
|
it_should_behave_like 'package_with_'
|
1231
|
-
before { @packaging = :sources }
|
1260
|
+
before { @packaging, @ext = :sources, 'jar' }
|
1232
1261
|
end
|
1233
1262
|
|
1234
1263
|
describe 'package_with_javadoc' do
|
1235
1264
|
it_should_behave_like 'package_with_'
|
1236
|
-
before { @packaging = :javadoc }
|
1265
|
+
before { @packaging, @ext = :javadoc, 'jar' }
|
1237
1266
|
end
|
@@ -17,25 +17,26 @@
|
|
17
17
|
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helpers'))
|
18
18
|
|
19
19
|
|
20
|
-
|
21
|
-
before do
|
22
|
-
@dir = File.expand_path('test')
|
23
|
-
@files = %w{Test1.txt Text2.html}.map { |file| File.expand_path(file, @dir) }.
|
24
|
-
each { |file| write file, content_for(file) }
|
25
|
-
@empty_dirs = %w{EmptyDir1 EmptyDir2}.map { |file| File.expand_path(file, @dir) }.
|
26
|
-
each { |file| mkdir file }
|
27
|
-
end
|
28
|
-
|
20
|
+
module ArchiveTaskHelpers
|
29
21
|
# Not too smart, we just create some content based on file name to make sure you read what you write.
|
30
22
|
def content_for(file)
|
31
23
|
"Content for #{File.basename(file)}"
|
32
24
|
end
|
33
25
|
|
26
|
+
# Qualify a filename
|
27
|
+
#
|
28
|
+
# e.g. qualify("file.zip", "src") => "file-src.zip"
|
29
|
+
def qualify(filename, qualifier)
|
30
|
+
ext = (filename =~ /\.$/) ? "." : File.extname(filename)
|
31
|
+
base = filename[0..0-ext.size-1]
|
32
|
+
base + "-" + qualifier + ext
|
33
|
+
end
|
34
|
+
|
34
35
|
# Create an archive not using the archive task, this way we do have a file in existence, but we don't
|
35
36
|
# have an already invoked task. Yield an archive task to the block which can use it to include files,
|
36
37
|
# set options, etc.
|
37
38
|
def create_without_task
|
38
|
-
archive(@archive
|
39
|
+
archive(qualify(@archive, "tmp")).tap do |task|
|
39
40
|
yield task if block_given?
|
40
41
|
task.invoke
|
41
42
|
mv task.name, @archive
|
@@ -43,11 +44,29 @@ describe 'ArchiveTask', :shared=>true do
|
|
43
44
|
end
|
44
45
|
|
45
46
|
def create_for_merge
|
46
|
-
zip(@archive
|
47
|
+
zip(qualify(@archive, "src")).include(@files).tap do |task|
|
47
48
|
yield task
|
48
49
|
end
|
49
50
|
end
|
50
51
|
|
52
|
+
def init_dir
|
53
|
+
unless @dir
|
54
|
+
@dir = File.expand_path('test')
|
55
|
+
@files = %w{Test1.txt Text2.html}.map { |file| File.expand_path(file, @dir) }.
|
56
|
+
each { |file| write file, content_for(file) }
|
57
|
+
@empty_dirs = %w{EmptyDir1 EmptyDir2}.map { |file| File.expand_path(file, @dir) }.
|
58
|
+
each { |file| mkdir file }
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
shared_examples_for 'ArchiveTask' do
|
64
|
+
include ArchiveTaskHelpers
|
65
|
+
|
66
|
+
before(:each) do
|
67
|
+
init_dir
|
68
|
+
end
|
69
|
+
|
51
70
|
it 'should point to archive file' do
|
52
71
|
archive(@archive).name.should eql(@archive)
|
53
72
|
end
|
@@ -281,7 +300,7 @@ describe 'ArchiveTask', :shared=>true do
|
|
281
300
|
it 'should expand another archive file with nested exclude pattern' do
|
282
301
|
@files = %w{Test1.txt Text2.html}.map { |file| File.join(@dir, "foo", file) }.
|
283
302
|
each { |file| write file, content_for(file) }
|
284
|
-
zip(@archive
|
303
|
+
zip(qualify(@archive, "src")).include(@dir).tap do |task|
|
285
304
|
archive(@archive).merge(task).exclude('test/*')
|
286
305
|
archive(@archive).invoke
|
287
306
|
inspect_archive.should be_empty
|
@@ -329,6 +348,22 @@ describe 'ArchiveTask', :shared=>true do
|
|
329
348
|
File.stat(@archive).mtime.should be_close(Time.now, 10)
|
330
349
|
end
|
331
350
|
|
351
|
+
it 'should update if a file in a subdir is more recent' do
|
352
|
+
subdir = File.expand_path("subdir", @dir)
|
353
|
+
test3 = File.expand_path("test3.css", subdir)
|
354
|
+
|
355
|
+
mkdir_p subdir
|
356
|
+
write test3, '/* Original */'
|
357
|
+
|
358
|
+
create_without_task { |archive| archive.include(:from => @dir) }
|
359
|
+
inspect_archive { |archive| archive["subdir/test3.css"].should eql('/* Original */') }
|
360
|
+
|
361
|
+
write test3, '/* Refreshed */'
|
362
|
+
File.utime(Time.now + 100, Time.now + 100, test3)
|
363
|
+
archive(@archive).include(:from => @dir).invoke
|
364
|
+
inspect_archive { |archive| archive["subdir/test3.css"].should eql('/* Refreshed */') }
|
365
|
+
end
|
366
|
+
|
332
367
|
it 'should do nothing if all files are uptodate' do
|
333
368
|
create_without_task { |archive| archive.include(@files) }
|
334
369
|
# By touching all files in the past, there's nothing new to update.
|
@@ -359,10 +394,13 @@ describe 'ArchiveTask', :shared=>true do
|
|
359
394
|
end
|
360
395
|
end
|
361
396
|
|
362
|
-
|
363
397
|
describe TarTask do
|
364
398
|
it_should_behave_like 'ArchiveTask'
|
365
|
-
|
399
|
+
|
400
|
+
before(:each) do
|
401
|
+
@archive = File.expand_path('test.tar')
|
402
|
+
end
|
403
|
+
|
366
404
|
define_method(:archive) { |file| tar(file) }
|
367
405
|
|
368
406
|
def inspect_archive
|
@@ -378,7 +416,11 @@ end
|
|
378
416
|
|
379
417
|
describe TarTask, ' gzipped' do
|
380
418
|
it_should_behave_like 'ArchiveTask'
|
381
|
-
|
419
|
+
|
420
|
+
before(:each) do
|
421
|
+
@archive = File.expand_path('test.tgz')
|
422
|
+
end
|
423
|
+
|
382
424
|
define_method(:archive) { |file| tar(file) }
|
383
425
|
|
384
426
|
def inspect_archive
|
@@ -393,24 +435,38 @@ describe TarTask, ' gzipped' do
|
|
393
435
|
end
|
394
436
|
end
|
395
437
|
|
438
|
+
describe "ZipTask" do
|
439
|
+
include ArchiveTaskHelpers
|
396
440
|
|
397
|
-
describe ZipTask do
|
398
441
|
it_should_behave_like 'ArchiveTask'
|
399
|
-
|
442
|
+
|
443
|
+
before(:each) do
|
444
|
+
init_dir
|
445
|
+
@archive = File.expand_path('test.zip')
|
446
|
+
end
|
447
|
+
|
400
448
|
define_method(:archive) { |file| zip(file) }
|
401
449
|
|
402
|
-
after do
|
450
|
+
after(:each) do
|
403
451
|
checkZip(@archive)
|
404
452
|
end
|
405
453
|
|
406
|
-
# Check for possible corruption
|
454
|
+
# Check for possible corruption using Java's ZipInputStream and Java's "jar" command since
|
455
|
+
# they are stricter than rubyzip
|
407
456
|
def checkZip(file)
|
408
457
|
return unless File.exist?(file)
|
409
458
|
zip = Java.java.util.zip.ZipInputStream.new(Java.java.io.FileInputStream.new(file))
|
459
|
+
zip_entry_count = 0
|
410
460
|
while entry = zip.getNextEntry do
|
411
461
|
# just iterate over all entries
|
462
|
+
zip_entry_count = zip_entry_count + 1
|
412
463
|
end
|
413
464
|
zip.close()
|
465
|
+
|
466
|
+
# jar tool fails with "ZipException: error in opening zip file" if empty
|
467
|
+
if zip_entry_count > 0
|
468
|
+
sh "#{File.join(ENV['JAVA_HOME'], 'bin', 'jar')} tvf #{file}"
|
469
|
+
end
|
414
470
|
end
|
415
471
|
|
416
472
|
def inspect_archive
|
@@ -473,9 +529,8 @@ describe ZipTask do
|
|
473
529
|
|
474
530
|
end
|
475
531
|
|
476
|
-
|
477
532
|
describe Unzip do
|
478
|
-
before do
|
533
|
+
before(:each) do
|
479
534
|
@zip = File.expand_path('test.zip')
|
480
535
|
@dir = File.expand_path('test')
|
481
536
|
@files = %w{Test1.txt Text2.html}.map { |file| File.join(@dir, file) }.
|
@@ -661,7 +661,7 @@ describe "Extension using ArtifactNamespace" do
|
|
661
661
|
end
|
662
662
|
end
|
663
663
|
|
664
|
-
include
|
664
|
+
include RSpec::Matchers # for assertions
|
665
665
|
|
666
666
|
# Called with the ArtifactRequirement that has just been selected
|
667
667
|
# by a user. This allows extension author to selectively perform
|
@@ -252,7 +252,7 @@ describe Repositories, 'remote' do
|
|
252
252
|
|
253
253
|
it 'should support artifact classifier' do
|
254
254
|
repositories.remote = 'http://example.com'
|
255
|
-
URI.should_receive(:download).
|
255
|
+
URI.should_receive(:download).once.and_return { |uri, target, options| write target }
|
256
256
|
lambda { artifact('com.example:library:jar:all:2.0').invoke }.
|
257
257
|
should change { File.exist?(File.join(repositories.local, 'com/example/library/2.0/library-2.0-all.jar')) }.to(true)
|
258
258
|
end
|
@@ -752,13 +752,22 @@ describe Buildr, '#install' do
|
|
752
752
|
snapshot.invoke
|
753
753
|
end
|
754
754
|
|
755
|
-
it 'should install POM alongside artifact' do
|
755
|
+
it 'should install POM alongside artifact (if artifact has no classifier)' do
|
756
756
|
pom = artifact(@spec).pom
|
757
757
|
write @file
|
758
758
|
install artifact(@spec).from(@file)
|
759
759
|
lambda { install.invoke }.should change { File.exist?(repositories.locate(pom)) }.to(true)
|
760
760
|
end
|
761
761
|
|
762
|
+
it 'should not install POM alongside artifact if artifact has classifier' do
|
763
|
+
@spec = 'group:id:jar:all:1.0'
|
764
|
+
pom = artifact(@spec).pom
|
765
|
+
write @file
|
766
|
+
p method(:install)
|
767
|
+
install artifact(@spec).from(@file)
|
768
|
+
lambda { install.invoke }.should_not change { File.exist?(repositories.locate(pom)) }.to(true)
|
769
|
+
end
|
770
|
+
|
762
771
|
it 'should reinstall POM alongside artifact' do
|
763
772
|
pom = artifact(@spec).pom
|
764
773
|
write @file
|
@@ -812,14 +821,11 @@ describe ActsAsArtifact, '#upload' do
|
|
812
821
|
verbose(false) { artifact.upload(:url=>'sftp://example.com/base') }
|
813
822
|
end
|
814
823
|
|
815
|
-
it 'should support artifact classifier' do
|
824
|
+
it 'should support artifact classifier and should not upload pom if artifact has classifier' do
|
816
825
|
artifact = artifact('com.example:library:jar:all:2.0')
|
817
826
|
# Prevent artifact from downloading anything.
|
818
827
|
write repositories.locate(artifact)
|
819
|
-
|
820
|
-
URI.should_receive(:upload).at_least(:once).
|
821
|
-
with(URI.parse('sftp://example.com/base/com/example/library/2.0/library-2.0.pom'), artifact.pom.to_s, anything)
|
822
|
-
URI.should_receive(:upload).at_least(:once).
|
828
|
+
URI.should_receive(:upload).exactly(:once).
|
823
829
|
with(URI.parse('sftp://example.com/base/com/example/library/2.0/library-2.0-all.jar'), artifact.to_s, anything)
|
824
830
|
verbose(false) { artifact.upload(:url=>'sftp://example.com/base') }
|
825
831
|
end
|
@@ -842,6 +848,7 @@ describe ActsAsArtifact, '#upload' do
|
|
842
848
|
artifact.upload
|
843
849
|
lambda { artifact.upload }.should_not raise_error
|
844
850
|
end
|
851
|
+
|
845
852
|
end
|
846
853
|
|
847
854
|
|
data/spec/sandbox.rb
CHANGED
@@ -21,19 +21,26 @@ Buildr.application.instance_eval { @rakefile = File.expand_path('buildfile') }
|
|
21
21
|
repositories.remote << 'http://repo1.maven.org/maven2'
|
22
22
|
repositories.remote << 'http://scala-tools.org/repo-releases'
|
23
23
|
|
24
|
-
# Force Scala 2.8.
|
25
|
-
Buildr.settings.build['scala.version'] = "2.8.
|
24
|
+
# Force Scala 2.8.1 for specs; don't want to rely on SCALA_HOME
|
25
|
+
Buildr.settings.build['scala.version'] = "2.8.1"
|
26
26
|
|
27
27
|
# Add a 'require' here only for optional extensions, not for extensions that should be loaded by default.
|
28
|
+
require 'buildr/clojure'
|
28
29
|
require 'buildr/groovy'
|
29
30
|
require 'buildr/scala'
|
31
|
+
require 'buildr/bnd'
|
32
|
+
require 'buildr/jaxb_xjc'
|
30
33
|
|
31
34
|
Java.load # Anything added to the classpath.
|
32
35
|
artifacts(
|
33
36
|
TestFramework.frameworks.map(&:dependencies).flatten,
|
34
37
|
JUnit.ant_taskdef,
|
35
|
-
Buildr::Groovy
|
36
|
-
Buildr::
|
38
|
+
Buildr::Groovy.dependencies,
|
39
|
+
Buildr::JaxbXjc.dependencies,
|
40
|
+
Buildr::Bnd.dependencies,
|
41
|
+
Buildr::Scala::Specs.dependencies,
|
42
|
+
Buildr::Shell::BeanShell.artifact,
|
43
|
+
Buildr::Clojure.dependencies
|
37
44
|
).each do |path|
|
38
45
|
file(path).invoke
|
39
46
|
end
|
data/spec/scala/bdd_spec.rb
CHANGED
@@ -19,8 +19,8 @@ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helpers')
|
|
19
19
|
describe Buildr::Scala::Specs do
|
20
20
|
|
21
21
|
before(:each) do
|
22
|
-
# Force Scala 2.8.
|
23
|
-
Buildr.settings.build['scala.version'] = "2.8.
|
22
|
+
# Force Scala 2.8.1 for specs; don't want to rely on SCALA_HOME
|
23
|
+
Buildr.settings.build['scala.version'] = "2.8.1"
|
24
24
|
end
|
25
25
|
|
26
26
|
it 'should be the default when tests in src/spec/scala' do
|
data/spec/scala/compiler_spec.rb
CHANGED
@@ -20,8 +20,8 @@ require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helpers')
|
|
20
20
|
share_as :ScalacCompiler do
|
21
21
|
|
22
22
|
before(:each) do
|
23
|
-
# Force Scala 2.8.
|
24
|
-
Buildr.settings.build['scala.version'] = "2.8.
|
23
|
+
# Force Scala 2.8.1 for specs; don't want to rely on SCALA_HOME
|
24
|
+
Buildr.settings.build['scala.version'] = "2.8.1"
|
25
25
|
end
|
26
26
|
|
27
27
|
it 'should identify itself from source directories' do
|