1561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/* 2561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 3561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * contributor license agreements. See the NOTICE file distributed with 4561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * this work for additional information regarding copyright ownership. 5561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 6561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * (the "License"); you may not use this file except in compliance with 7561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. You may obtain a copy of the License at 8561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * 9561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 10561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * 11561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Unless required by applicable law or agreed to in writing, software 12561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * License for the specific language governing permissions and limitations under 15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. 16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespackage org.apache.harmony.text.tests.java.text; 19561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 20561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.text.BreakIterator; 21561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.text.CharacterIterator; 22561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.text.StringCharacterIterator; 23561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.util.Locale; 24561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 25561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport junit.framework.TestCase; 26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespublic class BreakIteratorTest extends TestCase { 28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String TEXT = "a\u0308abc def, gh-12i?jkl.mno?"; 30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator iterator; 32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @see TestCase#setUp() 35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes protected void setUp() throws Exception { 37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes super.setUp(); 38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator = BreakIterator.getCharacterInstance(Locale.US); 39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testConsts() { 42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(-1, BreakIterator.DONE); 43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 44561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 45561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testCache() { 46561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator newOne = BreakIterator.getCharacterInstance(Locale.US); 47561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotSame(newOne, iterator); 48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(newOne, iterator); 49561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 50561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes newOne = BreakIterator.getCharacterInstance(); 51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(newOne, iterator); 52561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 53561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes newOne = BreakIterator.getCharacterInstance(Locale.CHINA); 54561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(newOne, iterator); 55561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 56561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator wordIterator = BreakIterator.getWordInstance(); 57561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(wordIterator.equals(iterator)); 58561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 59561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator lineIterator = BreakIterator.getLineInstance(); 60561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(lineIterator.equals(iterator)); 61561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 62561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator senteIterator = BreakIterator.getSentenceInstance(); 63561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(senteIterator.equals(iterator)); 64561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 65561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 66561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testClone() { 67561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator cloned = (BreakIterator) iterator.clone(); 68561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotSame(cloned, iterator); 69561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(cloned, iterator); 70561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 71561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 72561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testCurrent() { 73561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.current()); 74561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 75561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(iterator.first(), iterator.current()); 76561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 77561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 78561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testFirst() { 79561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.first()); 80561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 81561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.first()); 82561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 83561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 84561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testFollowing() { 85561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 86561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.following(1); 87561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 88561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 89561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 90561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 91561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, iterator.following(1)); 92561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 93561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.following(-1)); 94561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 95561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 96561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 97561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 98561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.following(TEXT.length()); 99561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 100561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 101561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 102561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 103561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 104561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testIsBoundary() { 105561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 106561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.isBoundary(2); 107561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 108561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 109561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 110561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 111561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue(iterator.isBoundary(2)); 112561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(iterator.isBoundary(1)); 113561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue(iterator.isBoundary(0)); 114561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 115561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.isBoundary(-1); 116561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 117561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 118561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 119561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 120561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.isBoundary(TEXT.length()); 121561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 122561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 123561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 124561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 125561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 126561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testLast() { 127561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.last()); 128561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 129561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(TEXT.length(), iterator.last()); 130561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 131561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 132561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 133561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for int next(int) 134561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 135561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testNextint() { 136561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(BreakIterator.DONE, iterator.next(3)); 137561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 138561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(4, iterator.next(3)); 139561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(24, iterator.next(20)); 140561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(23, iterator.next(-1)); 141561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(-1, iterator.next(TEXT.length())); 142561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 143561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 144561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testPreceding() { 145561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 146561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.preceding(2); 147561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 148561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 149561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 150561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 151561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, iterator.preceding(2)); 152561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, iterator.preceding(3)); 153561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(16, iterator.preceding(17)); 154561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(17, iterator.preceding(18)); 155561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(18, iterator.preceding(19)); 156561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 157561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.preceding(-1); 158561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 159561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 160561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 161561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 162561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.preceding(TEXT.length()); 163561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("should throw illegal argument exception"); 164561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 165561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 166561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 167561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 168561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testPrevious() { 169561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(-1, iterator.previous()); 170561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 171561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(-1, iterator.previous()); 172561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.last(); 173561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(TEXT.length() - 1, iterator.previous()); 174561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 175561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 176561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetAvailableLocales() { 177561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Locale[] locales = BreakIterator.getAvailableLocales(); 178561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue(locales.length > 0); 179561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 180561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 181561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 182561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getCharacterInstance() 183561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 184561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetCharacterInstance() { 185561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getCharacterInstance(); 186561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 187561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 188561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 189561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getCharacterInstance(Locale) 190561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 191561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetCharacterInstanceLocale() { 192561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getCharacterInstance(Locale.US); 193561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it2 = BreakIterator.getCharacterInstance(Locale.CHINA); 194561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(it, it2); 195561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 196561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 197561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 198561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getLineInstance() 199561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 200561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetLineInstance() { 201561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getLineInstance(); 202561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 203561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 204561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 205561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 206561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getLineInstance(Locale) 207561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 208561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetLineInstanceLocale() { 209561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getLineInstance(Locale.US); 210561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 211561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getLineInstance(new Locale("bad locale")); 212561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 213561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 214561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 215561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getSentenceInstance() 216561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 217561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetSentenceInstance() { 218561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getSentenceInstance(); 219561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 220561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 221561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 222561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 223561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getSentenceInstance(Locale) 224561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 225561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetSentenceInstanceLocale() { 226561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getSentenceInstance(Locale.US); 227561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 228561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 229561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 230561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetText() { 231561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(new StringCharacterIterator(""), iterator.getText()); 232561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 233561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(new StringCharacterIterator(TEXT), iterator.getText()); 234561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 235561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 236561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 237561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getWordInstance() 238561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 239561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetWordInstance() { 240561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getWordInstance(); 241561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 242561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 243561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 244561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 245561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for BreakIterator getWordInstance(Locale) 246561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 247561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetWordInstanceLocale() { 248561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator it = BreakIterator.getWordInstance(Locale.US); 249561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(it); 250561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 251561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 252561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 253561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for void setText(CharacterIterator) 254561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 255561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testSetTextCharacterIterator() { 256561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 257561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText((CharacterIterator) null); 258561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail(); 259561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 260561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 261561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes CharacterIterator it = new StringCharacterIterator("abc"); 262561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(it); 263561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertSame(it, iterator.getText()); 264561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 265561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 266561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 267561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Class under test for void setText(String) 268561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 269561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testSetTextString() { 270561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 271561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText((String) null); 272561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail(); 273561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 274561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 275561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText("abc"); 276561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes CharacterIterator it = new StringCharacterIterator("abc"); 277561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(it, iterator.getText()); 278561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 279561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 280561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_next() { 281561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression test for HARMONY-30 282561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator bi = BreakIterator.getWordInstance(Locale.US); 283561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes bi.setText("This is the test, WordInstance"); 284561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes int n = bi.first(); 285561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes n = bi.next(); 286561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Assert 0: next() returns incorrect value ", 4, n); 287561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 288561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(BreakIterator.DONE, iterator.next()); 289561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes iterator.setText(TEXT); 290561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, iterator.next()); 291561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 292561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 293561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 294561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.BreakIterator#getCharacterInstance(Locale) 295561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 296561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetCharacterInstanceLocale_NPE() { 297561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Regression for HARMONY-265 298561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 299561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getCharacterInstance(null); 300561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("BreakIterator.getCharacterInstance(null); should throw NullPointerException"); 301561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 302561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 303561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 304561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 305561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetLineInstanceLocale_NPE() { 306561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 307561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getLineInstance(null); 308561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("BreakIterator.getLineInstance(null); should throw NullPointerException"); 309561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 310561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 311561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 312561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 313561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetSentenceInstanceLocale_NPE() { 314561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 315561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getSentenceInstance(null); 316561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("BreakIterator.getSentenceInstance(null); should throw NullPointerException"); 317561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 318561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 319561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 320561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 321561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetWordInstanceLocale_NPE() { 322561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 323561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes BreakIterator.getWordInstance(null); 324561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("BreakIterator.getWordInstance(null); should throw NullPointerException"); 325561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 326561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 327561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 328561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes} 329