TextMethodUtils.java revision f8057104af9cae031b544e971a52adafa7c0d9e
1f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project/* 2f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 3f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 4f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 5f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * you may not use this file except in compliance with the License. 6f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * You may obtain a copy of the License at 7f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 8f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 9f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 10f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 11f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 12f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * See the License for the specific language governing permissions and 14f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * limitations under the License. 15f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project */ 16f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 17f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectpackage android.text.method.cts; 18f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 19f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport java.lang.reflect.Field; 20f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 21f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectimport junit.framework.Assert; 22f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 23f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project/** 24f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * The useful methods for TestCases. 25f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project */ 26f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Projectpublic class TextMethodUtils { 27f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project /** 28f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Assert that two char arrays are equal. 29f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 30f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * @param char[] expected the expected 31f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * @param char[] result the result 32f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project */ 33f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project public static void assertEquals(char[] expected, char[] result) { 34f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project if (expected != result) { 35f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project if (expected == null || result == null) { 36f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.fail("the char arrays are not equal"); 37f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } 38f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 39f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.assertEquals(String.valueOf(expected), String.valueOf(result)); 40f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } 41f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } 42f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project 43f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project /** 44f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * Set singleton instance with specific name in the specific class to null. 45f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 46f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * @param String fieldName the name of the field 47f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * 48f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project * @param Class<?> cls the specific class 49f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project */ 50f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project public static void clearSingleton(Class<?> cls, String fieldName) { 51f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project try { 52f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.assertNotNull(cls); 53f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Field f = cls.getDeclaredField(fieldName); 54f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project f.setAccessible(true); 55f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project f.set(null, null); 56f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.assertNull(f.get(null)); 57f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } catch (SecurityException e) { 58f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.fail(e.getMessage()); 59f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } catch (NoSuchFieldException e) { 60f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.fail(e.getMessage()); 61f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } catch (IllegalArgumentException e) { 62f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.fail(e.getMessage()); 63f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } catch (IllegalAccessException e) { 64f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project Assert.fail(e.getMessage()); 65f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } 66f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project } 67f8057104af9cae031b544e971a52adafa7c0d9eThe Android Open Source Project} 68