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, 13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * See the License for the specific language governing permissions and 15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * limitations under the License. 16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespackage org.apache.harmony.text.tests.java.text; 19561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 20561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.text.CharacterIterator; 21561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.text.StringCharacterIterator; 22561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 23561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport junit.framework.TestCase; 24561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 25561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespublic class StringCharacterIteratorTest extends TestCase { 26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.StringCharacterIterator(String, 29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * int) 30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorI() { 32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0)); 33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("value", "value".length())); 34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("", 0)); 35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator(null, 0); 37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Assert 0: no null pointer"); 38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", -1); 44561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Assert 1: no illegal argument"); 45561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 46561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 47561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 49561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 50561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", "value".length() + 1); 51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Assert 2: no illegal argument"); 52561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 53561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 54561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 55561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 56561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 57561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 58561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator(String, int, int, int) 59561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 60561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorIII() { 61561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0, "value".length(), 62561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 0)); 63561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0, "value".length(), 64561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 1)); 65561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("", 0, 0, 0)); 66561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 67561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 68561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator(null, 0, 0, 0); 69561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no null pointer"); 70561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 71561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 72561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 73561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 74561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 75561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", -1, "value".length(), 0); 76561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: invalid begin"); 77561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 78561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 79561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 80561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 81561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 82561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", 0, "value".length() + 1, 0); 83561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: invalid end"); 84561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 85561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 86561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 87561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 88561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 89561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", 2, 1, 0); 90561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: start greater than end"); 91561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 92561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 93561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 94561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 95561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 96561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", 2, 1, 2); 97561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: start greater than end"); 98561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 99561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 100561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 101561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 102561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 103561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", 2, 4, 1); 104561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: location greater than start"); 105561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 106561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 107561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 108561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 109561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 110561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("value", 0, 2, 3); 111561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument: location greater than start"); 112561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 113561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // Expected 114561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 115561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 116561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 117561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 118561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.equals(Object) 119561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 120561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_equalsLjava_lang_Object() { 121561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 122561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0, sci0); 123561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(sci0.equals(null)); 124561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(sci0.equals("fixture")); 125561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 126561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci1 = new StringCharacterIterator("fixture"); 127561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0, sci1); 128561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 129561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes sci1.next(); 130561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertFalse(sci0.equals(sci1)); 131561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes sci0.next(); 132561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0, sci1); 133561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 134561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 135561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 136561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it2 = new StringCharacterIterator("xxstinx", 2, 137561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 138561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Range is equal", !it1.equals(it2)); 139561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it3 = new StringCharacterIterator("testing", 2, 140561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 2); 141561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it3.setIndex(4); 142561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Not equal", it1.equals(it3)); 143561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 144561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 145561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 146561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.clone() 147561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 148561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_clone() { 149561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 150561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertSame(sci0, sci0); 151561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci1 = (StringCharacterIterator) sci0.clone(); 152561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotSame(sci0, sci1); 153561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0, sci1); 154561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 155561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 2, 156561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 157561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator clone = (StringCharacterIterator) it.clone(); 158561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Clone not equal", it.equals(clone)); 159561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 160561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 161561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 162561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.current() 163561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 164561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_current() { 165561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 166561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.current()); 167561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.next(); 168561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('i', fixture.current()); 169561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 170561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it = 171561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 172561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current char", 'i', it.current()); 173561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 174561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 175561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 176561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.first() 177561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 178561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_first() { 179561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 180561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.first()); 181561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.next(); 182561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.first()); 183561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 184561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.first()); 185561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 186561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2); 187561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('i', fixture.first()); 188561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 189561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = 190561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 191561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong first char", 's', it1.first()); 192561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char", 't', it1.next()); 193561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1 = new StringCharacterIterator("testing", 2, 2, 2); 194561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Not DONE", it1.first() == CharacterIterator.DONE); 195561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 196561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 197561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 198561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.getBeginIndex() 199561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 200561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getBeginIndex() { 201561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 202561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getBeginIndex()); 203561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 204561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getBeginIndex()); 205561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 206561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2); 207561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(1, fixture.getBeginIndex()); 208561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 209561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = 210561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 211561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong begin index 2", 2, it1.getBeginIndex()); 212561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 213561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 214561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 215561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.getEndIndex() 216561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 217561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getEndIndex() { 218561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 219561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 220561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 221561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 222561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 223561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2); 224561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 225561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 226561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(4, fixture.getEndIndex()); 227561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 228561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = 229561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 230561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong end index 6", 6, it1.getEndIndex()); 231561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 232561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 233561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 234561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.getIndex() 235561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 236561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetIndex() { 237561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 238561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getIndex()); 239561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 240561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(1, fixture.getIndex()); 241561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 242561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2); 243561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, fixture.getIndex()); 244561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 245561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, fixture.getIndex()); 246561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 247561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 248561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 249561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.last() 250561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 251561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testLast() { 252561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 253561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.last()); 254561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.next(); 255561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.last()); 256561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 257561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.last()); 258561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 259561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 2); 260561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.last()); 261561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 262561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('t', fixture.last()); 263561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 264561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 265561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 266561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.next() 267561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 268561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_next() { 269561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 270561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getIndex()); 271561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('i', fixture.next()); 272561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(1, fixture.getIndex()); 273561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('x', fixture.next()); 274561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, fixture.getIndex()); 275561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('t', fixture.next()); 276561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(3, fixture.getIndex()); 277561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('u', fixture.next()); 278561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(4, fixture.getIndex()); 279561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('r', fixture.next()); 280561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(5, fixture.getIndex()); 281561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.next()); 282561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(6, fixture.getIndex()); 283561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 284561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(7, fixture.getIndex()); 285561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 286561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(7, fixture.getIndex()); 287561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 288561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(7, fixture.getIndex()); 289561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 290561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 291561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 3); 292561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes char result = it1.next(); 293561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char1", 'i', result); 294561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char2", 'n', it1.next()); 295561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong next char3", it1.next() == CharacterIterator.DONE); 296561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong next char4", it1.next() == CharacterIterator.DONE); 297561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes int index = it1.getIndex(); 298561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong index", 6, index); 299561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong current char", 300561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.current() == CharacterIterator.DONE); 301561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 302561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 303561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 304561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.previous() 305561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 306561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_previous() { 307561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 308561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.previous()); 309561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('i', fixture.next()); 310561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('x', fixture.next()); 311561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('t', fixture.next()); 312561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('u', fixture.next()); 313561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('r', fixture.next()); 314561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.next()); 315561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 316561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 317561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 318561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(7, fixture.getIndex()); 319561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.previous()); 320561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(6, fixture.getIndex()); 321561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('r', fixture.previous()); 322561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(5, fixture.getIndex()); 323561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('u', fixture.previous()); 324561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(4, fixture.getIndex()); 325561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('t', fixture.previous()); 326561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(3, fixture.getIndex()); 327561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('x', fixture.previous()); 328561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(2, fixture.getIndex()); 329561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('i', fixture.previous()); 330561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(1, fixture.getIndex()); 331561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.previous()); 332561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getIndex()); 333561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.previous()); 334561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getIndex()); 335561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 336561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = 337561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 338561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong previous char1", 't', it1.previous()); 339561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong previous char2", 's', it1.previous()); 340561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong previous char3", 341561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.previous() == CharacterIterator.DONE); 342561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong previous char4", 343561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.previous() == CharacterIterator.DONE); 344561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong index", 2, it1.getIndex()); 345561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current char", 's', it1.current()); 346561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 347561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 348561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 349561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.setIndex(int) 350561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 351561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_setIndex() { 352561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 353561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes while (fixture.next() != CharacterIterator.DONE) { 354561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // empty 355561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 356561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("fixture".length(), fixture.getIndex()); 357561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setIndex(0); 358561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(0, fixture.getIndex()); 359561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.current()); 360561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setIndex("fixture".length() - 1); 361561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('e', fixture.current()); 362561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 363561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setIndex(-1); 364561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument"); 365561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 366561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 367561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 368561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 369561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 370561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setIndex("fixture".length() + 1); 371561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no illegal argument"); 372561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 373561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 374561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 375561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 376561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 377561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 378561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator.setText(String) 379561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 380561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_setText() { 381561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 382561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setText("fix"); 383561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('f', fixture.current()); 384561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals('x', fixture.last()); 385561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 386561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 387561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fixture.setText(null); 388561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("no null pointer"); 389561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 390561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 391561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 392561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 393561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 394561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 395561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String) 396561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 397561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_String() { 398561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("value")); 399561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertNotNull(new StringCharacterIterator("")); 400561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 401561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes new StringCharacterIterator(null); 402561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("Assert 0: no null pointer"); 403561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 404561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes // expected 405561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 406561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 407561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing"); 408561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong begin index", 0, it.getBeginIndex()); 409561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong end index", 7, it.getEndIndex()); 410561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current index", 0, it.getIndex()); 411561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current char", 't', it.current()); 412561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char", 'e', it.next()); 413561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 414561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 415561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 416561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String, 417561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * int) 418561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 419561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_StringI() { 420561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 3); 421561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong begin index", 0, it.getBeginIndex()); 422561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong end index", 7, it.getEndIndex()); 423561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current index", 3, it.getIndex()); 424561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current char", 't', it.current()); 425561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char", 'i', it.next()); 426561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 427561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 428561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 429561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String, 430561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * int, int, int) 431561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 432561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_ConstructorLjava_lang_StringIII() { 433561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 2, 434561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 435561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong begin index", 2, it.getBeginIndex()); 436561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong end index", 6, it.getEndIndex()); 437561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current index", 4, it.getIndex()); 438561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current char", 'i', it.current()); 439561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong next char", 'n', it.next()); 440561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 441561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 442561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 443561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#getIndex() 444561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 445561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_getIndex() { 446561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 447561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 448561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong index 4", 4, it1.getIndex()); 449561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.next(); 450561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong index 5", 5, it1.getIndex()); 451561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.last(); 452561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong index 4/2", 5, it1.getIndex()); 453561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 454561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 455561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 456561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#hashCode() 457561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 458561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_hashCode() { 459561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 460561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 461561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it2 = new StringCharacterIterator("xxstinx", 2, 462561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 463561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Hash is equal", it1.hashCode() != it2.hashCode()); 464561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it3 = new StringCharacterIterator("testing", 2, 465561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 2); 466561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Hash equal1", it1.hashCode() != it3.hashCode()); 467561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it3 = new StringCharacterIterator("testing", 0, 6, 4); 468561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Hash equal2", it1.hashCode() != it3.hashCode()); 469561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it3 = new StringCharacterIterator("testing", 2, 5, 4); 470561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Hash equal3", it1.hashCode() != it3.hashCode()); 471561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it3 = new StringCharacterIterator("froging", 2, 6, 4); 472561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Hash equal4", it1.hashCode() != it3.hashCode()); 473561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 474561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 475561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0.hashCode(), sci0.hashCode()); 476561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 477561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator sci1 = new StringCharacterIterator("fixture"); 478561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0.hashCode(), sci1.hashCode()); 479561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 480561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes sci1.next(); 481561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes sci0.next(); 482561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals(sci0.hashCode(), sci1.hashCode()); 483561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 484561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 485561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 486561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#last() 487561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 488561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_last() { 489561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 490561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 3); 491561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong last char", 'n', it1.last()); 492561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong previous char", 'i', it1.previous()); 493561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1 = new StringCharacterIterator("testing", 2, 2, 2); 494561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Not DONE", it1.last() == CharacterIterator.DONE); 495561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 496561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 497561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 498561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#setIndex(int) 499561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 500561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_setIndexI() { 501561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 502561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 503561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong result1", 's', it1.setIndex(2)); 504561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes char result = it1.next(); 505561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong next char: " + result, result == 't'); 506561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertTrue("Wrong result2", it1.setIndex(6) == CharacterIterator.DONE); 507561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong previous char", 'n', it1.previous()); 508561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 509561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 510561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 511561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @tests java.text.StringCharacterIterator#setText(java.lang.String) 512561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 513561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void test_setTextLjava_lang_String() { 514561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 515561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 6, 4); 516561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes it1.setText("frog"); 517561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong begin index", 0, it1.getBeginIndex()); 518561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong end index", 4, it1.getEndIndex()); 519561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Wrong current index", 0, it1.getIndex()); 520561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 521561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes} 522