Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(447)

Side by Side Diff: source/test/intltest/citrtest.cpp

Issue 845603002: Update ICU to 54.1 step 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/icu.git@master
Patch Set: remove unusued directories Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « source/test/intltest/caltest.cpp ('k') | source/test/intltest/cntabcol.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /******************************************************************************* ********* 1 /******************************************************************************* *********
2 * COPYRIGHT: 2 * COPYRIGHT:
3 * Copyright (c) 1997-2012, International Business Machines Corporation and 3 * Copyright (c) 1997-2014, International Business Machines Corporation and
4 * others. All Rights Reserved. 4 * others. All Rights Reserved.
5 * Modification History: 5 * Modification History:
6 * 6 *
7 * Date Name Description 7 * Date Name Description
8 * 05/22/2000 Madhu Added tests for testing new API for utf16 support and more 8 * 05/22/2000 Madhu Added tests for testing new API for utf16 support and more
9 ******************************************************************************* *********/ 9 ******************************************************************************* *********/
10 10
11 #include <string.h> 11 #include <string.h>
12 #include "utypeinfo.h" // for 'typeid' to work 12 #include "utypeinfo.h" // for 'typeid' to work
13 13
14 #include "unicode/chariter.h" 14 #include "unicode/chariter.h"
15 #include "unicode/ustring.h" 15 #include "unicode/ustring.h"
16 #include "unicode/unistr.h" 16 #include "unicode/unistr.h"
17 #include "unicode/schriter.h" 17 #include "unicode/schriter.h"
18 #include "unicode/uchriter.h" 18 #include "unicode/uchriter.h"
19 #include "unicode/uiter.h" 19 #include "unicode/uiter.h"
20 #include "unicode/putil.h" 20 #include "unicode/putil.h"
21 #include "unicode/utf16.h" 21 #include "unicode/utf16.h"
22 #include "citrtest.h" 22 #include "citrtest.h"
23 #include "cmemory.h"
23 24
24 25
25 class SCharacterIterator : public CharacterIterator { 26 class SCharacterIterator : public CharacterIterator {
26 public: 27 public:
27 SCharacterIterator(const UnicodeString& textStr){ 28 SCharacterIterator(const UnicodeString& textStr){
28 text = textStr; 29 text = textStr;
29 pos=0; 30 pos=0;
30 textLength = textStr.length(); 31 textLength = textStr.length();
31 begin = 0; 32 begin = 0;
32 end=textLength; 33 end=textLength;
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 return *this; 133 return *this;
133 } 134 }
134 135
135 136
136 private: 137 private:
137 UnicodeString text; 138 UnicodeString text;
138 static const char fgClassID; 139 static const char fgClassID;
139 }; 140 };
140 const char SCharacterIterator::fgClassID=0; 141 const char SCharacterIterator::fgClassID=0;
141 142
142 #define LENGTHOF(array) ((int32_t)(sizeof(array)/sizeof((array)[0])))
143
144 CharIterTest::CharIterTest() 143 CharIterTest::CharIterTest()
145 { 144 {
146 } 145 }
147 void CharIterTest::runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par*/ ) 146 void CharIterTest::runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par*/ )
148 { 147 {
149 if (exec) logln("TestSuite CharIterTest: "); 148 if (exec) logln("TestSuite CharIterTest: ");
150 switch (index) { 149 switch (index) {
151 case 0: name = "TestConstructionAndEquality"; if (exec) TestConstruction AndEquality(); break; 150 case 0: name = "TestConstructionAndEquality"; if (exec) TestConstruction AndEquality(); break;
152 case 1: name = "TestConstructionAndEqualityUChariter"; if (exec) TestCon structionAndEqualityUChariter(); break; 151 case 1: name = "TestConstructionAndEqualityUChariter"; if (exec) TestCon structionAndEqualityUChariter(); break;
153 case 2: name = "TestIteration"; if (exec) TestIteration(); break; 152 case 2: name = "TestIteration"; if (exec) TestIteration(); break;
(...skipping 806 matching lines...) Expand 10 before | Expand all | Expand 10 after
960 errln("error: uiter_getState did not return UITER_NO_STATE on bad input" ); 959 errln("error: uiter_getState did not return UITER_NO_STATE on bad input" );
961 } 960 }
962 } 961 }
963 962
964 // subclass test, and completing API coverage ------------------------------- 963 // subclass test, and completing API coverage -------------------------------
965 964
966 class SubCharIter : public CharacterIterator { 965 class SubCharIter : public CharacterIterator {
967 public: 966 public:
968 // public default constructor, to get coverage of CharacterIterator() 967 // public default constructor, to get coverage of CharacterIterator()
969 SubCharIter() : CharacterIterator() { 968 SubCharIter() : CharacterIterator() {
970 textLength=end=LENGTHOF(s); 969 textLength=end=UPRV_LENGTHOF(s);
971 s[0]=0x61; // 'a' 970 s[0]=0x61; // 'a'
972 s[1]=0xd900; // U+50400 971 s[1]=0xd900; // U+50400
973 s[2]=0xdd00; 972 s[2]=0xdd00;
974 s[3]=0x2029; // PS 973 s[3]=0x2029; // PS
975 } 974 }
976 975
977 // useful stuff, mostly dummy but testing coverage and subclassability 976 // useful stuff, mostly dummy but testing coverage and subclassability
978 virtual UChar nextPostInc() { 977 virtual UChar nextPostInc() {
979 if(pos<LENGTHOF(s)) { 978 if(pos<UPRV_LENGTHOF(s)) {
980 return s[pos++]; 979 return s[pos++];
981 } else { 980 } else {
982 return DONE; 981 return DONE;
983 } 982 }
984 } 983 }
985 984
986 virtual UChar32 next32PostInc() { 985 virtual UChar32 next32PostInc() {
987 if(pos<LENGTHOF(s)) { 986 if(pos<UPRV_LENGTHOF(s)) {
988 UChar32 c; 987 UChar32 c;
989 U16_NEXT(s, pos, LENGTHOF(s), c); 988 U16_NEXT(s, pos, UPRV_LENGTHOF(s), c);
990 return c; 989 return c;
991 } else { 990 } else {
992 return DONE; 991 return DONE;
993 } 992 }
994 } 993 }
995 994
996 virtual UBool hasNext() { 995 virtual UBool hasNext() {
997 return pos<LENGTHOF(s); 996 return pos<UPRV_LENGTHOF(s);
998 } 997 }
999 998
1000 virtual UChar first() { 999 virtual UChar first() {
1001 pos=0; 1000 pos=0;
1002 return s[0]; 1001 return s[0];
1003 } 1002 }
1004 1003
1005 virtual UChar32 first32() { 1004 virtual UChar32 first32() {
1006 UChar32 c; 1005 UChar32 c;
1007 pos=0; 1006 pos=0;
1008 U16_NEXT(s, pos, LENGTHOF(s), c); 1007 U16_NEXT(s, pos, UPRV_LENGTHOF(s), c);
1009 pos=0; 1008 pos=0;
1010 return c; 1009 return c;
1011 } 1010 }
1012 1011
1013 virtual UChar setIndex(int32_t position) { 1012 virtual UChar setIndex(int32_t position) {
1014 if(0<=position && position<=LENGTHOF(s)) { 1013 if(0<=position && position<=UPRV_LENGTHOF(s)) {
1015 pos=position; 1014 pos=position;
1016 if(pos<LENGTHOF(s)) { 1015 if(pos<UPRV_LENGTHOF(s)) {
1017 return s[pos]; 1016 return s[pos];
1018 } 1017 }
1019 } 1018 }
1020 return DONE; 1019 return DONE;
1021 } 1020 }
1022 1021
1023 virtual UChar32 setIndex32(int32_t position) { 1022 virtual UChar32 setIndex32(int32_t position) {
1024 if(0<=position && position<=LENGTHOF(s)) { 1023 if(0<=position && position<=UPRV_LENGTHOF(s)) {
1025 pos=position; 1024 pos=position;
1026 if(pos<LENGTHOF(s)) { 1025 if(pos<UPRV_LENGTHOF(s)) {
1027 UChar32 c; 1026 UChar32 c;
1028 U16_GET(s, 0, pos, LENGTHOF(s), c); 1027 U16_GET(s, 0, pos, UPRV_LENGTHOF(s), c);
1029 return c; 1028 return c;
1030 } 1029 }
1031 } 1030 }
1032 return DONE; 1031 return DONE;
1033 } 1032 }
1034 1033
1035 virtual UChar current() const { 1034 virtual UChar current() const {
1036 if(pos<LENGTHOF(s)) { 1035 if(pos<UPRV_LENGTHOF(s)) {
1037 return s[pos]; 1036 return s[pos];
1038 } else { 1037 } else {
1039 return DONE; 1038 return DONE;
1040 } 1039 }
1041 } 1040 }
1042 1041
1043 virtual UChar32 current32() const { 1042 virtual UChar32 current32() const {
1044 if(pos<LENGTHOF(s)) { 1043 if(pos<UPRV_LENGTHOF(s)) {
1045 UChar32 c; 1044 UChar32 c;
1046 U16_GET(s, 0, pos, LENGTHOF(s), c); 1045 U16_GET(s, 0, pos, UPRV_LENGTHOF(s), c);
1047 return c; 1046 return c;
1048 } else { 1047 } else {
1049 return DONE; 1048 return DONE;
1050 } 1049 }
1051 } 1050 }
1052 1051
1053 virtual UChar next() { 1052 virtual UChar next() {
1054 if(pos<LENGTHOF(s) && ++pos<LENGTHOF(s)) { 1053 if(pos<UPRV_LENGTHOF(s) && ++pos<UPRV_LENGTHOF(s)) {
1055 return s[pos]; 1054 return s[pos];
1056 } else { 1055 } else {
1057 return DONE; 1056 return DONE;
1058 } 1057 }
1059 } 1058 }
1060 1059
1061 virtual UChar32 next32() { 1060 virtual UChar32 next32() {
1062 if(pos<LENGTHOF(s)) { 1061 if(pos<UPRV_LENGTHOF(s)) {
1063 U16_FWD_1(s, pos, LENGTHOF(s)); 1062 U16_FWD_1(s, pos, UPRV_LENGTHOF(s));
1064 } 1063 }
1065 if(pos<LENGTHOF(s)) { 1064 if(pos<UPRV_LENGTHOF(s)) {
1066 UChar32 c; 1065 UChar32 c;
1067 int32_t i=pos; 1066 int32_t i=pos;
1068 U16_NEXT(s, i, LENGTHOF(s), c); 1067 U16_NEXT(s, i, UPRV_LENGTHOF(s), c);
1069 return c; 1068 return c;
1070 } else { 1069 } else {
1071 return DONE; 1070 return DONE;
1072 } 1071 }
1073 } 1072 }
1074 1073
1075 virtual UBool hasPrevious() { 1074 virtual UBool hasPrevious() {
1076 return pos>0; 1075 return pos>0;
1077 } 1076 }
1078 1077
1079 virtual void getText(UnicodeString &result) { 1078 virtual void getText(UnicodeString &result) {
1080 result.setTo(s, LENGTHOF(s)); 1079 result.setTo(s, UPRV_LENGTHOF(s));
1081 } 1080 }
1082 1081
1083 // dummy implementations of other pure virtual base class functions 1082 // dummy implementations of other pure virtual base class functions
1084 virtual UBool operator==(const ForwardCharacterIterator &that) const { 1083 virtual UBool operator==(const ForwardCharacterIterator &that) const {
1085 return 1084 return
1086 this==&that || 1085 this==&that ||
1087 (typeid(*this)==typeid(that) && pos==((SubCharIter &)that).pos); 1086 (typeid(*this)==typeid(that) && pos==((SubCharIter &)that).pos);
1088 } 1087 }
1089 1088
1090 virtual int32_t hashCode() const { 1089 virtual int32_t hashCode() const {
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
1179 if(sci.firstPostInc()!=0x61) { 1178 if(sci.firstPostInc()!=0x61) {
1180 errln("SubStringCharIter.firstPostInc() failed\n"); 1179 errln("SubStringCharIter.firstPostInc() failed\n");
1181 } 1180 }
1182 1181
1183 // coverage: UCharCharacterIterator default constructor 1182 // coverage: UCharCharacterIterator default constructor
1184 SubUCharCharIter uci; 1183 SubUCharCharIter uci;
1185 if(uci.firstPostInc()!=0x61) { 1184 if(uci.firstPostInc()!=0x61) {
1186 errln("SubUCharCharIter.firstPostInc() failed\n"); 1185 errln("SubUCharCharIter.firstPostInc() failed\n");
1187 } 1186 }
1188 } 1187 }
OLDNEW
« no previous file with comments | « source/test/intltest/caltest.cpp ('k') | source/test/intltest/cntabcol.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698