1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* 2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Licensed to the Apache Software Foundation (ASF) under one or more 3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * contributor license agreements. See the NOTICE file distributed with 4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * this work for additional information regarding copyright ownership. 5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * The ASF licenses this file to You under the Apache License, Version 2.0 6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * (the "License"); you may not use this file except in compliance with 7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * the License. You may obtain a copy of the License at 8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * See the License for the specific language governing permissions and 15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * limitations under the License. 16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 18ab762bb740405d0fefcccf4a0899a234f995be13Narayan Kamathpackage org.apache.harmony.tests.java.util; 19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.AbstractMap; 21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.Arrays; 22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.Collection; 23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.Iterator; 24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.List; 25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.Map; 26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.Set; 27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.WeakHashMap; 28fce022be38a2c79f9cdc8d9fea33c72cf2f16528Elliott Hughesimport libcore.java.lang.ref.FinalizationTester; 29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport tests.support.Support_MapTest2; 31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class WeakHashMapTest extends junit.framework.TestCase { 33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project class MockMap extends AbstractMap { 34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public Set entrySet() { 35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return null; 36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 37ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 38ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath public int size() { 39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return 0; 40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object[] keyArray = new Object[100]; 44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object[] valueArray = new Object[100]; 46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap whm; 48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 50229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#WeakHashMap() 51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_Constructor() { 53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.WeakHashMap() 54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new Support_MapTest2(new WeakHashMap()).runTest(); 55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Incorrect value retrieved", 61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.get(keyArray[i]) == valueArray[i]); 62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 66229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#WeakHashMap(int) 67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_ConstructorI() { 69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.WeakHashMap(int) 70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(50); 71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Incorrect value retrieved", 75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.get(keyArray[i]) == valueArray[i]); 76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap empty = new WeakHashMap(0); 78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertNull("Empty weakhashmap access", empty.get("nothing")); 79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project empty.put("something", "here"); 80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("cannot get element", empty.get("something") == "here"); 81f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new WeakHashMap(-50); 84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 91229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#WeakHashMap(int, float) 92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_ConstructorIF() { 94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.WeakHashMap(int, float) 95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(50, 0.5f); 96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Incorrect value retrieved", 100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.get(keyArray[i]) == valueArray[i]); 101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap empty = new WeakHashMap(0, 0.75f); 103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertNull("Empty hashtable access", empty.get("nothing")); 104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project empty.put("something", "here"); 105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("cannot get element", empty.get("something") == "here"); 106f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new WeakHashMap(50, -0.5f); 109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 114f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 116229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#WeakHashMap(java.util.Map) 117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 118adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_ConstructorLjava_util_Map() { 119adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Map mockMap = new MockMap(); 120adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap map = new WeakHashMap(mockMap); 121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Size should be 0", 0, map.size()); 122f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new WeakHashMap(null); 125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 129adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 130adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 131adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 132229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#clear() 133adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 134adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_clear() { 135adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method boolean java.util.WeakHashMap.clear() 136adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 137adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 138adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 139adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.clear(); 140adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Cleared map should be empty", whm.isEmpty()); 141adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 142adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertNull("Cleared map should only return null", whm 143adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .get(keyArray[i])); 144adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 145adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 146adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 147adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 148229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#containsKey(java.lang.Object) 149adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 150adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_containsKeyLjava_lang_Object() { 151adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method boolean java.util.WeakHashMap.containsKey() 152adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 153adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 154adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 155adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 156adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Should contain referenced key", whm 157adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .containsKey(keyArray[i])); 158adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[25] = null; 159adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[50] = null; 160adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 161adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 162adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 163229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#containsValue(java.lang.Object) 164adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 165adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_containsValueLjava_lang_Object() { 166adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method boolean java.util.WeakHashMap.containsValue() 167adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 168adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 169adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 170adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 171adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Should contain referenced value", whm 172adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .containsValue(valueArray[i])); 173adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[25] = null; 174adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[50] = null; 175adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 176adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 177adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 178229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#entrySet() 179adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 180adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_entrySet() { 181adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.Set java.util.WeakHashMap.entrySet() 182adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 183adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 184adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 185adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List keys = Arrays.asList(keyArray); 186adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List values = Arrays.asList(valueArray); 187adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Set entrySet = whm.entrySet(); 188adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Incorrect number of entries returned--wanted 100, got: " 189adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project + entrySet.size(), entrySet.size() == 100); 190adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Iterator it = entrySet.iterator(); 191adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project while (it.hasNext()) { 192adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Map.Entry entry = (Map.Entry) it.next(); 193adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Invalid map entry returned--bad key", keys 194adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .contains(entry.getKey())); 195adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Invalid map entry returned--bad key", values 196adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .contains(entry.getValue())); 197adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 198adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keys = null; 199adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project values = null; 200adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[50] = null; 201adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 20297afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier FinalizationTester.induceFinalization(); 20397afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier long startTime = System.currentTimeMillis(); 20497afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier // We use a busy wait loop here since we can not know when the ReferenceQueue 20597afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier // daemon will enqueue the cleared references on their internal reference 20697afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier // queues. The current timeout is 5 seconds. 207adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project do { 20897afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier try { 20997afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier Thread.sleep(100); 21097afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier } catch (InterruptedException e) { 21197afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier } 21297afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier } while (entrySet.size() != 99 && 21397afbd7972a43345ea12eb442b2a4e473b03d881Mathieu Chartier System.currentTimeMillis() - startTime < 5000); 214adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 215adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue( 216adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project "Incorrect number of entries returned after gc--wanted 99, got: " 217adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project + entrySet.size(), entrySet.size() == 99); 218adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 219adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 220adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 221229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#isEmpty() 222adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 223adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_isEmpty() { 224adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method boolean java.util.WeakHashMap.isEmpty() 225adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 226adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("New map should be empty", whm.isEmpty()); 227adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object myObject = new Object(); 228adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(myObject, myObject); 229adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Map should not be empty", !whm.isEmpty()); 230adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.remove(myObject); 231adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Map with elements removed should be empty", whm.isEmpty()); 232adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 233adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 234adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 235229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#put(java.lang.Object, java.lang.Object) 236adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 237adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_putLjava_lang_ObjectLjava_lang_Object() { 238adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.lang.Object 239adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // java.util.WeakHashMap.put(java.lang.Object, java.lang.Object) 240adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap map = new WeakHashMap(); 241adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project map.put(null, "value"); // add null key 242adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.gc(); 243fce022be38a2c79f9cdc8d9fea33c72cf2f16528Elliott Hughes System.gc(); 244fce022be38a2c79f9cdc8d9fea33c72cf2f16528Elliott Hughes FinalizationTester.induceFinalization(); 245adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project map.remove("nothing"); // Cause objects in queue to be removed 246adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("null key was removed", 1, map.size()); 247adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 248f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 249adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 250229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#putAll(java.util.Map) 251adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 252adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_putAllLjava_util_Map() { 253ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath Map mockMap = new MockMap(); 254adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project WeakHashMap map = new WeakHashMap(); 255adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project map.putAll(mockMap); 256adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Size should be 0", 0, map.size()); 257f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes 258adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 259adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project map.putAll(null); 260adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException exected"); 261adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 262adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 263adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 264adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 265adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 266adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 267229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#remove(java.lang.Object) 268adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 269adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_removeLjava_lang_Object() { 270adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.lang.Object 271adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // java.util.WeakHashMap.remove(java.lang.Object) 272adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 273adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 274adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 275adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 276adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Remove returned incorrect value", 277adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.remove(keyArray[25]) == valueArray[25]); 278adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertNull("Remove returned incorrect value", 279adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.remove(keyArray[25])); 280adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Size should be 99 after remove", 99, whm.size()); 281adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 282adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 283adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 284229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#size() 285adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 286adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_size() { 287adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 288adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(0, whm.size()); 289adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 290adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 291adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 292229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#keySet() 293adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 294adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_keySet() { 295adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.Set java.util.WeakHashMap.keySet() 296adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 297adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 298adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 299adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 300adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List keys = Arrays.asList(keyArray); 301adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List values = Arrays.asList(valueArray); 302adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 303adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Set keySet = whm.keySet(); 304adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Incorrect number of keys returned,", 100, keySet.size()); 305adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Iterator it = keySet.iterator(); 306adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project while (it.hasNext()) { 307adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object key = it.next(); 308adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Invalid map entry returned--bad key", keys 309adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .contains(key)); 310adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 311adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keys = null; 312adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project values = null; 313adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[50] = null; 314adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 315adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int count = 0; 316adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project do { 317adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.gc(); 318adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.gc(); 319fce022be38a2c79f9cdc8d9fea33c72cf2f16528Elliott Hughes FinalizationTester.induceFinalization(); 320adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project count++; 321adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } while (count <= 5 && keySet.size() == 100); 322adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 323adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Incorrect number of keys returned after gc,", 99, keySet 324adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .size()); 325adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 326adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 327adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 328ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath * Regression test for HARMONY-3883 329ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath * 330ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath * java.util.WeakHashMap#keySet() 331ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath */ 332ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath public void test_keySet_hasNext() { 333ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath WeakHashMap map = new WeakHashMap(); 334ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath ConstantHashClass cl = new ConstantHashClass(2); 335ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath map.put(new ConstantHashClass(1), null); 336ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath map.put(cl, null); 337ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath map.put(new ConstantHashClass(3), null); 338ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath Iterator iter = map.keySet().iterator(); 339ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath iter.next(); 340ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath iter.next(); 341ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath int count = 0; 342ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath do { 343ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath System.gc(); 344ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath System.gc(); 345ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath FinalizationTester.induceFinalization(); 346ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath count++; 347ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } while (count <= 5); 348ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath assertFalse("Wrong hasNext() value", iter.hasNext()); 349ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } 350ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 351ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath static class ConstantHashClass { 352ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath private int id = 0; 353ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 354ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath public ConstantHashClass(int id) { 355ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath this.id = id; 356ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } 357ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 358ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath public int hashCode() { 359ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath return 0; 360ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } 361ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 362ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath public String toString() { 363ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath return "ConstantHashClass[id=" + id + "]"; 364ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } 365ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath } 366ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 367ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath 368ba45f538a14c08015021e899f5883f07ed2ff237Narayan Kamath /** 369229e34b182b98e1dba15d3dc6341954986ae2b7aBrian Carlstrom * java.util.WeakHashMap#values() 370adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 371adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void test_values() { 372adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project // Test for method java.util.Set java.util.WeakHashMap.values() 373adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm = new WeakHashMap(); 374adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) 375adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project whm.put(keyArray[i], valueArray[i]); 376adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 377adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List keys = Arrays.asList(keyArray); 378adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project List values = Arrays.asList(valueArray); 379adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 380adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Collection valuesCollection = whm.values(); 381adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Incorrect number of keys returned,", 100, 382adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project valuesCollection.size()); 383adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Iterator it = valuesCollection.iterator(); 384adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project while (it.hasNext()) { 385adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project Object value = it.next(); 386adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue("Invalid map entry returned--bad value", values 387adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project .contains(value)); 388adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 389adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keys = null; 390adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project values = null; 391adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[50] = null; 392adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 393adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int count = 0; 394adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project do { 395adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.gc(); 396adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.gc(); 397fce022be38a2c79f9cdc8d9fea33c72cf2f16528Elliott Hughes FinalizationTester.induceFinalization(); 398adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project count++; 399adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } while (count <= 5 && valuesCollection.size() == 100); 400adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 401adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("Incorrect number of keys returned after gc,", 99, 402adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project valuesCollection.size()); 403adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 404adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 405adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 406adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Sets up the fixture, for example, open a network connection. This method 407adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * is called before a test is executed. 408adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 409adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void setUp() { 410adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < 100; i++) { 411adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project keyArray[i] = new Object(); 412adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project valueArray[i] = new Object(); 413adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 414adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 415adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 416adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 417adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project /** 418adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Tears down the fixture, for example, close a network connection. This 419adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * method is called after a test is executed. 420adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 421adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void tearDown() { 422adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 423adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project} 424