You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by no...@apache.org on 2011/03/16 12:31:49 UTC
svn commit: r1082130 - in /aries/trunk/blueprint/blueprint-itests/src/test:
java/org/apache/aries/blueprint/itests/FragmentTest.java resources/bp.xml
Author: not
Date: Wed Mar 16 11:31:49 2011
New Revision: 1082130
URL: http://svn.apache.org/viewvc?rev=1082130&view=rev
Log:
ARIES-611 OOps, I forgot to do svn add prior to the comment. Acually deliver the new test and supporting file.
Added:
aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java (with props)
aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml (with props)
Added: aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java?rev=1082130&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java (added)
+++ aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java Wed Mar 16 11:31:49 2011
@@ -0,0 +1,110 @@
+/*
+ * 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 WARRANTIESOR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.blueprint.itests;
+
+import static org.junit.Assert.assertNotNull;
+import static org.ops4j.pax.exam.CoreOptions.equinox;
+import static org.ops4j.pax.exam.CoreOptions.options;
+import static org.ops4j.pax.exam.CoreOptions.systemProperty;
+
+import org.apache.aries.unittest.fixture.ArchiveFixture;
+import org.apache.aries.unittest.fixture.ArchiveFixture.ZipFixture;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.junit.JUnit4TestRunner;
+import org.osgi.framework.Constants;
+import org.osgi.service.blueprint.container.BlueprintContainer;
+
+@RunWith(JUnit4TestRunner.class)
+public class FragmentTest extends AbstractIntegrationTest
+{
+ @Test
+ public void testFragmentProvidesBlueprintFile() throws Exception
+ {
+ ZipFixture hostJar = ArchiveFixture.newJar().manifest().attribute(Constants.BUNDLE_MANIFESTVERSION, "2")
+ .attribute(Constants.BUNDLE_SYMBOLICNAME, "org.apache.aries.test.host").end();
+
+ ZipFixture fragmentJar = ArchiveFixture.newJar().manifest().attribute(Constants.BUNDLE_MANIFESTVERSION, "2")
+ .attribute(Constants.BUNDLE_SYMBOLICNAME, "org.apache.aries.test.fragment")
+ .attribute(Constants.FRAGMENT_HOST, "org.apache.aries.test.host").end()
+ .binary("OSGI-INF/blueprint/bp.xml", this.getClass().getResourceAsStream("/bp.xml")).end();
+
+ bundleContext.installBundle("fragment", fragmentJar.getInputStream());
+ bundleContext.installBundle("host", hostJar.getInputStream()).start();
+
+ Runnable r = getOsgiService(Runnable.class);
+ assertNotNull("Could not find blueprint registered service", r);
+ BlueprintContainer bc = getBlueprintContainerForBundle("org.apache.aries.test.host");
+ assertNotNull("Could not find blueprint container for bundle", bc);
+ }
+
+ @Test
+ public void testFragmentWithOverriddenHeader() throws Exception
+ {
+ ZipFixture hostJar = ArchiveFixture.newJar().manifest().attribute(Constants.BUNDLE_MANIFESTVERSION, "2")
+ .attribute(Constants.BUNDLE_SYMBOLICNAME, "org.apache.aries.test.host")
+ .attribute("Bundle-Blueprint", "META-INF/bp/*.xml").end();
+
+ ZipFixture fragmentJar = ArchiveFixture.newJar().manifest().attribute(Constants.BUNDLE_MANIFESTVERSION, "2")
+ .attribute(Constants.BUNDLE_SYMBOLICNAME, "org.apache.aries.test.fragment")
+ .attribute(Constants.FRAGMENT_HOST, "org.apache.aries.test.host").end()
+ .binary("META-INF/bp/bp.xml", this.getClass().getResourceAsStream("/bp.xml")).end();
+
+ bundleContext.installBundle("fragment", fragmentJar.getInputStream());
+ bundleContext.installBundle("host", hostJar.getInputStream()).start();
+
+ Runnable r = getOsgiService(Runnable.class);
+ assertNotNull("Could not find blueprint registered service", r);
+ BlueprintContainer bc = getBlueprintContainerForBundle("org.apache.aries.test.host");
+ assertNotNull("Could not find blueprint container for bundle", bc);
+ }
+
+ @org.ops4j.pax.exam.junit.Configuration
+ public static Option[] configuration() {
+ Option[] options = options(
+ // Log
+ mavenBundle("org.ops4j.pax.logging", "pax-logging-api"),
+ mavenBundle("org.ops4j.pax.logging", "pax-logging-service"),
+ // Felix Config Admin
+ mavenBundle("org.apache.felix", "org.apache.felix.configadmin"),
+ // Felix mvn url handler
+ mavenBundle("org.ops4j.pax.url", "pax-url-mvn"),
+
+
+ // this is how you set the default log level when using pax logging (logProfile)
+ systemProperty("org.ops4j.pax.logging.DefaultServiceLog.level").value("DEBUG"),
+
+ // Bundles
+ mavenBundle("org.apache.aries", "org.apache.aries.util"),
+ mavenBundle("org.apache.aries.proxy", "org.apache.aries.proxy"),
+ mavenBundle("asm", "asm-all"),
+ mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint"),
+ mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint.sample").noStart(),
+ mavenBundle("org.osgi", "org.osgi.compendium"),
+ mavenBundle("org.apache.aries.testsupport", "org.apache.aries.testsupport.unit"),
+// org.ops4j.pax.exam.container.def.PaxRunnerOptions.vmOption("-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"),
+
+ equinox().version("3.5.0")
+ );
+ options = updateOptions(options);
+ return options;
+ }
+
+}
\ No newline at end of file
Propchange: aries/trunk/blueprint/blueprint-itests/src/test/java/org/apache/aries/blueprint/itests/FragmentTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml?rev=1082130&view=auto
==============================================================================
--- aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml (added)
+++ aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml Wed Mar 16 11:31:49 2011
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+ <!--
+ 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.
+ -->
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+ xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
+ xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.1.0"
+ default-availability="optional">
+ <bean class="java.lang.Thread" id="runnable"/>
+ <service interface="java.lang.Runnable" ref="runnable"/>
+</blueprint>
\ No newline at end of file
Propchange: aries/trunk/blueprint/blueprint-itests/src/test/resources/bp.xml
------------------------------------------------------------------------------
svn:mime-type = text/plain