mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-10 07:39:16 +00:00
ICU-8856 text file line endings fixed for icu4j
X-SVN-Rev: 30741
This commit is contained in:
parent
2b2e4ecfe6
commit
deca5a8197
5 changed files with 479 additions and 8 deletions
4
.gitattributes
vendored
4
.gitattributes
vendored
|
@ -701,10 +701,6 @@ icu4j/main/tests/translit/.externalToolBuilders/copy-translit-test-data.launch -
|
|||
icu4j/main/tests/translit/.settings/org.eclipse.core.resources.prefs -text
|
||||
icu4j/main/tests/translit/.settings/org.eclipse.jdt.core.prefs -text
|
||||
icu4j/main/tests/translit/.settings/org.eclipse.jdt.ui.prefs -text
|
||||
icu4j/main/tests/translit/src/com/ibm/icu/dev/test/translit/TestUnicodeProperty.java -text
|
||||
icu4j/main/tests/translit/src/com/ibm/icu/dev/test/util/IcuUnicodeNormalizerFactory.java -text
|
||||
icu4j/main/tests/translit/src/com/ibm/icu/dev/test/util/UnicodePropertySymbolTable.java -text
|
||||
icu4j/main/tests/translit/src/com/ibm/icu/dev/test/util/UnicodeTransform.java -text
|
||||
icu4j/main/tests/translit/translit-tests-build.launch -text
|
||||
icu4j/manifest.stub -text
|
||||
icu4j/tools/build/.settings/org.eclipse.core.resources.prefs -text
|
||||
|
|
|
@ -1 +1,118 @@
|
|||
/*
*******************************************************************************
* Copyright (C) 2011, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
package com.ibm.icu.dev.test.translit;
import java.util.List;
import com.ibm.icu.dev.test.TestFmwk;
import com.ibm.icu.dev.test.util.ICUPropertyFactory;
import com.ibm.icu.dev.test.util.UnicodeProperty;
import com.ibm.icu.dev.test.util.UnicodeProperty.Factory;
import com.ibm.icu.dev.test.util.UnicodePropertySymbolTable;
import com.ibm.icu.text.UnicodeSet;
/**
* @author markdavis
*
*/
public class TestUnicodeProperty extends TestFmwk{
public static void main(String[] args) {
new TestUnicodeProperty().run(args);
}
static final UnicodeSet casedLetter = new UnicodeSet("[:gc=cased letter:]");
static final UnicodeSet letter = new UnicodeSet("[:gc=L:]");
public void TestBasic() {
Factory factory = ICUPropertyFactory.make();
UnicodeProperty property = factory.getProperty("gc");
List values = property.getAvailableValues();
assertTrue("Values contain GC values", values.contains("Unassigned"));
final UnicodeSet lu = property.getSet("Lu");
if (!assertTrue("Gc=L contains 'A'", lu.contains('A'))) {
errln("Contents:\t" + lu.complement().complement().toPattern(false));
}
}
public void TestSymbolTable() {
Factory factory = ICUPropertyFactory.make();
UnicodePropertySymbolTable upst = new UnicodePropertySymbolTable(factory);
UnicodeSet.setDefaultXSymbolTable(upst);
try {
final UnicodeSet luSet = new UnicodeSet("[:gc=L:]");
assertTrue("Gc=L contains 'A'", luSet.contains('A'));
assertTrue("Gc=L contains 'Z'", luSet.contains('Z'));
assertFalse("Gc=L contains 'a'", luSet.contains('1'));
UnicodeSet casedLetter2 = new UnicodeSet("[:gc=cased letter:]");
assertEquals("gc=lc are equal", casedLetter, casedLetter2);
} finally {
// restore the world
UnicodeSet.setDefaultXSymbolTable(null);
}
}
public void TestSymbolTable2() {
Factory factory = new MyUnicodePropertyFactory();
UnicodePropertySymbolTable upst = new UnicodePropertySymbolTable(factory);
UnicodeSet.setDefaultXSymbolTable(upst);
try {
final UnicodeSet luSet = new UnicodeSet("[:gc=L:]");
assertFalse("Gc=L contains 'A'", luSet.contains('A'));
if (!assertTrue("Gc=L contains 'Z'", luSet.contains('Z'))) {
errln("Contents:\t" + luSet.complement().complement().toPattern(false));
}
assertFalse("Gc=L contains 'a'", luSet.contains('1'));
UnicodeSet casedLetter2 = new UnicodeSet("[:gc=cased letter:]");
assertNotEquals("gc=lc should not be equal", casedLetter, casedLetter2);
} finally {
// restore the world
UnicodeSet.setDefaultXSymbolTable(null);
}
}
/**
* For testing, override to set A-M to Cn.
*/
static class MyUnicodeGCProperty extends UnicodeProperty.SimpleProperty {
UnicodeProperty icuProperty = ICUPropertyFactory.make().getProperty("Gc");
{
setName(icuProperty.getName());
setType(icuProperty.getType());
}
@Override
protected String _getValue(int codepoint) {
if (codepoint >= 'A' && codepoint <= 'M') {
return "Unassigned";
} else {
return icuProperty.getValue(codepoint);
}
}
@Override
protected List _getValueAliases(String valueAlias, List result) {
return icuProperty.getValueAliases(valueAlias, result);
}
@Override
public List _getNameAliases(List result) {
return icuProperty.getNameAliases();
}
}
/**
* For testing, override to set A-Z to Cn.
*/
static class MyUnicodePropertyFactory extends ICUPropertyFactory {
private MyUnicodePropertyFactory() {
add(new MyUnicodeGCProperty());
}
}
static class MyUnicodePropertySymbolTable extends UnicodePropertySymbolTable {
public MyUnicodePropertySymbolTable(Factory factory) {
super(factory);
}
}
}
|
||||
/* *******************************************************************************
|
||||
* Copyright (C) 2011, International Business Machines Corporation and *
|
||||
* others. All Rights Reserved. *
|
||||
*******************************************************************************
|
||||
*/
|
||||
package com.ibm.icu.dev.test.translit;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.ibm.icu.dev.test.TestFmwk;
|
||||
import com.ibm.icu.dev.test.util.ICUPropertyFactory;
|
||||
import com.ibm.icu.dev.test.util.UnicodeProperty;
|
||||
import com.ibm.icu.dev.test.util.UnicodeProperty.Factory;
|
||||
import com.ibm.icu.dev.test.util.UnicodePropertySymbolTable;
|
||||
import com.ibm.icu.text.UnicodeSet;
|
||||
|
||||
/**
|
||||
* @author markdavis
|
||||
*
|
||||
*/
|
||||
public class TestUnicodeProperty extends TestFmwk{
|
||||
public static void main(String[] args) {
|
||||
new TestUnicodeProperty().run(args);
|
||||
}
|
||||
static final UnicodeSet casedLetter = new UnicodeSet("[:gc=cased letter:]");
|
||||
static final UnicodeSet letter = new UnicodeSet("[:gc=L:]");
|
||||
|
||||
|
||||
public void TestBasic() {
|
||||
Factory factory = ICUPropertyFactory.make();
|
||||
UnicodeProperty property = factory.getProperty("gc");
|
||||
List values = property.getAvailableValues();
|
||||
assertTrue("Values contain GC values", values.contains("Unassigned"));
|
||||
final UnicodeSet lu = property.getSet("Lu");
|
||||
if (!assertTrue("Gc=L contains 'A'", lu.contains('A'))) {
|
||||
errln("Contents:\t" + lu.complement().complement().toPattern(false));
|
||||
}
|
||||
}
|
||||
|
||||
public void TestSymbolTable() {
|
||||
Factory factory = ICUPropertyFactory.make();
|
||||
UnicodePropertySymbolTable upst = new UnicodePropertySymbolTable(factory);
|
||||
UnicodeSet.setDefaultXSymbolTable(upst);
|
||||
try {
|
||||
final UnicodeSet luSet = new UnicodeSet("[:gc=L:]");
|
||||
assertTrue("Gc=L contains 'A'", luSet.contains('A'));
|
||||
assertTrue("Gc=L contains 'Z'", luSet.contains('Z'));
|
||||
assertFalse("Gc=L contains 'a'", luSet.contains('1'));
|
||||
UnicodeSet casedLetter2 = new UnicodeSet("[:gc=cased letter:]");
|
||||
assertEquals("gc=lc are equal", casedLetter, casedLetter2);
|
||||
} finally {
|
||||
// restore the world
|
||||
UnicodeSet.setDefaultXSymbolTable(null);
|
||||
}
|
||||
}
|
||||
|
||||
public void TestSymbolTable2() {
|
||||
Factory factory = new MyUnicodePropertyFactory();
|
||||
UnicodePropertySymbolTable upst = new UnicodePropertySymbolTable(factory);
|
||||
UnicodeSet.setDefaultXSymbolTable(upst);
|
||||
try {
|
||||
final UnicodeSet luSet = new UnicodeSet("[:gc=L:]");
|
||||
assertFalse("Gc=L contains 'A'", luSet.contains('A'));
|
||||
if (!assertTrue("Gc=L contains 'Z'", luSet.contains('Z'))) {
|
||||
errln("Contents:\t" + luSet.complement().complement().toPattern(false));
|
||||
}
|
||||
assertFalse("Gc=L contains 'a'", luSet.contains('1'));
|
||||
UnicodeSet casedLetter2 = new UnicodeSet("[:gc=cased letter:]");
|
||||
assertNotEquals("gc=lc should not be equal", casedLetter, casedLetter2);
|
||||
} finally {
|
||||
// restore the world
|
||||
UnicodeSet.setDefaultXSymbolTable(null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* For testing, override to set A-M to Cn.
|
||||
*/
|
||||
static class MyUnicodeGCProperty extends UnicodeProperty.SimpleProperty {
|
||||
UnicodeProperty icuProperty = ICUPropertyFactory.make().getProperty("Gc");
|
||||
{
|
||||
setName(icuProperty.getName());
|
||||
setType(icuProperty.getType());
|
||||
}
|
||||
@Override
|
||||
protected String _getValue(int codepoint) {
|
||||
if (codepoint >= 'A' && codepoint <= 'M') {
|
||||
return "Unassigned";
|
||||
} else {
|
||||
return icuProperty.getValue(codepoint);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
protected List _getValueAliases(String valueAlias, List result) {
|
||||
return icuProperty.getValueAliases(valueAlias, result);
|
||||
}
|
||||
@Override
|
||||
public List _getNameAliases(List result) {
|
||||
return icuProperty.getNameAliases();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* For testing, override to set A-Z to Cn.
|
||||
*/
|
||||
static class MyUnicodePropertyFactory extends ICUPropertyFactory {
|
||||
private MyUnicodePropertyFactory() {
|
||||
add(new MyUnicodeGCProperty());
|
||||
}
|
||||
}
|
||||
|
||||
static class MyUnicodePropertySymbolTable extends UnicodePropertySymbolTable {
|
||||
public MyUnicodePropertySymbolTable(Factory factory) {
|
||||
super(factory);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1 +1,54 @@
|
|||
/*
*******************************************************************************
* Copyright (C) 2011, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
package com.ibm.icu.dev.test.util;
import com.ibm.icu.dev.test.util.UnicodeTransform.Type;
import com.ibm.icu.lang.UCharacter;
import com.ibm.icu.text.Normalizer2;
import com.ibm.icu.text.Normalizer2.Mode;
/**
* @author markdavis
*
*/
public class IcuUnicodeNormalizerFactory implements UnicodeTransform.Factory {
public UnicodeTransform getInstance(Type type) {
switch (type) {
case NFC: case NFKC:
return new IcuUnicodeNormalizer(Normalizer2.getInstance(null, type.toString(), Mode.COMPOSE));
case NFD: case NFKD:
return new IcuUnicodeNormalizer(Normalizer2.getInstance(null, type == Type.NFD ? "NFC" : "NFKC", Mode.DECOMPOSE));
case CASEFOLD:
return new CaseFolder();
default:
throw new IllegalArgumentException();
}
}
private static class CaseFolder extends UnicodeTransform {
@Override
public String transform(String source) {
return UCharacter.foldCase(source.toString(), true);
}
}
private static class IcuUnicodeNormalizer extends UnicodeTransform {
private Normalizer2 normalizer;
private IcuUnicodeNormalizer(Normalizer2 normalizer) {
this.normalizer = normalizer;
}
public String transform(String src) {
return normalizer.normalize(src);
}
public boolean isTransformed(String s) {
return normalizer.isNormalized(s);
}
}
}
|
||||
/* *******************************************************************************
|
||||
* Copyright (C) 2011, International Business Machines Corporation and *
|
||||
* others. All Rights Reserved. *
|
||||
*******************************************************************************
|
||||
*/
|
||||
package com.ibm.icu.dev.test.util;
|
||||
|
||||
import com.ibm.icu.dev.test.util.UnicodeTransform.Type;
|
||||
import com.ibm.icu.lang.UCharacter;
|
||||
import com.ibm.icu.text.Normalizer2;
|
||||
import com.ibm.icu.text.Normalizer2.Mode;
|
||||
|
||||
/**
|
||||
* @author markdavis
|
||||
*
|
||||
*/
|
||||
public class IcuUnicodeNormalizerFactory implements UnicodeTransform.Factory {
|
||||
|
||||
public UnicodeTransform getInstance(Type type) {
|
||||
switch (type) {
|
||||
case NFC: case NFKC:
|
||||
return new IcuUnicodeNormalizer(Normalizer2.getInstance(null, type.toString(), Mode.COMPOSE));
|
||||
case NFD: case NFKD:
|
||||
return new IcuUnicodeNormalizer(Normalizer2.getInstance(null, type == Type.NFD ? "NFC" : "NFKC", Mode.DECOMPOSE));
|
||||
case CASEFOLD:
|
||||
return new CaseFolder();
|
||||
default:
|
||||
throw new IllegalArgumentException();
|
||||
}
|
||||
}
|
||||
|
||||
private static class CaseFolder extends UnicodeTransform {
|
||||
@Override
|
||||
public String transform(String source) {
|
||||
return UCharacter.foldCase(source.toString(), true);
|
||||
}
|
||||
}
|
||||
|
||||
private static class IcuUnicodeNormalizer extends UnicodeTransform {
|
||||
private Normalizer2 normalizer;
|
||||
|
||||
private IcuUnicodeNormalizer(Normalizer2 normalizer) {
|
||||
this.normalizer = normalizer;
|
||||
}
|
||||
|
||||
public String transform(String src) {
|
||||
return normalizer.normalize(src);
|
||||
}
|
||||
|
||||
public boolean isTransformed(String s) {
|
||||
return normalizer.isNormalized(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1 +1,58 @@
|
|||
/*
*******************************************************************************
* Copyright (C) 2011, Google, International Business Machines Corporation and *
* others. All Rights Reserved. *
*******************************************************************************
*/
package com.ibm.icu.dev.test.util;
import com.ibm.icu.text.Transform;
import com.ibm.icu.text.UTF16;
/**
* Simple wrapping for normalizer that allows for both the standard ICU normalizer, and one built directly from the UCD.
*/
public abstract class UnicodeTransform implements Transform<String,String> {
public enum Type {
NFD, NFC, NFKD, NFKC, CASEFOLD
}
public interface Factory {
public UnicodeTransform getInstance(Type type);
}
private static Factory factory = new IcuUnicodeNormalizerFactory();
public static synchronized Factory getFactory() {
return factory;
}
public static synchronized void setFactory(Factory factory) {
UnicodeTransform.factory = factory;
}
public static synchronized UnicodeTransform getInstance(Type type) {
return factory.getInstance(type);
}
public abstract String transform(String source);
/**
* Can be overridden for performance.
*/
public boolean isTransformed(String source) {
return source.equals(transform(source));
}
/**
* Can be overridden for performance.
*/
public String transform(int source) {
return transform(UTF16.valueOf(source));
}
/**
* Can be overridden for performance.
*/
public boolean isTransformed(int source) {
return isTransformed(UTF16.valueOf(source));
}
}
|
||||
/* *******************************************************************************
|
||||
* Copyright (C) 2011, Google, International Business Machines Corporation and *
|
||||
* others. All Rights Reserved. *
|
||||
*******************************************************************************
|
||||
*/
|
||||
package com.ibm.icu.dev.test.util;
|
||||
|
||||
import com.ibm.icu.text.Transform;
|
||||
import com.ibm.icu.text.UTF16;
|
||||
|
||||
/**
|
||||
* Simple wrapping for normalizer that allows for both the standard ICU normalizer, and one built directly from the UCD.
|
||||
*/
|
||||
public abstract class UnicodeTransform implements Transform<String,String> {
|
||||
public enum Type {
|
||||
NFD, NFC, NFKD, NFKC, CASEFOLD
|
||||
}
|
||||
|
||||
public interface Factory {
|
||||
public UnicodeTransform getInstance(Type type);
|
||||
}
|
||||
|
||||
private static Factory factory = new IcuUnicodeNormalizerFactory();
|
||||
|
||||
public static synchronized Factory getFactory() {
|
||||
return factory;
|
||||
}
|
||||
|
||||
public static synchronized void setFactory(Factory factory) {
|
||||
UnicodeTransform.factory = factory;
|
||||
}
|
||||
|
||||
public static synchronized UnicodeTransform getInstance(Type type) {
|
||||
return factory.getInstance(type);
|
||||
}
|
||||
|
||||
public abstract String transform(String source);
|
||||
|
||||
/**
|
||||
* Can be overridden for performance.
|
||||
*/
|
||||
public boolean isTransformed(String source) {
|
||||
return source.equals(transform(source));
|
||||
}
|
||||
/**
|
||||
* Can be overridden for performance.
|
||||
*/
|
||||
public String transform(int source) {
|
||||
return transform(UTF16.valueOf(source));
|
||||
}
|
||||
/**
|
||||
* Can be overridden for performance.
|
||||
*/
|
||||
public boolean isTransformed(int source) {
|
||||
return isTransformed(UTF16.valueOf(source));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue