1994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes/* 2994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 3994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * contributor license agreements. See the NOTICE file distributed with 4994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * this work for additional information regarding copyright ownership. 5994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 6994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * (the "License"); you may not use this file except in compliance with 7994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * the License. You may obtain a copy of the License at 8994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * 9994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 10994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * 11994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * Unless required by applicable law or agreed to in writing, software 12994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 13994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * See the License for the specific language governing permissions and 15994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * limitations under the License. 16994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 17994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 18994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughespackage org.apache.harmony.tests.java.text; 19994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 20994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughesimport java.text.CharacterIterator; 21994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughesimport java.text.StringCharacterIterator; 22994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 23994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughesimport junit.framework.TestCase; 24994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 25994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughespublic class StringCharacterIteratorTest extends TestCase { 26994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 27994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 28994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.StringCharacterIterator(String, 29994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * int) 30994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 31994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_ConstructorI() { 32994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0)); 33994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("value", "value".length())); 34994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("", 0)); 35994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 36994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator(null, 0); 37994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("Assert 0: no null pointer"); 38994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (NullPointerException e) { 39994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 40994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 41994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 42994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 43994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", -1); 44994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("Assert 1: no illegal argument"); 45994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 46994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 47994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 48994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 49994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 50994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", "value".length() + 1); 51994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("Assert 2: no illegal argument"); 52994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 53994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 54994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 55994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 56994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 57994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 58994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator(String, int, int, int) 59994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 60994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_ConstructorIII() { 61994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0, "value".length(), 62994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 0)); 63994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("value", 0, "value".length(), 64994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 1)); 65994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("", 0, 0, 0)); 66994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 67994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 68994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator(null, 0, 0, 0); 69994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no null pointer"); 70994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (NullPointerException e) { 71994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 72994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 73994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 74994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 75994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", -1, "value".length(), 0); 76994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: invalid begin"); 77994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 78994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 79994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 80994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 81994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 82994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", 0, "value".length() + 1, 0); 83994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: invalid end"); 84994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 85994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 86994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 87994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 88994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 89994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", 2, 1, 0); 90994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: start greater than end"); 91994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 92994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 93994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 94994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 95994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 96994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", 2, 1, 2); 97994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: start greater than end"); 98994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 99994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 100994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 101994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 102994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 103994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", 2, 4, 1); 104994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: location greater than start"); 105994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 106994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 107994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 108994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 109994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 110994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("value", 0, 2, 3); 111994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument: location greater than start"); 112994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 113994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // Expected 114994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 115994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 116994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 117994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 118994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.equals(Object) 119994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 120994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_equalsLjava_lang_Object() { 121994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 122994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0, sci0); 123994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertFalse(sci0.equals(null)); 124994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertFalse(sci0.equals("fixture")); 125994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 126994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci1 = new StringCharacterIterator("fixture"); 127994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0, sci1); 128994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 129994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes sci1.next(); 130994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertFalse(sci0.equals(sci1)); 131994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes sci0.next(); 132994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0, sci1); 133994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 134994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 135994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 136994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it2 = new StringCharacterIterator("xxstinx", 2, 137994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 138994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Range is equal", !it1.equals(it2)); 139994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it3 = new StringCharacterIterator("testing", 2, 140994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 2); 141994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it3.setIndex(4); 142994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Not equal", it1.equals(it3)); 143994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 144994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 145994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 146994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.clone() 147994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 148994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_clone() { 149994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 150994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertSame(sci0, sci0); 151994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci1 = (StringCharacterIterator) sci0.clone(); 152994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotSame(sci0, sci1); 153994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0, sci1); 154994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 155994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 2, 156994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 157994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator clone = (StringCharacterIterator) it.clone(); 158994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Clone not equal", it.equals(clone)); 159994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 160994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 161994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 162994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.current() 163994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 164994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_current() { 165994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 166994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.current()); 167994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.next(); 168994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('i', fixture.current()); 169994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 170994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it = 171994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 172994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current char", 'i', it.current()); 173994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 174994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 175994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 176994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.first() 177994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 178994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_first() { 179994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 180994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.first()); 181994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.next(); 182994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.first()); 183994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 184994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.first()); 185994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 186994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 2); 187994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('i', fixture.first()); 188994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 189994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = 190994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 191994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong first char", 's', it1.first()); 192994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char", 't', it1.next()); 193994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1 = new StringCharacterIterator("testing", 2, 2, 2); 194994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Not DONE", it1.first() == CharacterIterator.DONE); 195994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 196994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 197994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 198994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.getBeginIndex() 199994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 200994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_getBeginIndex() { 201994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 202994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getBeginIndex()); 203994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 204994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getBeginIndex()); 205994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 206994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 2); 207994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(1, fixture.getBeginIndex()); 208994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 209994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = 210994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 211994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong begin index 2", 2, it1.getBeginIndex()); 212994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 213994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 214994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 215994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.getEndIndex() 216994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 217994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_getEndIndex() { 218994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 219994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 220994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 221994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 222994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 223994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 2); 224994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("fixture".length(), fixture.getEndIndex()); 225994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 226994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(4, fixture.getEndIndex()); 227994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 228994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = 229994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 230994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong end index 6", 6, it1.getEndIndex()); 231994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 232994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 233994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 234994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.getIndex() 235994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 236994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void testGetIndex() { 237994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 238994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getIndex()); 239994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 240994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(1, fixture.getIndex()); 241994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 242994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 2); 243994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(2, fixture.getIndex()); 244994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 245994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(2, fixture.getIndex()); 246994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 247994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 248994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 249994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.last() 250994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 251994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void testLast() { 252994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 253994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.last()); 254994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.next(); 255994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.last()); 256994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1); 257994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.last()); 258994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, "fixture".length(), 259994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 2); 260994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.last()); 261994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture = new StringCharacterIterator("fixture", 1, 4, 2); 262994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('t', fixture.last()); 263994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 264994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 265994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 266994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.next() 267994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 268994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_next() { 269994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 270994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getIndex()); 271994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('i', fixture.next()); 272994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(1, fixture.getIndex()); 273994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('x', fixture.next()); 274994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(2, fixture.getIndex()); 275994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('t', fixture.next()); 276994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(3, fixture.getIndex()); 277994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('u', fixture.next()); 278994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(4, fixture.getIndex()); 279994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('r', fixture.next()); 280994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(5, fixture.getIndex()); 281994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.next()); 282994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(6, fixture.getIndex()); 283994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 284994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(7, fixture.getIndex()); 285994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 286994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(7, fixture.getIndex()); 287994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 288994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(7, fixture.getIndex()); 289994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 290994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 291994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 3); 292994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes char result = it1.next(); 293994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char1", 'i', result); 294994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char2", 'n', it1.next()); 295994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong next char3", it1.next() == CharacterIterator.DONE); 296994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong next char4", it1.next() == CharacterIterator.DONE); 297994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes int index = it1.getIndex(); 298994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong index", 6, index); 299994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong current char", 300994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.current() == CharacterIterator.DONE); 301994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 302994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 303994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 304994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.previous() 305994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 306994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_previous() { 307994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 308994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.previous()); 309994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('i', fixture.next()); 310994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('x', fixture.next()); 311994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('t', fixture.next()); 312994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('u', fixture.next()); 313994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('r', fixture.next()); 314994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.next()); 315994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 316994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 317994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.next()); 318994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(7, fixture.getIndex()); 319994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.previous()); 320994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(6, fixture.getIndex()); 321994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('r', fixture.previous()); 322994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(5, fixture.getIndex()); 323994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('u', fixture.previous()); 324994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(4, fixture.getIndex()); 325994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('t', fixture.previous()); 326994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(3, fixture.getIndex()); 327994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('x', fixture.previous()); 328994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(2, fixture.getIndex()); 329994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('i', fixture.previous()); 330994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(1, fixture.getIndex()); 331994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.previous()); 332994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getIndex()); 333994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(CharacterIterator.DONE, fixture.previous()); 334994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getIndex()); 335994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 336994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = 337994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator("testing", 2, 6, 4); 338994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong previous char1", 't', it1.previous()); 339994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong previous char2", 's', it1.previous()); 340994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong previous char3", 341994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.previous() == CharacterIterator.DONE); 342994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong previous char4", 343994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.previous() == CharacterIterator.DONE); 344994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong index", 2, it1.getIndex()); 345994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current char", 's', it1.current()); 346994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 347994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 348994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 349994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.setIndex(int) 350994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 351994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_setIndex() { 352994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 353994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes while (fixture.next() != CharacterIterator.DONE) { 354994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // empty 355994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 356994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("fixture".length(), fixture.getIndex()); 357994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setIndex(0); 358994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(0, fixture.getIndex()); 359994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.current()); 360994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setIndex("fixture".length() - 1); 361994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('e', fixture.current()); 362994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 363994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setIndex(-1); 364994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument"); 365994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 366994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 367994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 368994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 369994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 370994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setIndex("fixture".length() + 1); 371994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no illegal argument"); 372994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (IllegalArgumentException e) { 373994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 374994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 375994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 376994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 377994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 378994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator.setText(String) 379994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 380994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_setText() { 381994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator fixture = new StringCharacterIterator("fixture"); 382994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setText("fix"); 383994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('f', fixture.current()); 384994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals('x', fixture.last()); 385994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 386994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 387994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fixture.setText(null); 388994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("no null pointer"); 389994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (NullPointerException e) { 390994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 391994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 392994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 393994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 394994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 395994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String) 396994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 397994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_ConstructorLjava_lang_String() { 398994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("value")); 399994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertNotNull(new StringCharacterIterator("")); 400994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes try { 401994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes new StringCharacterIterator(null); 402994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes fail("Assert 0: no null pointer"); 403994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } catch (NullPointerException e) { 404994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes // expected 405994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 406994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 407994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing"); 408994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong begin index", 0, it.getBeginIndex()); 409994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong end index", 7, it.getEndIndex()); 410994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current index", 0, it.getIndex()); 411994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current char", 't', it.current()); 412994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char", 'e', it.next()); 413994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 414994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 415994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 416994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String, 417994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * int) 418994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 419994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_ConstructorLjava_lang_StringI() { 420994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 3); 421994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong begin index", 0, it.getBeginIndex()); 422994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong end index", 7, it.getEndIndex()); 423994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current index", 3, it.getIndex()); 424994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current char", 't', it.current()); 425994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char", 'i', it.next()); 426994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 427994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 428994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 429994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#StringCharacterIterator(java.lang.String, 430994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * int, int, int) 431994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 432994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_ConstructorLjava_lang_StringIII() { 433994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it = new StringCharacterIterator("testing", 2, 434994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 435994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong begin index", 2, it.getBeginIndex()); 436994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong end index", 6, it.getEndIndex()); 437994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current index", 4, it.getIndex()); 438994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current char", 'i', it.current()); 439994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong next char", 'n', it.next()); 440994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 441994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 442994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 443994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#getIndex() 444994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 445994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_getIndex() { 446994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 447994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 448994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong index 4", 4, it1.getIndex()); 449994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.next(); 450994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong index 5", 5, it1.getIndex()); 451994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.last(); 452994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong index 4/2", 5, it1.getIndex()); 453994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 454994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 455994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 456994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#hashCode() 457994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 458994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_hashCode() { 459994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 460994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 461994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it2 = new StringCharacterIterator("xxstinx", 2, 462994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 463994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Hash is equal", it1.hashCode() != it2.hashCode()); 464994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it3 = new StringCharacterIterator("testing", 2, 465994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 2); 466994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Hash equal1", it1.hashCode() != it3.hashCode()); 467994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it3 = new StringCharacterIterator("testing", 0, 6, 4); 468994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Hash equal2", it1.hashCode() != it3.hashCode()); 469994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it3 = new StringCharacterIterator("testing", 2, 5, 4); 470994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Hash equal3", it1.hashCode() != it3.hashCode()); 471994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it3 = new StringCharacterIterator("froging", 2, 6, 4); 472994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Hash equal4", it1.hashCode() != it3.hashCode()); 473994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 474994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci0 = new StringCharacterIterator("fixture"); 475994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0.hashCode(), sci0.hashCode()); 476994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 477994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator sci1 = new StringCharacterIterator("fixture"); 478994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0.hashCode(), sci1.hashCode()); 479994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 480994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes sci1.next(); 481994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes sci0.next(); 482994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals(sci0.hashCode(), sci1.hashCode()); 483994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 484994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 485994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 486994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#last() 487994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 488994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_last() { 489994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 490994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 3); 491994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong last char", 'n', it1.last()); 492994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong previous char", 'i', it1.previous()); 493994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1 = new StringCharacterIterator("testing", 2, 2, 2); 494994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Not DONE", it1.last() == CharacterIterator.DONE); 495994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 496994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 497994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 498994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#setIndex(int) 499994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 500994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_setIndexI() { 501994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 502994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 503994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong result1", 's', it1.setIndex(2)); 504994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes char result = it1.next(); 505994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong next char: " + result, result == 't'); 506994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertTrue("Wrong result2", it1.setIndex(6) == CharacterIterator.DONE); 507994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong previous char", 'n', it1.previous()); 508994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 509994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 510994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes /** 511994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes * @tests java.text.StringCharacterIterator#setText(java.lang.String) 512994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes */ 513994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes public void test_setTextLjava_lang_String() { 514994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes StringCharacterIterator it1 = new StringCharacterIterator("testing", 2, 515994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes 6, 4); 516994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes it1.setText("frog"); 517994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong begin index", 0, it1.getBeginIndex()); 518994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong end index", 4, it1.getEndIndex()); 519994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes assertEquals("Wrong current index", 0, it1.getIndex()); 520994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes } 521994e4e5ded616a100ca42b16cffa36aa9f595f64Elliott Hughes} 522