@@ -97,19 +97,27 @@ [@"cd" compare: @"bc"] == OF_ORDERED_DESCENDING && [@"ä" compare: @"ö"] == OF_ORDERED_ASCENDING && [@"€" compare: @"ß"] == OF_ORDERED_DESCENDING && [@"aa" compare: @"z"] == OF_ORDERED_ASCENDING) +#ifdef OF_HAVE_UNICODE_TABLES TEST(@"-[caseInsensitiveCompare:]", [@"a" caseInsensitiveCompare: @"A"] == OF_ORDERED_SAME && [@"Ä" caseInsensitiveCompare: @"ä"] == OF_ORDERED_SAME && [@"я" caseInsensitiveCompare: @"Я"] == OF_ORDERED_SAME && [@"€" caseInsensitiveCompare: @"ß"] == OF_ORDERED_DESCENDING && [@"ß" caseInsensitiveCompare: @"→"] == OF_ORDERED_ASCENDING && [@"AA" caseInsensitiveCompare: @"z"] == OF_ORDERED_ASCENDING && [[OFString stringWithUTF8String: "ABC"] caseInsensitiveCompare: [OFString stringWithUTF8String: "AbD"]] == [@"abc" compare: @"abd"]) +#else + TEST(@"-[caseInsensitiveCompare:]", + [@"a" caseInsensitiveCompare: @"A"] == OF_ORDERED_SAME && + [@"AA" caseInsensitiveCompare: @"z"] == OF_ORDERED_ASCENDING && + [[OFString stringWithUTF8String: "ABC"] caseInsensitiveCompare: + [OFString stringWithUTF8String: "AbD"]] == [@"abc" compare: @"abd"]) +#endif TEST(@"-[hash] is the same if -[isEqual:] is true", [s[0] hash] == [s[2] hash]) TEST(@"-[description]", [[s[0] description] isEqual: s[0]]) @@ -136,10 +144,11 @@ TEST(@"-[reverse]", R([s[0] reverse]) && [s[0] isEqual: @"3𝄞1€sät"]) s[1] = [OFMutableString stringWithString: @"abc"]; +#ifdef OF_HAVE_UNICODE_TABLES TEST(@"-[uppercase]", R([s[0] uppercase]) && [s[0] isEqual: @"3𝄞1€SÄT"] && R([s[1] uppercase]) && [s[1] isEqual: @"ABC"]) TEST(@"-[lowercase]", R([s[0] lowercase]) && @@ -152,10 +161,28 @@ TEST(@"-[lowercaseString]", R([s[0] uppercase]) && [[s[0] lowercaseString] isEqual: @"3𝄞1€sät"]) TEST(@"-[capitalizedString]", [[@"džbla tdžst TDŽST" capitalizedString] isEqual: @"Džbla Tdžst Tdžst"]) +#else + TEST(@"-[uppercase]", R([s[0] uppercase]) && + [s[0] isEqual: @"3𝄞1€SäT"] && + R([s[1] uppercase]) && [s[1] isEqual: @"ABC"]) + + TEST(@"-[lowercase]", R([s[0] lowercase]) && + [s[0] isEqual: @"3𝄞1€sät"] && + R([s[1] lowercase]) && [s[1] isEqual: @"abc"]) + + TEST(@"-[uppercaseString]", + [[s[0] uppercaseString] isEqual: @"3𝄞1€SäT"]) + + TEST(@"-[lowercaseString]", R([s[0] uppercase]) && + [[s[0] lowercaseString] isEqual: @"3𝄞1€sät"]) + + TEST(@"-[capitalizedString]", [[@"džbla tdžst TDŽST" capitalizedString] + isEqual: @"džbla Tdžst TDŽst"]) +#endif TEST(@"+[stringWithUTF8String:length:]", (s[0] = [OFMutableString stringWithUTF8String: "\xEF\xBB\xBF" "foobar" length: 6]) &&