Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Arthorne2008-09-30 01:07:11 +0000
committerJohn Arthorne2008-09-30 01:07:11 +0000
commit561df72793eeafa17e7cbbef87a134e43094cd2c (patch)
tree6c137d70fc8e507c8fb2319261543c1307f823ef /bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java
parent949a1f92e55d1afa1fc6803452df9df6b799730a (diff)
downloadrt.equinox.p2-561df72793eeafa17e7cbbef87a134e43094cd2c.tar.gz
rt.equinox.p2-561df72793eeafa17e7cbbef87a134e43094cd2c.tar.xz
rt.equinox.p2-561df72793eeafa17e7cbbef87a134e43094cd2c.zip
Bug 241307 repository manager add should always enable the repository
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java')
-rw-r--r--bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java43
1 files changed, 41 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java
index 356a2079c..16c4c199f 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/repository/MetadataRepositoryManagerTest.java
@@ -25,8 +25,7 @@ import org.eclipse.equinox.internal.provisional.p2.core.location.AgentLocation;
import org.eclipse.equinox.internal.provisional.p2.core.repository.IRepository;
import org.eclipse.equinox.internal.provisional.p2.metadata.repository.IMetadataRepository;
import org.eclipse.equinox.internal.provisional.p2.metadata.repository.IMetadataRepositoryManager;
-import org.eclipse.equinox.p2.tests.AbstractProvisioningTest;
-import org.eclipse.equinox.p2.tests.TestActivator;
+import org.eclipse.equinox.p2.tests.*;
/**
* Tests for API of {@link IMetadataRepositoryManager}.
@@ -64,6 +63,46 @@ public class MetadataRepositoryManagerTest extends AbstractProvisioningTest {
assertTrue(!managerContains(location));
}
+ public void testEnablement() throws MalformedURLException {
+ File site = getTestData("Repositoy", "/testData/metadataRepo/good/");
+ URL location = site.toURL();
+ manager.addRepository(location);
+ assertEquals("1.0", true, manager.isEnabled(location));
+ TestRepositoryListener listener = new TestRepositoryListener(location);
+ getEventBus().addListener(listener);
+
+ manager.setEnabled(location, false);
+ listener.waitForEvent();
+ assertEquals("2.0", false, listener.lastEnablement);
+ assertEquals("2.1", false, manager.isEnabled(location));
+ listener.reset();
+
+ manager.setEnabled(location, true);
+ listener.waitForEvent();
+ assertEquals("3.0", true, listener.lastEnablement);
+ assertEquals("3.1", true, manager.isEnabled(location));
+ listener.reset();
+ }
+
+ /**
+ * Tests that adding a repository that is already known but disabled
+ * causes the repository to be enabled. See bug 241307 for discussion.
+ */
+ public void testEnablementOnAdd() throws MalformedURLException {
+ File site = getTestData("Repositoy", "/testData/metadataRepo/good/");
+ URL location = site.toURL();
+ manager.addRepository(location);
+ manager.setEnabled(location, false);
+ TestRepositoryListener listener = new TestRepositoryListener(location);
+ getEventBus().addListener(listener);
+
+ //adding the location again should cause it to be enabled
+ manager.addRepository(location);
+ listener.waitForEvent();
+ assertEquals("1.0", true, listener.lastEnablement);
+ assertEquals("1.1", true, manager.isEnabled(location));
+ }
+
public void testGetKnownRepositories() throws MalformedURLException, ProvisionException {
int nonSystemCount = manager.getKnownRepositories(IMetadataRepositoryManager.REPOSITORIES_NON_SYSTEM).length;
int systemCount = manager.getKnownRepositories(IMetadataRepositoryManager.REPOSITORIES_SYSTEM).length;

Back to the top