a few bom generation checks

This commit is contained in:
Richard Frith-Macdonald 2021-04-13 17:36:46 -04:00
parent 843800d413
commit 67faee95f9

View file

@ -37,11 +37,22 @@ int main(int argc, char **argv)
NSData *data;
contents = [NSString stringWithContentsOfFile: file];
PASS([contents hasPrefix:@"This"], "stringWithContentsOfFile: UTF-8 BOM");
PASS([contents hasPrefix: @"This"], "stringWithContentsOfFile: UTF-8 BOM");
data = [NSData dataWithContentsOfFile: file];
contents = [[[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding] autorelease];
PASS([contents hasPrefix:@"This"], "initWithData:encoding: UTF-8 BOM");
PASS([contents hasPrefix: @"This"], "initWithData:encoding: UTF-8 BOM");
data = [@"a" dataUsingEncoding: NSUTF8StringEncoding];
PASS([data length] == 1, "utf8 data no bom")
data = [@"a" dataUsingEncoding: NSUnicodeStringEncoding];
PASS([data length] == 4, "unicode data has bom")
data = [@"a" dataUsingEncoding: NSUTF16BigEndianStringEncoding];
PASS([data length] == 2, "utf16 big endian data no bom")
data = [@"a" dataUsingEncoding: NSUTF16LittleEndianStringEncoding];
PASS([data length] == 2, "utf16 little endian data no bom")
data = [@"a" dataUsingEncoding: NSUTF16StringEncoding];
PASS([data length] == 4, "utf16 data has bom")
[pool release];
return 0;