diff options
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java index 473d5f422..c98cdff73 100644 --- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java +++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/ql/PerformanceTest.java @@ -293,6 +293,24 @@ public class PerformanceTest extends AbstractProvisioningTest { System.out.println(); } + public void testCapabilityQueryPerformanceOsgiService() throws Exception { + + IMetadataRepository repo = getMDR("/testData/2018-12"); + + IRequirement capability = MetadataFactory.createRequirement("osgi.service", "(objectClass=org.osgi.service.event.EventAdmin)", null, 0, 0, false); + IQuery<IInstallableUnit> capabilityQuery = QueryUtil.createMatchQuery(capability.getMatches()); + IQueryResult<IInstallableUnit> result; + + long start = System.currentTimeMillis(); + for (int i = 0; i < 1000; ++i) { + result = repo.query(capabilityQuery, new NullProgressMonitor()); + assertEquals(1, queryResultSize(result)); + assertEquals("org.eclipse.equinox.event", result.iterator().next().getId()); + } + System.out.println("1000 * CapabilityQuery for osgi.service took: " + (System.currentTimeMillis() - start) + " milliseconds"); + System.out.println(); + } + public void testIUPropertyQueryPerformance() throws Exception { IMetadataRepository repo = getMDR("/testData/galileoM7"); |