Warnings, and random failure.
1.1 --- a/openide.util/test/unit/src/org/openide/util/lookup/SimpleProxyLookupSpeedIssue42244Test.java Tue Dec 02 10:37:12 2008 -0500
1.2 +++ b/openide.util/test/unit/src/org/openide/util/lookup/SimpleProxyLookupSpeedIssue42244Test.java Mon Dec 08 13:50:38 2008 -0500
1.3 @@ -41,29 +41,23 @@
1.4
1.5 package org.openide.util.lookup;
1.6
1.7 +import java.util.HashSet;
1.8 +import java.util.Set;
1.9 import org.netbeans.junit.NbTestCase;
1.10 -import org.netbeans.junit.NbTestSuite;
1.11
1.12 +import org.netbeans.junit.RandomlyFails;
1.13 import org.openide.util.Lookup;
1.14
1.15 -
1.16 /**
1.17 - *
1.18 * @author Petr Nejedly, adapted to test by Jaroslav Tulach
1.19 */
1.20 +@RandomlyFails // NB-Core-Build #1847
1.21 public class SimpleProxyLookupSpeedIssue42244Test extends NbTestCase {
1.22
1.23 public SimpleProxyLookupSpeedIssue42244Test (String name) {
1.24 super (name);
1.25 }
1.26
1.27 - /**
1.28 - * @param args the command line arguments
1.29 - */
1.30 - public static void main(String[] args) {
1.31 - junit.textui.TestRunner.run(new NbTestSuite (SimpleProxyLookupSpeedIssue42244Test.class));
1.32 - }
1.33 -
1.34 public void testCompareTheSpeed () {
1.35 String content1 = "String1";
1.36 String content2 = "String2";
1.37 @@ -71,25 +65,22 @@
1.38 Lookup fixed1 = Lookups.singleton(content1);
1.39 Lookup fixed2 = Lookups.singleton(content2);
1.40
1.41 -
1.42 - Lookup.Template template = new Lookup.Template(String.class);
1.43 -
1.44 MyProvider provider = new MyProvider();
1.45 provider.setLookup(fixed1);
1.46
1.47 Lookup top = Lookups.proxy(provider);
1.48
1.49 - Lookup.Result r0 = top.lookup(template);
1.50 + Lookup.Result<String> r0 = top.lookupResult(String.class);
1.51 r0.allInstances();
1.52
1.53 long time = System.currentTimeMillis();
1.54 - top.lookup(template).allInstances();
1.55 + top.lookupAll(String.class);
1.56 long withOneResult = System.currentTimeMillis() - time;
1.57
1.58
1.59 - java.util.HashSet results = new java.util.HashSet ();
1.60 + Set<Object> results = new HashSet<Object>();
1.61 for (int i=0; i<10000; i++) {
1.62 - Lookup.Result res = top.lookup (template);
1.63 + Lookup.Result<String> res = top.lookupResult(String.class);
1.64 results.add (res);
1.65 res.allInstances();
1.66 }
1.67 @@ -97,7 +88,7 @@
1.68 provider.setLookup(fixed2);
1.69
1.70 time = System.currentTimeMillis();
1.71 - top.lookup(template).allInstances();
1.72 + top.lookupAll(String.class);
1.73 long withManyResults = System.currentTimeMillis() - time;
1.74
1.75 // if the measurement takes less then 10ms, pretend 10ms