OldAbstractPreferencesTest.java revision adc854b798c1cfe3bfd4c27d68d5cee38ca617da
1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* 2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * you may not use this file except in compliance with the License. 6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * You may obtain a copy of the License at 7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * 10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * See the License for the specific language governing permissions and 14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * limitations under the License. 15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */ 16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage org.apache.harmony.prefs.tests.java.util.prefs; 18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport dalvik.annotation.TestTargets; 20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport dalvik.annotation.TestLevel; 21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport dalvik.annotation.TestTargetNew; 22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport dalvik.annotation.TestTargetClass; 23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport junit.framework.TestCase; 25adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.io.ByteArrayInputStream; 27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.io.ByteArrayOutputStream; 28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.io.IOException; 29adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.AbstractPreferences; 30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.BackingStoreException; 31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.InvalidPreferencesFormatException; 32adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.NodeChangeEvent; 33adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.NodeChangeListener; 34adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.PreferenceChangeEvent; 35adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.PreferenceChangeListener; 36adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.util.prefs.Preferences; 37adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 38adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project@TestTargetClass(AbstractPreferences.class) 39adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpublic class AbstractPreferencesTest extends TestCase { 40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 41adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences pref; 42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project static AbstractPreferences root = (AbstractPreferences) Preferences.userRoot(); 44adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project static final String nodeName = "mock"; 46adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project static AbstractPreferences parent = null; 48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 49adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void setUp() throws Exception { 50adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super.setUp(); 51adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent = (AbstractPreferences) Preferences.userNodeForPackage(this.getClass()); 53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* 54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String str[] = parent.childrenNames(); 55adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < str.length; i++) { 56adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.out.print(str[i] + " "); 57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.out.println(); 59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**/ 60adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref = (AbstractPreferences) parent.node(nodeName); 61adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 62adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void tearDown() throws Exception { 64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/* String str[] = parent.childrenNames(); 65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < str.length; i++) { 66adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.out.print(str[i] + " "); 67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project System.out.println();/**/ 69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.removeNode(); 70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super.tearDown(); 71adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 72adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 73adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "toString", 77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 78adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 79adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testToString() { 80adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.toString().contains(nodeName)); 81adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 82adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 83adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 84adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 85adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 86adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Tests putSpi indirectly", 87adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "put", 88adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, java.lang.String.class} 89adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 90adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 91adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 92adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Tests putSpi indirectly", 93adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putSpi", 94adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, java.lang.String.class} 95adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 96adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 97adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPut() throws BackingStoreException { 98adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 99adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("String", pref.get("Value", ":")); 102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put(null, "Exception"); 105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 116adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 118adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put(new String(sb), "Exception"); 119adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 120adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 122adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb = new StringBuffer(); 125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_VALUE_LENGTH + 1; i++) { 127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 129adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 130adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 131adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("DoubleValue", new String(sb)); 132adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 133adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 134adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 135adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 136adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 137adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 138adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 139adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 140adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("DoubleValue", "Exception"); 141adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 142adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 143adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 144adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 145adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 146adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 147adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 148adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 149adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 150adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "getSpi tested indirectly.", 151adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "get", 152adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, java.lang.String.class} 153adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 154adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 155adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 156adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "getSpi tested indirectly.", 157adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getSpi", 158adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 159adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 160adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 161adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGet() throws BackingStoreException { 162adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 163adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 164adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 165adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 166adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 167adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("String", pref.get("Value", ":")); 168adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("true", pref.get("BoolValue", ":")); 169adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals("9.10938188E-31", pref.get("DoubleValue", null)); 170adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 171adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 172adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.get(null, "Exception"); 173adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 174adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 175adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 176adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 177adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 178adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 179adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 180adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 181adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.get("DoubleValue", "Exception"); 182adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 183adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 184adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 185adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 186adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 187adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 188adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 189adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 190adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 191adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirectly checks removeSpi", 192adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "remove", 193adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 194adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 195adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 196adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 197adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirectly checks removeSpi", 198adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "removeSpi", 199adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 200adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 201adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 202adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testRemove() throws BackingStoreException { 203adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] keyArray = new String[]{"Value", "DoubleValue", "LongValue", "IntValue"}; 204adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put(keyArray[0], "String"); 205adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble(keyArray[1], new Double(9.10938188e-31)); 206adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong(keyArray[2], new Long(Long.MIN_VALUE)); 207adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt(keyArray[3], 299792458); 208adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("New node"); 209adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 210adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 211adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] str = pref.keys(); 212adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(keyArray.length, str.length); 213adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(int i = 0; i < keyArray.length; i++) { 214adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.remove(keyArray[i]); 215adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project str = pref.keys(); 216adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(keyArray.length - i - 1, str.length); 217adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 218adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.childrenNames().length); 219adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.remove("New node"); 220adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.childrenNames().length); 221adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 222adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 223adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 224adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 225adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.remove("New node"); 226adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 227adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 228adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 229adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 230adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 231adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 232adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 233adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 234adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 235adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "clear", 236adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 237adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 238adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testClear() throws BackingStoreException { 239adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap = (AbstractPreferences) pref.node("New node"); 240adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 33); 241adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 242adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 243adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 244adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, pref.getInt("IntValue", 22)); 245adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.childrenNames().length); 246adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.clear(); 247adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.getBoolean("BoolValue", false)); 248adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(22, pref.getInt("IntValue", 22)); 249adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.childrenNames().length); 250adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 251adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 252adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 253adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 254adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.clear(); 255adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 256adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 257adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 258adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 259adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 260adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 261adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ap.clear(); 262adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 263adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 264adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 265adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 266adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 267adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 268adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 269adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 270adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 271adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putInt", 272adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, int.class} 273adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 274adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutInt() throws BackingStoreException { 275adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 299792458); 276adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 277adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 278adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(299792458, pref.getInt("IntValue", new Integer(1))); 279adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 280adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 281adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt(null, new Integer(1)); 282adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 283adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 284adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 285adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 286adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 287adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 288adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 289adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 290adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 291adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 292adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 293adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 294adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 295adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt(new String(sb), new Integer(1)); 296adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 297adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 298adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 299adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 300adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 301adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 302adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 303adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 304adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", new Integer(1)); 305adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 306adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 307adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 308adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 309adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 310adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 311adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 312adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 313adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 314adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getInt", 315adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, int.class} 316adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 317adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetInt() throws BackingStoreException { 318adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 319adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 320adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong("LongValue", new Long(Long.MIN_VALUE)); 321adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 299792458); 322adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 323adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 324adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.getInt("Value", new Integer(1))); 325adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.getInt("LongValue", new Integer(1))); 326adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.getInt("DoubleValue", new Integer(1))); 327adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(299792458, pref.getInt("IntValue", new Integer(1))); 328adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 329adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 330adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getInt(null, new Integer(1)); 331adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 332adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 333adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 334adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 335adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 336adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 337adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 338adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 339adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getInt("IntValue", new Integer(1)); 340adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 341adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 342adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 343adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 344adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 345adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 346adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 347adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 348adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 349adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putLong", 350adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, long.class} 351adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 352adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutLong() throws BackingStoreException { 353adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong("LongValue", new Long(299792458)); 354adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 355adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 356adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(299792458L, pref.getLong("LongValue", new Long(1))); 357adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 358adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 359adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong(null, new Long(1)); 360adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 361adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 362adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 363adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 364adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 365adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 366adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 367adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 368adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 369adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 370adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 371adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 372adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 373adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong(new String(sb), new Long(1)); 374adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 375adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 376adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 377adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 378adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 379adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 380adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 381adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 382adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong("LongValue", new Long(1)); 383adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 384adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 385adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 386adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 387adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 388adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 389adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 390adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 391adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 392adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getLong", 393adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, long.class} 394adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 395adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetLong() throws BackingStoreException { 396adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 397adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 398adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putLong("LongValue", new Long(Long.MIN_VALUE)); 399adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 299792458); 400adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 401adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 402adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1L, pref.getLong("Value", new Long(1))); 403adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(Long.MIN_VALUE, pref.getLong("LongValue", new Long(1))); 404adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1L, pref.getLong("DoubleValue", new Long(1))); 405adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(299792458L, pref.getLong("IntValue", new Long(1))); 406adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 407adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 408adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getLong(null, new Long(1)); 409adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 410adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 411adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 412adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 413adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 414adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 415adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 416adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 417adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getLong("LongValue", new Long(1)); 418adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 419adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 420adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 421adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 422adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 423adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 424adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 425adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 426adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 427adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putBoolean", 428adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, boolean.class} 429adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 430adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutBoolean() throws BackingStoreException { 431adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 432adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 433adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 434adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 435adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 436adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 437adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean(null, true); 438adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 439adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 440adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 441adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 442adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 443adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 444adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 445adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 446adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 447adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 448adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 449adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 450adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 451adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean(new String(sb), true); 452adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 453adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 454adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 455adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 456adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 457adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 458adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 459adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 460adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("DoubleValue", true); 461adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 462adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 463adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 464adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 465adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 466adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 467adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 468adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 469adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 470adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getBoolean", 471adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, boolean.class} 472adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 473adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetBoolean() throws BackingStoreException { 474adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 475adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 476adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 477adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 478adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 479adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.getBoolean("Value", false)); 480adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 481adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.getBoolean("DoubleValue", false)); 482adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 483adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 484adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getBoolean(null, true); 485adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 486adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 487adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 488adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 489adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 490adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 491adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 492adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 493adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getBoolean("DoubleValue", true); 494adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 495adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 496adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 497adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 498adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 499adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 500adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 501adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 502adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 503adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putFloat", 504adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, float.class} 505adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 506adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutFloat() throws BackingStoreException { 507adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putFloat("FloatValue", new Float(1.602e-19)); 508adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 509adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 510adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Float(1.602e-19), pref.getFloat("FloatValue", new Float(0.2))); 511adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 512adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 513adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putFloat(null, new Float(0.1)); 514adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 515adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 516adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 517adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 518adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 519adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 520adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 521adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 522adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 523adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 524adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 525adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 526adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 527adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putFloat(new String(sb), new Float(0.1)); 528adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 529adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 530adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 531adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 532adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 533adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 534adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 535adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 536adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putFloat("FloatValue", new Float(0.1)); 537adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 538adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 539adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 540adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 541adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 542adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 543adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 544adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 545adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 546adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getFloat", 547adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, float.class} 548adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 549adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetFloat() throws BackingStoreException { 550adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 551adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 552adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putFloat("FloatValue", new Float(-0.123)); 553adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 299792458); 554adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 555adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 556adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Float(0.1), pref.getFloat("Value", new Float(0.1))); 557adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Float(-0.123), pref.getFloat("FloatValue", new Float(0.2))); 558adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Float(9.109382e-31), pref.getFloat("DoubleValue", new Float(2.14))); 559adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Float(2.99792448e8), pref.getFloat("IntValue", new Float(5))); 560adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 561adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 562adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getFloat(null, new Float(0.1)); 563adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 564adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 565adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 566adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 567adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 568adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 569adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 570adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 571adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getFloat("FloatValue", new Float(0.1)); 572adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 573adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 574adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 575adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 576adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 577adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 578adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 579adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 580adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 581adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putDouble", 582adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, double.class} 583adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 584adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutDouble() throws BackingStoreException { 585adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 586adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 587adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 588adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(9.10938188e-31), pref.getDouble("DoubleValue", new Double(2.14))); 589adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 590adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 591adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble(null, new Double(0.1)); 592adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 593adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 594adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 595adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 596adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 597adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 598adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 599adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 600adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 601adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 602adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 603adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 604adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 605adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble(new String(sb), new Double(0.1)); 606adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 607adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 608adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 609adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 610adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 611adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 612adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 613adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 614adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(0.1)); 615adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 616adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 617adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 618adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 619adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 620adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 621adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 622adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 623adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 624adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getDouble", 625adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, double.class} 626adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 627adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetDouble() throws BackingStoreException { 628adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 629adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 630adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 631adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 299792458); 632adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 633adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 634adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(0.1), pref.getDouble("Value", new Double(0.1))); 635adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(0.2), pref.getDouble("BoolValue", new Double(0.2))); 636adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(9.10938188e-31), pref.getDouble("DoubleValue", new Double(2.14))); 637adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(2.99792458e8), pref.getDouble("IntValue", new Double(5))); 638adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 639adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 640adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getDouble(null, new Double(0.1)); 641adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 642adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 643adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 644adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 645adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 646adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 647adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 648adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 649adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getDouble("DoubleValue", new Double(0.1)); 650adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 651adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 652adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 653adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 654adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 655adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 656adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 657adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 658adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 659adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "putByteArray", 660adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, byte[].class} 661adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 662adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testPutByteArray() throws BackingStoreException { 663adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project byte[] bArray = new byte[]{1, 2, 3, 4, 5}; 664adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project byte[] array = null; 665adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 666adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray("Array", bArray); 667adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 668adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 669adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project array = pref.getByteArray("Array", null); 670adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(bArray.length, array.length); 671adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(i = 0; i < bArray.length; i++) { 672adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(bArray[i], array[i]); 673adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 674adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 675adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 676adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray(null, bArray); 677adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 678adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 679adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 680adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 681adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 682adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 683adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 684adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < Preferences.MAX_KEY_LENGTH + 1; i++) { 685adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 686adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 687adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 688adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 689adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray(new String(sb), bArray); 690adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 691adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 692adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 693adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 694adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 695adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project bArray = new byte[Preferences.MAX_VALUE_LENGTH * 3 / 4 + 1]; 696adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 697adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 698adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray("Big array", bArray); 699adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 700adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 701adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 702adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 703adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 704adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 705adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 706adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 707adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray("Array", new byte[10]); 708adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 709adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 710adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 711adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 712adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 713adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 714adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 715adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 716adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 717adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getByteArray", 718adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class, byte[].class} 719adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 720adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testGetByteArray() throws BackingStoreException { 721adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project byte[] bArray = new byte[]{1, 2, 3, 4, 5}; 722adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project byte[] tmp = new byte[]{5}; 723adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project byte[] array = null; 724adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 725adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Value", "String"); 726adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble("DoubleValue", new Double(9.10938188e-31)); 727adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putByteArray("Array", bArray); 728adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 729adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 730adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project array = pref.getByteArray("Value", tmp); 731adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(tmp.length, array.length); 732adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(i = 0; i < tmp.length; i++) { 733adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(tmp[i], array[i]); 734adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 735adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 736adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project array = pref.getByteArray("DoubleValue", tmp); 737adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(tmp.length, array.length); 738adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(i = 0; i < tmp.length; i++) { 739adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(tmp[i], array[i]); 740adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 741adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 742adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project array = pref.getByteArray("Array", tmp); 743adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(bArray.length, array.length); 744adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(i = 0; i < bArray.length; i++) { 745adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(bArray[i], array[i]); 746adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 747adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 748adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 749adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getByteArray(null, tmp); 750adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("NullPointerException expected"); 751adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (NullPointerException e) { 752adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 753adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 754adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 755adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 756adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 757adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 758adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getByteArray("Array", tmp); 759adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 760adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 761adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 762adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 763adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 764adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 765adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 766adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 767adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 768adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "keysSpi tested indirectly", 769adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "keys", 770adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 771adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 772adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 773adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 774adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "keysSpi tested indirectly", 775adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "keysSpi", 776adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 777adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 778adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 779adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testKeys() throws BackingStoreException { 780adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] keyArray = new String[]{"Value", "DoubleValue", "BoolValue", "IntValue"}; 781adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String nodeStr = "New node"; 782adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node(nodeStr); 783adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put(keyArray[0], "String"); 784adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putDouble(keyArray[1], new Double(9.10938188e-31)); 785adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean(keyArray[2], true); 786adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt(keyArray[3], 299792458); 787adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 788adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 789adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] str = pref.keys(); 790adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(keyArray.length, str.length); 791adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(int i = 0; i < str.length; i++) { 792adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project boolean flag = false; 793adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(int j = 0; j < keyArray.length; j++) { 794adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project if (str[i].compareTo(keyArray[j]) == 0) { 795adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project flag = true; 796adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project break; 797adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 798adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 799adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(str[i].compareTo(nodeStr) != 0); 800adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(flag); 801adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 802adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 803adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 804adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 805adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 806adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.keys(); 807adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 808adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch(IllegalStateException e) { 809adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 810adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 811adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 812adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 813adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 814adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 815adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 816adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException can not be checked. childrenNamesSpi checked indirectly.", 817adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "childrenNames", 818adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 819adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 820adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 821adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 822adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException can not be checked. childrenNamesSpi checked indirectly.", 823adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "childrenNamesSpi", 824adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 825adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 826adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 827adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testChildrenNames() throws BackingStoreException { 828adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences first = (AbstractPreferences) pref.node("First node"); 829adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences second = (AbstractPreferences) pref.node("Second node"); 830adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 831adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(2, pref.childrenNames().length); 832adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(0, first.childrenNames().length); 833adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(0, second.childrenNames().length); 834adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 835adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project second.removeNode(); 836adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 837adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 838adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project second.childrenNames(); 839adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 840adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 841adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 842adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 843adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 844adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 845adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 846adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 847adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.childrenNames(); 848adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 849adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 850adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 851adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 852adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 853adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 854adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 855adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 856adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 857adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "parent", 858adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 859adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 860adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testParent() throws BackingStoreException { 861adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences node = (AbstractPreferences) pref.node("First node/sub node"); 862adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 863adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(node.parent().name().compareTo("First node") == 0); 864adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 865adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 866adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 867adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 868adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project node.parent(); 869adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 870adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 871adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 872adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 873adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 874adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 875adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 876adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 877adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 878adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirecly checks childSpi", 879adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "node", 880adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 881adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 882adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 883adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 884adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirecly checks childSpi", 885adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "childSpi", 886adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 887adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 888adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 889adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testNode() throws BackingStoreException { 890adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences first = (AbstractPreferences) pref.node("First node"); 891adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences second = (AbstractPreferences) pref.node("Second node"); 892adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 893adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 894adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.node("blabla/"); 895adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 896adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 897adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 898adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 899adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 900adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 901adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.node("///invalid"); 902adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 903adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 904adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 905adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 906adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 907adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project StringBuffer sb = new StringBuffer(); 908adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 909adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (int i = 0; i < Preferences.MAX_NAME_LENGTH; i++) { 910adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 911adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 912adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.node(new String(sb)); 913adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project sb.append('c'); 914adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 915adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 916adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.node(new String(sb)); 917adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 918adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 919adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 920adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 921adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 922adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project second.removeNode(); 923adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 924adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 925adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project second.node(""); 926adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 927adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 928adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 929adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 930adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 931adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 932adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project first.node(""); 933adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 934adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 935adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 936adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 937adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 938adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 939adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 940adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 941adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 942adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "getChild tested indirectly", 943adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "nodeExists", 944adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 945adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 946adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 947adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 948adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "getChild tested indirectly", 949adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "getChild", 950adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.lang.String.class} 951adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 952adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 953adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testNodeExists() throws BackingStoreException { 954adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap1 = (AbstractPreferences) pref.node("First node"); 955adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap2 = (AbstractPreferences) pref.node("Second node"); 956adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntegerValue", 33); 957adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 958adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 959adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 960adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.nodeExists("First node")); 961adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.nodeExists("Second node")); 962adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.nodeExists("IntegerValue")); 963adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.nodeExists("BoolValue")); 964adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.nodeExists("Value")); 965adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(pref.nodeExists(nodeName)); 966adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 967adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 968adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.nodeExists("///invalid"); 969adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 970adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 971adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 972adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 973adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 974adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 975adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 976adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 977adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.nodeExists("Exception"); 978adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 979adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 980adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 981adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 982adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 983adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 984adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 985adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 986adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 987adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 988adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "removeNode", 989adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 990adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 991adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 992adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 993adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 994adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "removeNodeSpi", 995adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 996adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 997adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 998adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testRemoveNode() throws BackingStoreException { 999adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] nodeArray = new String[]{"First node", "Second node", "Last node"}; 1000adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project int i; 1001adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.put("Key", "String"); 1002adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for (i = 0; i < nodeArray.length; i++) { 1003adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node(nodeArray[i]); 1004adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1005adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1006adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1007adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String[] str = pref.childrenNames(); 1008adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(nodeArray.length, str.length); 1009adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project for(i = 0; i < nodeArray.length; i++) { 1010adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node(nodeArray[i]).removeNode(); 1011adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project str = pref.childrenNames(); 1012adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(nodeArray.length - i - 1, str.length); 1013adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1014adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.keys().length); 1015adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("Key").removeNode(); 1016adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.keys().length); 1017adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1018adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1019adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1020adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1021adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1022adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1023adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1024adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1025adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1026adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1027adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1028adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project root.removeNode(); 1029adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("UnsupportedOperationException expected"); 1030adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (UnsupportedOperationException e) { 1031adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1032adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1033adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1034adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1035adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1036adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1037adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1038adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "name", 1039adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1040adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1041adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testName() { 1042adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences first = (AbstractPreferences) pref.node("First node"); 1043adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences second = (AbstractPreferences) pref.node("Second node/sub node"); 1044adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1045adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(first.name().compareTo("First node") == 0); 1046adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(first.name().compareTo("Second node") == 0); 1047adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(second.name().compareTo("sub node") == 0); 1048adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1049adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1050adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1051adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1052adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1053adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "absolutePath", 1054adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1055adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1056adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testAbsolutePath() { 1057adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(parent.absolutePath() + "/" + nodeName, pref.absolutePath()); 1058adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(parent.absolutePath() + "/" + "new node", parent.node("new node").absolutePath()); 1059adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1060adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1061adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1062adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1063adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1064adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "isUserNode", 1065adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1066adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1067adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testIsUserNode() { 1068adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(parent.isUserNode()); 1069adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(Preferences.systemRoot().isUserNode()); 1070adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1071adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1072adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 1073adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1074adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1075adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirectly checks syncSpi", 1076adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "sync", 1077adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1078adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 1079adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1080adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1081adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Indirectly checks syncSpi", 1082adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "syncSpi", 1083adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1084adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1085adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 1086adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testSync() throws BackingStoreException { 1087adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("new node/sub node"); 1088adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.sync(); 1089adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1090adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1091adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1092adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1093adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.sync(); 1094adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1095adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1096adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1097adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1098adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1099adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1100adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project class MockPreferenceChangeListener implements PreferenceChangeListener { 1101adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project private boolean flagChange = false; 1102adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1103adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void preferenceChange(PreferenceChangeEvent arg0) { 1104adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project flagChange = true; 1105adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1106adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1107adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public boolean isChanged () { 1108adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project boolean retVal = flagChange; 1109adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project flagChange = false; 1110adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return retVal; 1111adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1112adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1113adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1114adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1115adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1116adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1117adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "addPreferenceChangeListener", 1118adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.util.prefs.PreferenceChangeListener.class} 1119adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1120adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testAddPreferenceChangeListener() throws BackingStoreException { 1121adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project MockPreferenceChangeListener mpcl = new MockPreferenceChangeListener(); 1122adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.addPreferenceChangeListener(mpcl); 1123adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1124adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("new node"); 1125adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1126adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1127adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1128adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.node("new node"); 1129adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1130adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1131adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.putInt("IntValue", 33); 1132adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1133adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1134adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(mpcl.isChanged()); 1135adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, parent.getInt("IntValue", 22)); 1136adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1137adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1138adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(22, parent.getInt("Missed Value", 22)); 1139adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1140adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1141adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1142adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1143adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1144adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1145adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1146adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "removePreferenceChangeListener", 1147adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.util.prefs.PreferenceChangeListener.class} 1148adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1149adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testRemovePreferenceChangeListener() throws BackingStoreException { 1150adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project MockPreferenceChangeListener mpcl = new MockPreferenceChangeListener(); 1151adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.addPreferenceChangeListener(mpcl); 1152adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1153adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.putInt("IntValue", 33); 1154adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1155adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(mpcl.isChanged()); 1156adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.removePreferenceChangeListener(mpcl); 1157adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.putInt("IntValue", 33); 1158adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1159adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mpcl.isChanged()); 1160adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1161adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1162adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project class MockNodeChangeListener implements NodeChangeListener { 1163adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project private boolean flagAdded = false; 1164adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project private boolean flagRemoved = false; 1165adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1166adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void childAdded(NodeChangeEvent arg0) { 1167adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project flagAdded = true; 1168adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1169adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1170adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void childRemoved(NodeChangeEvent arg0) { 1171adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project flagRemoved = true; 1172adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1173adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1174adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public boolean isAdded() { 1175adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return flagAdded; 1176adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1177adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1178adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public boolean isRemoved() { 1179adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return flagRemoved; 1180adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1181adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1182adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1183adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1184adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1185adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1186adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "addNodeChangeListener", 1187adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.util.prefs.NodeChangeListener.class} 1188adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1189adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testAddNodeChangeListener() throws BackingStoreException { 1190adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project MockNodeChangeListener mncl = new MockNodeChangeListener(); 1191adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.addNodeChangeListener(mncl); 1192adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("test"); 1193adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1194adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1195adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isAdded()); 1196adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isRemoved()); 1197adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1198adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1199adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isAdded()); 1200adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(mncl.isRemoved()); 1201adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.node("new node"); 1202adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1203adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(mncl.isAdded()); 1204adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(mncl.isRemoved()); 1205adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1206adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1207adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1208adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1209adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1210adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "removeNodeChangeListener", 1211adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.util.prefs.NodeChangeListener.class} 1212adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1213adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testRemoveNodeChangeListener() throws BackingStoreException { 1214adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project MockNodeChangeListener mncl = new MockNodeChangeListener(); 1215adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.addNodeChangeListener(mncl); 1216adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("test"); 1217adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1218adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1219adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isAdded()); 1220adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isRemoved()); 1221adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.removeNodeChangeListener(mncl); 1222adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1223adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1224adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isAdded()); 1225adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isRemoved()); 1226adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.node("new node"); 1227adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project parent.flush(); 1228adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isAdded()); 1229adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertFalse(mncl.isRemoved()); 1230adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1231adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1232adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 1233adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1234adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1235adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1236adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "exportNode", 1237adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.io.OutputStream.class} 1238adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 1239adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1240adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1241adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1242adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "flush", 1243adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1244adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 1245adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1246adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1247adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1248adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "flushSpi", 1249adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1250adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1251adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 1252adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testExportNode() throws BackingStoreException, IOException, InvalidPreferencesFormatException { 1253adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap = (AbstractPreferences) pref.node("New node"); 1254adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntValue", 33); 1255adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 1256adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1257adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1258adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ByteArrayOutputStream baos = new ByteArrayOutputStream(); 1259adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1260adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.exportNode(baos); 1261adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); 1262adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1263adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 1264adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, pref.getInt("IntValue", 22)); 1265adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(1, pref.childrenNames().length); 1266adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1267adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String xmlData = new String(baos.toByteArray()); 1268adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1269adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("IntValue")); 1270adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("BoolValue")); 1271adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("33")); 1272adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("true")); 1273adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1274adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1275adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1276adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1277adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.exportNode(new ByteArrayOutputStream()); 1278adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1279adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1280adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1281adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1282adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1283adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1284adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getBoolean("BoolValue", false); 1285adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1286adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1287adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1288adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1289adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref = (AbstractPreferences) parent.node(nodeName); 1290adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1291adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.importPreferences(bais); 1292adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1293adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 1294adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, pref.getInt("IntValue", 22)); 1295adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(0, pref.childrenNames().length); 1296adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1297adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1298adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargets({ 1299adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1300adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1301adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1302adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "exportSubtree", 1303adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.io.OutputStream.class} 1304adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 1305adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1306adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1307adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1308adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "flush", 1309adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1310adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ), 1311adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1312adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1313adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "BackingStoreException, IOException can not be checked.", 1314adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "flushSpi", 1315adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1316adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1317adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project }) 1318adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testExportSubtree() throws BackingStoreException, IOException, InvalidPreferencesFormatException { 1319adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap1 = (AbstractPreferences) pref.node("First node"); 1320adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project AbstractPreferences ap2 = (AbstractPreferences) pref.node("Second node"); 1321adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putInt("IntegerValue", 33); 1322adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.putBoolean("BoolValue", true); 1323adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.flush(); 1324adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1325adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ap1.putInt("FirstIntValue", 11); 1326adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ap2.putDouble("DoubleValue", new Double(6.626e-34)); 1327adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1328adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ByteArrayOutputStream baos = new ByteArrayOutputStream(); 1329adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1330adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.exportSubtree(baos); 1331adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); 1332adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1333adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 1334adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, pref.getInt("IntegerValue", 22)); 1335adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(2, pref.childrenNames().length); 1336adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(11, ap1.getInt("FirstIntValue", 22)); 1337adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(6.626e-34), ap2.getDouble("DoubleValue", new Double (3.14))); 1338adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1339adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project String xmlData = new String(baos.toByteArray()); 1340adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1341adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("IntegerValue")); 1342adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("BoolValue")); 1343adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("FirstIntValue")); 1344adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("DoubleValue")); 1345adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("33")); 1346adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("true")); 1347adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("11")); 1348adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(xmlData.contains("6.626E-34")); 1349adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1350adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.removeNode(); 1351adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1352adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1353adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.exportSubtree(new ByteArrayOutputStream()); 1354adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1355adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1356adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1357adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1358adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1359adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1360adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.getBoolean("BoolValue", false); 1361adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalStateException expected"); 1362adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalStateException e) { 1363adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1364adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1365adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref = (AbstractPreferences) parent.node(nodeName); 1366adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.importPreferences(bais); 1367adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1368adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ap1 = (AbstractPreferences) pref.node("First node"); 1369adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ap2 = (AbstractPreferences) pref.node("Second node"); 1370adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1371adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertTrue(pref.getBoolean("BoolValue", false)); 1372adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(33, pref.getInt("IntegerValue", 22)); 1373adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(2, pref.childrenNames().length); 1374adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(11, ap1.getInt("FirstIntValue", 22)); 1375adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(new Double(6.626e-34), ap2.getDouble("DoubleValue", new Double (3.14))); 1376adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1377adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1378adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project class MockAbstractPreferences extends AbstractPreferences { 1379adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected MockAbstractPreferences(AbstractPreferences parent, String name) { 1380adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project super(parent, name); 1381adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1382adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1383adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1384adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected AbstractPreferences childSpi(String name) { 1385adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return null; 1386adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1387adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1388adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1389adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected String[] childrenNamesSpi() throws BackingStoreException { 1390adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return null; 1391adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1392adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1393adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1394adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void flushSpi() throws BackingStoreException { 1395adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1396adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1397adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1398adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected String getSpi(String key) { 1399adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return null; 1400adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1401adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1402adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1403adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected String[] keysSpi() throws BackingStoreException { 1404adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project return null; 1405adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1406adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1407adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1408adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void putSpi(String key, String value) { 1409adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1410adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1411adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1412adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void removeNodeSpi() throws BackingStoreException { 1413adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1414adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1415adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1416adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void removeSpi(String key) { 1417adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1418adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1419adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @Override 1420adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project protected void syncSpi() throws BackingStoreException { 1421adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1422adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1423adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1424adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1425adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1426adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "", 1427adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "AbstractPreferences", 1428adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {java.util.prefs.AbstractPreferences.class, java.lang.String.class} 1429adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1430adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testAbstractPreferences() { 1431adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertNotNull(new MockAbstractPreferences(pref, "node name")); 1432adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1433adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new MockAbstractPreferences(pref, "node/name"); 1434adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 1435adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 1436adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1437adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1438adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1439adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project try { 1440adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project new MockAbstractPreferences(null, "node"); 1441adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project fail("IllegalArgumentException expected"); 1442adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } catch (IllegalArgumentException e) { 1443adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project //expected 1444adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1445adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1446adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1447adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1448adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1449adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "Tested indirectly", 1450adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "cachedChildren", 1451adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1452adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1453adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testCachedChildren() throws BackingStoreException { 1454adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("First node"); 1455adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project pref.node("Second node"); 1456adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1457adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project assertEquals(2, pref.childrenNames().length); 1458adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1459adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project 1460adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project @TestTargetNew( 1461adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project level = TestLevel.COMPLETE, 1462adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project notes = "No reason to check dummy implementation", 1463adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project method = "isRemoved", 1464adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project args = {} 1465adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project ) 1466adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project public void testIsRemoved() { 1467adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project } 1468adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project} 1469