Fixes a bug in testHasSuffix, adds test cases for hasSuffix and hasPrefix.

This commit is contained in:
Ross Boucher committed 2009-11-09 13:11:04 +01:00
1 parent 0c24a60bac
commit 229debc2b7
2 files changed
+25 -1

No files matched your search

+1 -1
View File
@@ -510,7 +510,7 @@ var CPStringRegexSpecialCharacters = [
*/
- (BOOL)hasSuffix:(CPString)aString
{
return aString && aString != "" && lastIndexOf(aString) == (length - aString.length);
return aString && aString != "" && length >= aString.length && lastIndexOf(aString) == (length - aString.length);
}
/*!
+24
View File
@@ -233,4 +233,28 @@
[self assert:testStrings[i][1] equals:[testStrings[i][0] lastPathComponent]];
}
- (void)testHasPrefix
{
[self assertTrue: ["abc" hasPrefix:"a"]];
[self assertTrue: ["abc" hasPrefix:"ab"]];
[self assertTrue: ["abc" hasPrefix:"abc"]];
[self assertFalse:["abc" hasPrefix:"abcd"]];
[self assertFalse:["abc" hasPrefix:"dbc"]];
[self assertFalse:["abc" hasPrefix:"bc"]];
[self assertFalse:["abc" hasPrefix:"c"]];
[self assertFalse:["abc" hasPrefix:""]];
}
- (void)testHasSuffix
{
[self assertTrue: ["abc" hasSuffix:"c"]];
[self assertTrue: ["abc" hasSuffix:"bc"]];
[self assertTrue: ["abc" hasSuffix:"abc"]];
[self assertFalse:["abc" hasSuffix:"abcd"]];
[self assertFalse:["abc" hasSuffix:"ab"]];
[self assertFalse:["abc" hasSuffix:"b"]];
[self assertFalse:["abc" hasSuffix:"cat"]];
[self assertFalse:["abc" hasSuffix:""]];
}
@end