padding tests

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38603 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2015-06-08 07:45:14 +00:00
parent d187e70974
commit 8418d1f6eb

View file

@ -41,11 +41,28 @@ int main()
PASS_EQUAL(data, ref, "base64 decoding vector 6")
[data release];
data = [[NSData alloc] initWithBase64EncodedString: @"Zm9vYmE==" options: 0];
ref = [NSData dataWithBytes: "fooba" length: 5];
PASS_EQUAL(data, ref, "base64 decoding vector 6 with 1 extra padding")
[data release];
data = [[NSData alloc] initWithBase64EncodedString: @"Zm9vYmE====="
options: 0];
ref = [NSData dataWithBytes: "fooba" length: 5];
PASS_EQUAL(data, ref, "base64 decoding vector 6 with 4 extra padding")
[data release];
data = [[NSData alloc] initWithBase64EncodedString: @"Zm9vYmFy" options: 0];
ref = [NSData dataWithBytes: "foobar" length: 6];
PASS_EQUAL(data, ref, "base64 decoding vector 7")
[data release];
data = [[NSData alloc] initWithBase64EncodedString: @"Zm9vYmFy====="
options: 0];
ref = [NSData dataWithBytes: "foobar\0" length: 7];
PASS_EQUAL(data, ref, "base64 decoding excess padding gives single nul byte")
[data release];
data = [[NSData alloc] initWithBase64EncodedString: @"Zm9v YmFy" options: 0];
PASS_EQUAL(data, nil, "base64 decoding with space returns nil")
[data release];