diff --git a/ipojo/tests/core/annotations/pom.xml b/ipojo/tests/core/annotations/pom.xml
index 9b18961..d1a05d4 100644
--- a/ipojo/tests/core/annotations/pom.xml
+++ b/ipojo/tests/core/annotations/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Annotations Test Suite</name>
 	<artifactId>tests.core.annotations</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/bad-configurations/pom.xml b/ipojo/tests/core/bad-configurations/pom.xml
index 65b93c5..19e46af 100644
--- a/ipojo/tests/core/bad-configurations/pom.xml
+++ b/ipojo/tests/core/bad-configurations/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Bad Configurations Test Suite</name>
 	<artifactId>tests.core.bad.configurations</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/configadmin/pom.xml b/ipojo/tests/core/configadmin/pom.xml
index 82ffdde..70ea65f 100644
--- a/ipojo/tests/core/configadmin/pom.xml
+++ b/ipojo/tests/core/configadmin/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Configuration Admin Management Test Suite</name>
 	<artifactId>tests.core.configadmin</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/configuration/pom.xml b/ipojo/tests/core/configuration/pom.xml
index f3ce81d..a082b59 100644
--- a/ipojo/tests/core/configuration/pom.xml
+++ b/ipojo/tests/core/configuration/pom.xml
@@ -1,121 +1,121 @@
 <!--
