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

Unified Diff: source/test/intltest/apicoll.cpp

Issue 1621843002: ICU 56 update step 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/icu.git@561
Patch Set: Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « source/test/intltest/alphaindextst.cpp ('k') | source/test/intltest/bidiconf.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: source/test/intltest/apicoll.cpp
diff --git a/source/test/intltest/apicoll.cpp b/source/test/intltest/apicoll.cpp
index 9d87bf07ce515a46a214628cc3073e28be507cc0..31b16dd26249bfd579a946f0484275e102607198 100644
--- a/source/test/intltest/apicoll.cpp
+++ b/source/test/intltest/apicoll.cpp
@@ -1,6 +1,6 @@
/********************************************************************
* COPYRIGHT:
- * Copyright (c) 1997-2014, International Business Machines Corporation and
+ * Copyright (c) 1997-2015, International Business Machines Corporation and
* others. All Rights Reserved.
********************************************************************/
//===============================================================================
@@ -191,6 +191,7 @@ CollationAPITest::TestProperty(/* char* par */)
doAssert((col->getStrength() == Collator::TERTIARY), "collation object's strength is not tertiary difference");
doAssert((col->getStrength() != Collator::PRIMARY), "collation object's strength is primary difference");
doAssert((col->getStrength() != Collator::SECONDARY), "collation object's strength is secondary difference");
+ delete col;
logln("Create junk collation: ");
Locale abcd("ab", "CD", "");
@@ -201,26 +202,15 @@ CollationAPITest::TestProperty(/* char* par */)
if (U_FAILURE(success))
{
errln("Junk collation creation failed, should at least return default.");
- delete col;
- return;
- }
-
- delete col;
- col = Collator::createInstance(success);
- if (U_FAILURE(success))
- {
- errln("Creating default collator failed.");
- delete junk;
return;
}
- doAssert(((RuleBasedCollator *)col)->getRules() == ((RuleBasedCollator *)junk)->getRules(),
- "The default collation should be returned.");
+ doAssert(((RuleBasedCollator *)junk)->getRules().isEmpty(),
+ "The root collation should be returned for an unsupported language.");
Collator *frCol = Collator::createInstance(Locale::getCanadaFrench(), success);
if (U_FAILURE(success))
{
errln("Creating fr_CA collator failed.");
- delete col;
delete junk;
return;
}
@@ -234,7 +224,6 @@ CollationAPITest::TestProperty(/* char* par */)
doAssert((*frCol == *aFrCol), "The cloning of a fr_CA collator failed.");
logln("Collator property test ended.");
- delete col;
delete frCol;
delete aFrCol;
delete junk;
@@ -1008,9 +997,6 @@ CollationAPITest::TestCompare(/* char* par */)
void
CollationAPITest::TestGetAll(/* char* par */)
{
- if (logKnownIssue("10774","Side effects from utility/LocaleTest/TestGetLocale")) {
- return;
- }
int32_t count1, count2;
UErrorCode status = U_ZERO_ERROR;
@@ -1551,7 +1537,10 @@ void CollationAPITest::TestVariableTopSetting() {
status = U_ZERO_ERROR;
vt[0] = 0x24; // dollar sign (currency symbol)
uint32_t newVarTop = coll->setVariableTop(vt, 1, status);
-
+ if(U_FAILURE(status)) {
+ errln("setVariableTop(dollar sign) failed: %s", u_errorName(status));
+ return;
+ }
if(newVarTop != coll->getVariableTop(status)) {
errln("setVariableTop(dollar sign) != following getVariableTop()");
}
@@ -1707,28 +1696,23 @@ void CollationAPITest::TestGetLocale() {
delete coll;
}
- /* completely non-existant locale for collator should get a default collator */
+ /* completely non-existent locale for collator should get a root collator */
{
- Collator *defaultColl = Collator::createInstance((const Locale)NULL, status);
- coll = Collator::createInstance("blahaha", status);
+ LocalPointer<Collator> coll(Collator::createInstance("blahaha", status));
if(U_FAILURE(status)) {
errln("Failed to open collator with %s", u_errorName(status));
- delete coll;
- delete defaultColl;
return;
}
- if(coll->getLocale(ULOC_VALID_LOCALE, status) !=
- defaultColl->getLocale(ULOC_VALID_LOCALE, status)) {
- errln("Valid locale for nonexisting locale locale collator differs "
- "from valid locale for default collator");
+ Locale valid = coll->getLocale(ULOC_VALID_LOCALE, status);
+ const char *name = valid.getName();
+ if(*name != 0 && strcmp(name, "root") != 0) {
+ errln("Valid locale for nonexisting-locale collator is \"%s\" not root", name);
}
- if(coll->getLocale(ULOC_ACTUAL_LOCALE, status) !=
- defaultColl->getLocale(ULOC_ACTUAL_LOCALE, status)) {
- errln("Actual locale for nonexisting locale locale collator differs "
- "from actual locale for default collator");
+ Locale actual = coll->getLocale(ULOC_ACTUAL_LOCALE, status);
+ name = actual.getName();
+ if(*name != 0 && strcmp(name, "root") != 0) {
+ errln("Actual locale for nonexisting-locale collator is \"%s\" not root", name);
}
- delete coll;
- delete defaultColl;
}
« no previous file with comments | « source/test/intltest/alphaindextst.cpp ('k') | source/test/intltest/bidiconf.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698