diff options
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.tests')
15 files changed, 96 insertions, 1 deletions
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java index 339f7c9d4..801bd9b9b 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/AllTests.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2011 IBM Corporation and others. + * Copyright (c) 2007, 2015 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -7,6 +7,7 @@ * * Contributors: * IBM Corporation - initial API and implementation + * Rapicorp, Inc - addition implementation *******************************************************************************/ package org.eclipse.equinox.p2.tests.metadata.repository; @@ -28,6 +29,7 @@ public class AllTests extends TestCase { suite.addTestSuite(MetadataRepositoryManagerTest.class); suite.addTestSuite(NoFailOver.class); suite.addTestSuite(SiteIndexFileTest.class); + suite.addTestSuite(XZedRepositoryTest.class); // suite.addTestSuite(ResumeDownloadTest.class); // DISABLING until we get a test build // AllServerTests.addToSuite(suite); diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/XZedRepositoryTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/XZedRepositoryTest.java new file mode 100644 index 000000000..5f5d2f80f --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/XZedRepositoryTest.java @@ -0,0 +1,64 @@ +/******************************************************************************* + * Copyright (c) 2015 Rapicorp, Inc and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Rapicorp, Inc - initial API and implementation + *******************************************************************************/ +package org.eclipse.equinox.p2.tests.metadata.repository; + +import org.eclipse.core.runtime.OperationCanceledException; +import org.eclipse.equinox.p2.core.ProvisionException; +import org.eclipse.equinox.p2.metadata.IInstallableUnit; +import org.eclipse.equinox.p2.metadata.Version; +import org.eclipse.equinox.p2.query.IQueryResult; +import org.eclipse.equinox.p2.query.QueryUtil; +import org.eclipse.equinox.p2.repository.metadata.IMetadataRepository; +import org.eclipse.equinox.p2.tests.AbstractProvisioningTest; +import org.junit.Test; + +public class XZedRepositoryTest extends AbstractProvisioningTest { + + @Test + public void testLoadContentJarAndXZ() throws ProvisionException, OperationCanceledException { + IMetadataRepository repo = getMetadataRepositoryManager().loadRepository(getTestData("xzedRepo", "testData/xzRepoTests/contentJarAndXZ").toURI(), null); + IQueryResult<IInstallableUnit> units = repo.query(QueryUtil.createIUQuery("testIU", Version.create("2.0.0")), null); + assertEquals(1, units.toSet().size()); + } + + @Test + public void testLoadXzAndContentJar() throws ProvisionException, OperationCanceledException { + IMetadataRepository repo = getMetadataRepositoryManager().loadRepository(getTestData("xzedRepo", "testData/xzRepoTests/xzAndContentJar").toURI(), null); + IQueryResult<IInstallableUnit> units = repo.query(QueryUtil.createIUQuery("iuFromXZ", Version.create("2.0.0")), null); + assertEquals(1, units.toSet().size()); + } + + @Test + public void testLoadXzAndContentXML() throws ProvisionException, OperationCanceledException { + IMetadataRepository repo = getMetadataRepositoryManager().loadRepository(getTestData("xzedRepo", "testData/xzRepoTests/xzAndContentXML").toURI(), null); + IQueryResult<IInstallableUnit> units = repo.query(QueryUtil.createIUQuery("iuFromXZ", Version.create("2.0.0")), null); + assertEquals(1, units.toSet().size()); + } + + @Test + public void testLoadXzBusted() throws ProvisionException, OperationCanceledException { + boolean repoCanLoad = true; + try { + getMetadataRepositoryManager().loadRepository(getTestData("xzedRepo", "testData/xzRepoTests/xzBusted").toURI(), null); + } catch (ProvisionException e) { + repoCanLoad = false; + } + assertFalse(repoCanLoad); + } + + @Test + public void testLoadXzOnly() throws ProvisionException, OperationCanceledException { + IMetadataRepository repo = getMetadataRepositoryManager().loadRepository(getTestData("xzedRepo", "testData/xzRepoTests/xzOnly").toURI(), null); + IQueryResult<IInstallableUnit> units = repo.query(QueryUtil.createIUQuery("iuFromXZ", Version.create("2.0.0")), null); + assertEquals(1, units.toSet().size()); + } + +} diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.jar b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.jar Binary files differnew file mode 100644 index 000000000..8659c74d3 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.jar diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.xml.xz b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.xml.xz Binary files differnew file mode 100644 index 000000000..b4010f8b1 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/content.xml.xz diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/p2.index b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/p2.index new file mode 100644 index 000000000..7d7614d96 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/contentJarAndXZ/p2.index @@ -0,0 +1,3 @@ +metadata.repository.factory.order= content.xml,content.xml.xz,! +version=1 + diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.jar b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.jar Binary files differnew file mode 100644 index 000000000..8659c74d3 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.jar diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.xml.xz b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.xml.xz Binary files differnew file mode 100644 index 000000000..b4010f8b1 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/content.xml.xz diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/p2.index b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/p2.index new file mode 100644 index 000000000..337a00d01 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentJar/p2.index @@ -0,0 +1,3 @@ +metadata.repository.factory.order= content.xml.xz,content.xml,! +version=1 + diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml new file mode 100644 index 000000000..5d34bfbdb --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml @@ -0,0 +1,13 @@ +<?xml version='1.0' encoding='UTF-8'?> +<?metadataRepository version='1.1.0'?> +<repository name='pi.eclipse-repository' + type='org.eclipse.equinox.internal.p2.metadata.repository.LocalMetadataRepository' + version='1'> + <units size='1'> + <unit id='testIU' version='2.0.0' singleton='false'> + <provides size='1'> + <provided namespace='org.eclipse.equinox.p2.iu' name='testIU' version='2.0.0' /> + </provides> + </unit> + </units> +</repository> diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml.xz b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml.xz Binary files differnew file mode 100644 index 000000000..b4010f8b1 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/content.xml.xz diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/p2.index b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/p2.index new file mode 100644 index 000000000..337a00d01 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzAndContentXML/p2.index @@ -0,0 +1,3 @@ +metadata.repository.factory.order= content.xml.xz,content.xml,! +version=1 + diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/content.xml.xz b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/content.xml.xz new file mode 100644 index 000000000..3306f9189 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/content.xml.xz @@ -0,0 +1 @@ +This is an empty file.
\ No newline at end of file diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/p2.index b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/p2.index new file mode 100644 index 000000000..5c7a65533 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzBusted/p2.index @@ -0,0 +1,3 @@ +metadata.repository.factory.order= content.xml.xz,! +version=1 + diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/content.xml.xz b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/content.xml.xz Binary files differnew file mode 100644 index 000000000..b4010f8b1 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/content.xml.xz diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/p2.index b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/p2.index new file mode 100644 index 000000000..5c7a65533 --- /dev/null +++ b/bundles/org.eclipse.equinox.p2.tests/testData/xzRepoTests/xzOnly/p2.index @@ -0,0 +1,3 @@ +metadata.repository.factory.order= content.xml.xz,! +version=1 + |