-	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
+  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
+  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.
+  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>
-	<modelVersion>4.0.0</modelVersion>
-	<packaging>bundle</packaging>
-	<name>iPOJO Configuration Management Test Suite</name>
-	<artifactId>tests.core.configuration</artifactId>
-	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.felix</groupId>
-			<artifactId>org.apache.felix.ipojo</artifactId>
-			<version>${pom.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.felix</groupId>
-			<artifactId>org.apache.felix.ipojo.metadata</artifactId>
-			<version>${pom.version}</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.felix</groupId>
-			<artifactId>org.osgi.core</artifactId>
-			<version>1.0.1</version>
-		</dependency>
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<version>3.8.1</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.felix</groupId>
-			<artifactId>org.apache.felix.ipojo.junit4osgi</artifactId>
-			<version>1.1.0-SNAPSHOT</version>
-		</dependency>
-	</dependencies>
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<version>1.4.3</version>
-				<extensions>true</extensions>
-				<configuration>
-					<instructions>
-						<Export-Package>
-							org.apache.felix.ipojo.test.scenarios.configuration.service
-						</Export-Package>
-						<Bundle-SymbolicName>
-							${pom.artifactId}
-						</Bundle-SymbolicName>
-						<Private-Package>
-							org.apache.felix.ipojo.test*
-						</Private-Package>
-						<Test-Suite>
-							org.apache.felix.ipojo.test.scenarios.configuration.ConfigurationTestSuite
-						</Test-Suite>
-					</instructions>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-ipojo-plugin</artifactId>
-				<version>${pom.version}</version>
-				<executions>
-					<execution>
-						<goals>
-							<goal>ipojo-bundle</goal>
-						</goals>
-						<configuration>
-							<ignoreAnnotations>true</ignoreAnnotations>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<configuration>
-					<source>1.4</source>
-					<target>1.4</target>
-				</configuration>
-			</plugin>
-			<!-- Test -->
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-junit4osgi-plugin
-				</artifactId>
-				<version>1.1.0-SNAPSHOT</version>
-				<executions>
-					<execution>
-						<goals>
-							<goal>test</goal>
-						</goals>
-						<configuration>
-							<configuration>
-							<org.osgi.http.port>8083</org.osgi.http.port>
-							</configuration>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-		</plugins>
-	</build>
+  <modelVersion>4.0.0</modelVersion>
+  <packaging>bundle</packaging>
+  <name>iPOJO Configuration Management Test Suite</name>
+  <artifactId>tests.core.configuration</artifactId>
+  <groupId>ipojo.tests</groupId>
+  <version>1.5.0-SNAPSHOT</version>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.apache.felix.ipojo</artifactId>
+      <version>${pom.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.apache.felix.ipojo.metadata</artifactId>
+      <version>${pom.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.osgi.core</artifactId>
+      <version>1.0.1</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.apache.felix.ipojo.junit4osgi</artifactId>
+      <version>1.1.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <version>1.4.3</version>
+        <extensions>true</extensions>
+        <configuration>
+          <instructions>
+            <Export-Package>
+              org.apache.felix.ipojo.test.scenarios.configuration.service
+            </Export-Package>
+            <Bundle-SymbolicName>
+              ${pom.artifactId}
+            </Bundle-SymbolicName>
+            <Private-Package>
+              org.apache.felix.ipojo.test*
+            </Private-Package>
+            <Test-Suite>
+              org.apache.felix.ipojo.test.scenarios.configuration.ConfigurationTestSuite
+            </Test-Suite>
+          </instructions>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-ipojo-plugin</artifactId>
+        <version>${pom.version}</version>
+        <executions>
+          <execution>
+            <goals>
+              <goal>ipojo-bundle</goal>
+            </goals>
+            <configuration>
+              <ignoreAnnotations>true</ignoreAnnotations>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <configuration>
+          <source>1.4</source>
+          <target>1.4</target>
+        </configuration>
+      </plugin>
+      <!-- Test -->
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-junit4osgi-plugin
+        </artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <goals>
+              <goal>test</goal>
+            </goals>
+            <configuration>
+              <configuration>
+              <org.osgi.http.port>8083</org.osgi.http.port>
+              </configuration>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
 </project>
diff --git a/ipojo/tests/core/external-handlers/pom.xml b/ipojo/tests/core/external-handlers/pom.xml
index 1b39e96..34d1476 100644
--- a/ipojo/tests/core/external-handlers/pom.xml
+++ b/ipojo/tests/core/external-handlers/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO External Handler Mechanism Test Suite</name>
 	<artifactId>tests.core.external.handlers</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/factories/pom.xml b/ipojo/tests/core/factories/pom.xml
index b419cec..b12d27d 100644
--- a/ipojo/tests/core/factories/pom.xml
+++ b/ipojo/tests/core/factories/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Factories Test Suite</name>
 	<artifactId>tests.core.factories</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/factory-version/pom.xml b/ipojo/tests/core/factory-version/pom.xml
index c8e4928..f6a496d 100644
--- a/ipojo/tests/core/factory-version/pom.xml
+++ b/ipojo/tests/core/factory-version/pom.xml
@@ -3,120 +3,120 @@
   <groupId>ipojo.tests</groupId>
   <artifactId>tests.core.factory-version</artifactId>
   <name>iPOJO Factory Version Test Suite</name>
-  <version>1.3.0-SNAPSHOT</version>
+  <version>1.5.0-SNAPSHOT</version>
   <description>Test the factory version attribute</description>
 
   <build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<configuration>
-					<source>1.5</source>
-					<target>1.5</target>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.servicemix.tooling</groupId>
-				<artifactId>depends-maven-plugin</artifactId>
-				<executions>
-					<execution>
-						<id>generate-depends-file</id>
-						<goals>
-							<goal>generate-depends-file</goal>
-						</goals>
-					</execution>
-				</executions>
-			</plugin>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <configuration>
+          <source>1.5</source>
+          <target>1.5</target>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.servicemix.tooling</groupId>
+        <artifactId>depends-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>generate-depends-file</id>
+            <goals>
+              <goal>generate-depends-file</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
 
-			<!--  <plugin>
-				<groupId>org.ops4j.pax.exam</groupId>
-				<artifactId>maven-paxexam-plugin</artifactId>
-				<executions>
-					<execution>
-					<id>generate-paxexam-config</id>
-					<goals>
-						<goal>generate-paxexam-config</goal>
-					</goals>
-					</execution>
-				</executions>
-				<configuration>
-				<settings>
-					<platform>felix</platform>
-				</settings>
-				</configuration>
-			</plugin> -->
-		</plugins>
-	</build>
+      <!--  <plugin>
+        <groupId>org.ops4j.pax.exam</groupId>
+        <artifactId>maven-paxexam-plugin</artifactId>
+        <executions>
+          <execution>
+          <id>generate-paxexam-config</id>
+          <goals>
+            <goal>generate-paxexam-config</goal>
+          </goals>
+          </execution>
+        </executions>
+        <configuration>
+        <settings>
+          <platform>felix</platform>
+        </settings>
+        </configuration>
+      </plugin> -->
+    </plugins>
+  </build>
 
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.felix</groupId>
-			<artifactId>org.apache.felix.ipojo</artifactId>
-			<version>${pom.version}</version>
-		</dependency>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.apache.felix.ipojo</artifactId>
+      <version>${pom.version}</version>
+    </dependency>
 
-	<!--
-		Pax Exam API:
-	-->
-	<dependency>
-		<groupId>org.ops4j.pax.exam</groupId>
-		<artifactId>pax-exam</artifactId>
-		<version>0.6.0</version>
-	</dependency>
-	<!--
-		During runtime Pax Exam will discover the OSGi container to use by
-		searching metadata available into classpath. Pax Exam comes with a
-		default container that uses [Pax Runner] for implementing the
-		container requirements:
-	-->
-	<dependency>
-		<groupId>org.ops4j.pax.exam</groupId>
-		<artifactId>pax-exam-container-default
-		</artifactId>
-		<version>0.6.0</version>
-	</dependency>
-	<!--
-		If your test code is based on JUnit you will have to have the Junit
-		support artifact:
-	-->
-	<dependency>
-		<groupId>org.ops4j.pax.exam</groupId>
-		<artifactId>pax-exam-junit</artifactId>
-		<version>0.6.0</version>
-	</dependency>
-	<dependency>
-		<groupId>junit</groupId>
-		<artifactId>junit</artifactId>
-		<version>4.5</version>
-		<type>jar</type>
-		<scope>test</scope>
-	</dependency>
-	<!--  Tinybundles -->
-	<dependency>
-		<groupId>org.ops4j.pax.swissbox</groupId>
-		<artifactId>pax-swissbox-tinybundles</artifactId>
-		<version>1.0.0</version>
-	</dependency>
-	<dependency>
-		<groupId>org.apache.felix</groupId>
-		<artifactId>org.apache.felix.ipojo.tinybundles.bundleAsiPOJO</artifactId>
-		<version>${pom.version}</version>
-	</dependency>
-	</dependencies>
+  <!--
+    Pax Exam API:
+  -->
+  <dependency>
+    <groupId>org.ops4j.pax.exam</groupId>
+    <artifactId>pax-exam</artifactId>
+    <version>0.6.0</version>
+  </dependency>
+  <!--
+    During runtime Pax Exam will discover the OSGi container to use by
+    searching metadata available into classpath. Pax Exam comes with a
+    default container that uses [Pax Runner] for implementing the
+    container requirements:
+  -->
+  <dependency>
+    <groupId>org.ops4j.pax.exam</groupId>
+    <artifactId>pax-exam-container-default
+    </artifactId>
+    <version>0.6.0</version>
+  </dependency>
+  <!--
+    If your test code is based on JUnit you will have to have the Junit
+    support artifact:
+  -->
+  <dependency>
+    <groupId>org.ops4j.pax.exam</groupId>
+    <artifactId>pax-exam-junit</artifactId>
+    <version>0.6.0</version>
+  </dependency>
+  <dependency>
+    <groupId>junit</groupId>
+    <artifactId>junit</artifactId>
+    <version>4.5</version>
+    <type>jar</type>
+    <scope>test</scope>
+  </dependency>
+  <!--  Tinybundles -->
+  <dependency>
+    <groupId>org.ops4j.pax.swissbox</groupId>
+    <artifactId>pax-swissbox-tinybundles</artifactId>
+    <version>1.0.0</version>
+  </dependency>
+  <dependency>
+    <groupId>org.apache.felix</groupId>
+    <artifactId>org.apache.felix.ipojo.tinybundles.bundleAsiPOJO</artifactId>
+    <version>${pom.version}</version>
+  </dependency>
+  </dependencies>
 
-	<repositories>
-		<repository>
-			<id>ops4j.releases</id>
-			<name>OPS4J Release</name>
-			<url> http://repository.ops4j.org/maven2/</url>
-			<releases>
-				<enabled>true</enabled>
-			</releases>
-			<snapshots>
-				<enabled>false</enabled>
-			</snapshots>
-		</repository>
-	</repositories>
+  <repositories>
+    <repository>
+      <id>ops4j.releases</id>
+      <name>OPS4J Release</name>
+      <url> http://repository.ops4j.org/maven2/</url>
+      <releases>
+        <enabled>true</enabled>
+      </releases>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
 
-</project>
\ No newline at end of file
+</project>
diff --git a/ipojo/tests/core/handler/pom.xml b/ipojo/tests/core/handler/pom.xml
index b73f024..c4185b6 100644
--- a/ipojo/tests/core/handler/pom.xml
+++ b/ipojo/tests/core/handler/pom.xml
@@ -3,7 +3,7 @@
   <groupId>ipojo.tests</groupId>
   <artifactId>tests.core.handler</artifactId>
   <name>iPOJO Handler Mechanism Test Suite</name>
-  <version>1.3.0-SNAPSHOT</version>
+  <version>1.5.0-SNAPSHOT</version>
   <description>Test the handler mechanism</description>
 
   <build>
diff --git a/ipojo/tests/core/lifecycle-callback/pom.xml b/ipojo/tests/core/lifecycle-callback/pom.xml
index fe7f317..85613ac 100644
--- a/ipojo/tests/core/lifecycle-callback/pom.xml
+++ b/ipojo/tests/core/lifecycle-callback/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Lifecycle callback Test Suite</name>
 	<artifactId>tests.core.lifecycle.callback</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/lifecycle-controller/pom.xml b/ipojo/tests/core/lifecycle-controller/pom.xml
index d8a9579..06fe019 100644
--- a/ipojo/tests/core/lifecycle-controller/pom.xml
+++ b/ipojo/tests/core/lifecycle-controller/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Lifecycle controller Test Suite</name>
 	<artifactId>tests.core.lifecycle.controller</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-dependency-bindingpolicy/pom.xml b/ipojo/tests/core/service-dependency-bindingpolicy/pom.xml
index a116aac..d0cab32 100644
--- a/ipojo/tests/core/service-dependency-bindingpolicy/pom.xml
+++ b/ipojo/tests/core/service-dependency-bindingpolicy/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Dependency (Binding Policy) Test Suite</name>
 	<artifactId>tests.core.service.dependency.bindingpolicy</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-dependency-comparator/pom.xml b/ipojo/tests/core/service-dependency-comparator/pom.xml
index c9bae36..a48dce8 100644
--- a/ipojo/tests/core/service-dependency-comparator/pom.xml
+++ b/ipojo/tests/core/service-dependency-comparator/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Dependency Comparator Test Suite</name>
 	<artifactId>tests.core.service.dependency.comparator</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-dependency-filter/pom.xml b/ipojo/tests/core/service-dependency-filter/pom.xml
index 510bffa..46a28ba 100644
--- a/ipojo/tests/core/service-dependency-filter/pom.xml
+++ b/ipojo/tests/core/service-dependency-filter/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Dependency (Filter) Test Suite</name>
 	<artifactId>tests.core.service.dependency.filter</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-dependency/pom.xml b/ipojo/tests/core/service-dependency/pom.xml
index 8d3a0b1..ba4df5c 100644
--- a/ipojo/tests/core/service-dependency/pom.xml
+++ b/ipojo/tests/core/service-dependency/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Dependency Test Suite</name>
 	<artifactId>tests.core.service.dependency</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-providing-strategies/pom.xml b/ipojo/tests/core/service-providing-strategies/pom.xml
index 6d55e7e..926ce62 100755
--- a/ipojo/tests/core/service-providing-strategies/pom.xml
+++ b/ipojo/tests/core/service-providing-strategies/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Providing Strategy Test Suite</name>
 	<artifactId>tests.core.ps.strategy</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
diff --git a/ipojo/tests/core/service-providing/pom.xml b/ipojo/tests/core/service-providing/pom.xml
index c47a44a..2e6ed9c 100644
--- a/ipojo/tests/core/service-providing/pom.xml
+++ b/ipojo/tests/core/service-providing/pom.xml
@@ -22,7 +22,7 @@
 	<name>iPOJO Service Providing Test Suite</name>
 	<artifactId>tests.core.ps</artifactId>
 	<groupId>ipojo.tests</groupId>
-	<version>1.3.0-SNAPSHOT</version>
+	<version>1.5.0-SNAPSHOT</version>
 	<dependencies>
 		<dependency>
 			<groupId>org.apache.felix</groupId>
