You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by vb...@apache.org on 2008/09/01 21:18:47 UTC
svn commit: r691033 - /incubator/buildr/trunk/spec/java_packaging_spec.rb
Author: vborja
Date: Mon Sep 1 12:18:47 2008
New Revision: 691033
URL: http://svn.apache.org/viewvc?rev=691033&view=rev
Log:
BUILDR-129. Specs for manifest,
Modifing a project manifest entry should not alter parent
project's manifest.
Modified:
incubator/buildr/trunk/spec/java_packaging_spec.rb
Modified: incubator/buildr/trunk/spec/java_packaging_spec.rb
URL: http://svn.apache.org/viewvc/incubator/buildr/trunk/spec/java_packaging_spec.rb?rev=691033&r1=691032&r2=691033&view=diff
==============================================================================
--- incubator/buildr/trunk/spec/java_packaging_spec.rb (original)
+++ incubator/buildr/trunk/spec/java_packaging_spec.rb Mon Sep 1 12:18:47 2008
@@ -66,8 +66,8 @@
end
end
- def inspect_manifest
- package = project('foo').package(@packaging)
+ def inspect_manifest(package = nil)
+ package ||= project('foo').package(@packaging)
package.invoke
yield Buildr::Packaging::Java::Manifest.from_zip(package)
end
@@ -203,6 +203,67 @@
zip.entries.map(&:to_s).should include('META-INF/')
end
end
+
+ it 'should inherit manifest from parent project' do
+ packaging = @packaging
+ package = nil
+ define('foo', :version => '1.0') do
+ manifest['Foo'] = '1'
+ package(packaging)
+ define('bar', :version => '1.0') do
+ manifest['bar'] = 'Bar'
+ package(:jar)
+ package = packages.first
+ end
+ end
+ inspect_manifest(package) do |manifest|
+ manifest.sections.size.should be(1)
+ manifest.main['Manifest-Version'].should eql('1.0')
+ manifest.main['Created-By'].should eql('Buildr')
+ manifest.main['Foo'].should eql('1')
+ manifest.main['bar'].should eql('Bar')
+ end
+ end
+
+ it 'should not modify manifest of parent project' do
+ packaging = @packaging
+ define('foo', :version => '1.0') do
+ manifest['Foo'] = '1'
+ package(packaging)
+ define('bar', :version => '1.0') do
+ manifest['bar'] = 'Bar'
+ package(:jar)
+ end
+ define('baz', :version => '1.0') do
+ manifest['baz'] = 'Baz'
+ package(:jar)
+ end
+ end
+ inspect_manifest(project('foo').packages.first) do |manifest|
+ manifest.sections.size.should be(1)
+ manifest.main['Manifest-Version'].should eql('1.0')
+ manifest.main['Created-By'].should eql('Buildr')
+ manifest.main['Foo'].should eql('1')
+ manifest.main['bar'].should be_nil
+ manifest.main['baz'].should be_nil
+ end
+ inspect_manifest(project('foo:bar').packages.first) do |manifest|
+ manifest.sections.size.should be(1)
+ manifest.main['Manifest-Version'].should eql('1.0')
+ manifest.main['Created-By'].should eql('Buildr')
+ manifest.main['Foo'].should eql('1')
+ manifest.main['bar'].should eql('Bar')
+ manifest.main['baz'].should be_nil
+ end
+ inspect_manifest(project('foo:baz').packages.first) do |manifest|
+ manifest.sections.size.should be(1)
+ manifest.main['Manifest-Version'].should eql('1.0')
+ manifest.main['Created-By'].should eql('Buildr')
+ manifest.main['Foo'].should eql('1')
+ manifest.main['baz'].should eql('Baz')
+ manifest.main['bar'].should be_nil
+ end
+ end
end