blob: 47e56b469638d4ae8cd3a981a7b5711d11f70290 [file] [log] [blame]
/**
*******************************************************************************
* Copyright (C) 1996-2003, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/dev/test/lang/Attic/UCharacterIteratorTest.java,v $
* $Date: 2003/06/03 18:49:30 $
* $Revision: 1.5 $
*
*******************************************************************************
*/
package com.ibm.icu.dev.test.lang;
import com.ibm.icu.dev.test.TestFmwk;
/**
* Testing class for UCharacterIterator
* @author Syn Wee Quek
* @since april 02 2002
*/
public final class UCharacterIteratorTest extends TestFmwk
{
// constructor -----------------------------------------------------
/**
* Constructor
*/
public UCharacterIteratorTest()
{
}
// public methods --------------------------------------------------
/**
* Testing cloning
*/
/*
public void TestClone()
{
UnicodeCharacterIterator iterator = new UnicodeCharacterIterator("testing");
UnicodeCharacterIterator cloned = (UnicodeCharacterIterator)iterator.clone();
char completed = 0;
while (completed != UnicodeCharacterIterator.DONE) {
completed = iterator.next();
if (completed != cloned.next()) {
errln("Cloned operation failed");
}
}
}
*
/**
* Testing iteration
*/
/*
public void TestIteration()
{
UnicodeCharacterIterator iterator = new UnicodeCharacterIterator(
ITERATION_STRING_);
UnicodeCharacterIterator iterator2 = new UnicodeCharacterIterator(
ITERATION_STRING_);
if (iterator.first() != ITERATION_STRING_.charAt(0)) {
errln("Iterator failed retrieving first character");
}
if (iterator.last() != ITERATION_STRING_.charAt(
ITERATION_STRING_.length() - 1)) {
errln("Iterator failed retrieving last character");
}
if (iterator.getBeginIndex() != 0 ||
iterator.getEndIndex() != ITERATION_STRING_.length()) {
errln("Iterator failed determining begin and end index");
}
iterator2.setIndex(0);
iterator.setIndex(0);
int ch = 0;
while (ch != UnicodeCharacterIterator.DONE_CODEPOINT) {
int index = iterator2.getIndex();
ch = iterator2.nextCodePoint();
if (index != ITERATION_SUPPLEMENTARY_INDEX) {
if (ch != (int)iterator.next() &&
ch != UnicodeCharacterIterator.DONE_CODEPOINT) {
errln("Error mismatch in next() and nextCodePoint()");
}
}
else {
if (UTF16.getLeadSurrogate(ch) != iterator.next() ||
UTF16.getTrailSurrogate(ch) != iterator.next()) {
errln("Error mismatch in next and nextCodePoint for " +
"supplementary characters");
}
}
}
iterator.setIndex(ITERATION_STRING_.length());
iterator2.setIndex(ITERATION_STRING_.length());
while (ch != UnicodeCharacterIterator.DONE_CODEPOINT) {
int index = iterator2.getIndex();
ch = iterator2.previousCodePoint();
if (index != ITERATION_SUPPLEMENTARY_INDEX) {
if (ch != (int)iterator.previous() &&
ch != UnicodeCharacterIterator.DONE_CODEPOINT) {
errln("Error mismatch in previous() and " +
"previousCodePoint()");
}
}
else {
if (UTF16.getLeadSurrogate(ch) != iterator.previous() ||
UTF16.getTrailSurrogate(ch) != iterator.previous()) {
errln("Error mismatch in previous and " +
"previousCodePoint for supplementary characters");
}
}
}
}
*/
public static void main(String[] arg)
{
try
{
UCharacterIteratorTest test = new UCharacterIteratorTest();
test.run(arg);
}
catch (Exception e)
{
e.printStackTrace();
}
}
// private data members ---------------------------------------------
private static final String ITERATION_STRING_ =
"Testing 1 2 3 \ud800\udc00 456";
private static final int ITERATION_SUPPLEMENTARY_INDEX = 14;
}