You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/06/11 19:39:08 UTC
svn commit: r783859 - in
/maven/core-integration-testing/trunk/core-it-suite/src/test:
java/org/apache/maven/it/ resources/mng-2562/reactor/
resources/mng-2562/reactor/child-1/ resources/mng-2562/reactor/child-2/
resources/mng-2562/reactor/child-3/
Author: bentmann
Date: Thu Jun 11 17:39:07 2009
New Revision: 783859
URL: http://svn.apache.org/viewvc?rev=783859&view=rev
Log:
[MNG-2562] expose current time as a property for POM interpolation
o Extended IT to check the timestamp refers to the start of the reactor build and not a module build
Added:
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml (with props)
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml (with props)
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml (with props)
maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml (with props)
Modified:
maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2562TimestampTest.java
Modified: maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2562TimestampTest.java
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2562TimestampTest.java?rev=783859&r1=783858&r2=783859&view=diff
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2562TimestampTest.java (original)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2562TimestampTest.java Thu Jun 11 17:39:07 2009
@@ -82,4 +82,36 @@
assertTrue( now + " vs " + date, Math.abs( now.getTime() - date.getTime() ) < 24 * 60 * 60 * 1000 );
}
+ public void testitSameValueAcrossModules()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-2562/reactor" );
+
+ Verifier verifier = new Verifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ verifier.deleteDirectory( "target" );
+ verifier.deleteDirectory( "child-1/target" );
+ verifier.deleteDirectory( "child-2/target" );
+ verifier.deleteDirectory( "child-3/target" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ Properties props = verifier.loadProperties( "target/pom.properties" );
+ String timestamp = props.getProperty( "project.properties.timestamp", "" );
+
+ Properties props1 = verifier.loadProperties( "child-1/target/pom.properties" );
+ String timestamp1 = props1.getProperty( "project.properties.timestamp", "" );
+
+ Properties props2 = verifier.loadProperties( "child-2/target/pom.properties" );
+ String timestamp2 = props2.getProperty( "project.properties.timestamp", "" );
+
+ Properties props3 = verifier.loadProperties( "child-3/target/pom.properties" );
+ String timestamp3 = props3.getProperty( "project.properties.timestamp", "" );
+
+ assertEquals( timestamp, timestamp1 );
+ assertEquals( timestamp, timestamp2 );
+ assertEquals( timestamp, timestamp3 );
+ }
+
}
Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml?rev=783859&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml Thu Jun 11 17:39:07 2009
@@ -0,0 +1,43 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>child-1</artifactId>
+ <version>1.0</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-2562 :: Child 1</name>
+ <description>
+ Verify that the timestamp is the same for all modules of a reactor build.
+ </description>
+
+ <properties>
+ <timestamp>${maven.build.timestamp}</timestamp>
+ </properties>
+</project>
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-1/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml?rev=783859&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml Thu Jun 11 17:39:07 2009
@@ -0,0 +1,43 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>child-2</artifactId>
+ <version>1.0</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-2562 :: Child 2</name>
+ <description>
+ Verify that the timestamp is the same for all modules of a reactor build.
+ </description>
+
+ <properties>
+ <timestamp>${maven.build.timestamp}</timestamp>
+ </properties>
+</project>
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-2/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml?rev=783859&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml Thu Jun 11 17:39:07 2009
@@ -0,0 +1,43 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>child-3</artifactId>
+ <version>1.0</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-2562 :: Child 3</name>
+ <description>
+ Verify that the timestamp is the same for all modules of a reactor build.
+ </description>
+
+ <properties>
+ <timestamp>${maven.build.timestamp}</timestamp>
+ </properties>
+</project>
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/child-3/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml
URL: http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml?rev=783859&view=auto
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml (added)
+++ maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml Thu Jun 11 17:39:07 2009
@@ -0,0 +1,68 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.its.mng2562</groupId>
+ <artifactId>parent</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0</version>
+
+ <name>Maven Integration Test :: MNG-2562</name>
+ <description>
+ Verify that the timestamp is the same for all modules of a reactor build.
+ </description>
+
+ <modules>
+ <module>child-1</module>
+ <module>child-2</module>
+ <module>child-3</module>
+ </modules>
+
+ <properties>
+ <timestamp>${maven.build.timestamp}</timestamp>
+ <maven.build.timestamp.format>HH:mm:ss:SSS</maven.build.timestamp.format>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.its.plugins</groupId>
+ <version>2.1-SNAPSHOT</version>
+ <artifactId>maven-it-plugin-expression</artifactId>
+ <executions>
+ <execution>
+ <phase>validate</phase>
+ <goals>
+ <goal>eval</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <outputFile>target/pom.properties</outputFile>
+ <expressions>
+ <expression>project/properties</expression>
+ </expressions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/core-integration-testing/trunk/core-it-suite/src/test/resources/mng-2562/reactor/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision