Author: rmottola
Date: Sun Jun 14 19:34:18 2015
New Revision: 38635

URL: http://svn.gna.org/viewcvs/gnustep?rev=38635&view=rev
Log:
some base64 tests

Modified:
    libs/base/trunk/Tests/base/NSData/base64.m

Modified: libs/base/trunk/Tests/base/NSData/base64.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Tests/base/NSData/base64.m?rev=38635&r1=38634&r2=38635&view=diff
==============================================================================
--- libs/base/trunk/Tests/base/NSData/base64.m  (original)
+++ libs/base/trunk/Tests/base/NSData/base64.m  Sun Jun 14 19:34:18 2015
@@ -7,6 +7,9 @@
   NSAutoreleasePool   *arp = [NSAutoreleasePool new];
   NSData        *data;
   NSData        *ref;
+  NSString      *str1;
+  NSString      *str2;
+  NSString      *strEnc;
 
   PASS_EXCEPTION([[NSData alloc] initWithBase64EncodedString: nil options: 0],
     NSInvalidArgumentException, "nil argument causes exception");
@@ -73,6 +76,46 @@
   PASS_EQUAL(data, ref, "base64 decoding vector 8")
   [data release];
 
+  str1 = @"In principio creavit Deus caelum et terram.\nTerra autem erat 
inanis et vacua, et tenebrae super faciem abyssi, et spiritus Dei ferebatur 
super aquas.\nDixitque Deus: \"Fiat lux\". Et facta est lux.";
+  data = [str1 dataUsingEncoding:NSASCIIStringEncoding];
+  strEnc = [data base64EncodedStringWithOptions:0];
+  data = [[NSData alloc] initWithBase64EncodedString:strEnc options: 0];
+  str2 = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
+  PASS_EQUAL(str1, str2, "Encode / Decode no lines")
+  [str2 release];
+
+  str1 = @"In principio creavit Deus caelum et terram.\nTerra autem erat 
inanis et vacua, et tenebrae super faciem abyssi, et spiritus Dei ferebatur 
super aquas.\nDixitque Deus: \"Fiat lux\". Et facta est lux.";
+  data = [str1 dataUsingEncoding:NSASCIIStringEncoding];
+  strEnc = [data 
base64EncodedStringWithOptions:(NSDataBase64Encoding64CharacterLineLength | 
NSDataBase64EncodingEndLineWithLineFeed)];
+  data = [[NSData alloc] initWithBase64EncodedString:strEnc options: 0];
+  str2 = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
+  PASS_EQUAL(str1, str2, "Encode / Decode 64 - LF")
+  [str2 release];
+
+  str1 = @"In principio creavit Deus caelum et terram.\nTerra autem erat 
inanis et vacua, et tenebrae super faciem abyssi, et spiritus Dei ferebatur 
super aquas.\nDixitque Deus: \"Fiat lux\". Et facta est lux.";
+  data = [str1 dataUsingEncoding:NSASCIIStringEncoding];
+  strEnc = [data 
base64EncodedStringWithOptions:(NSDataBase64Encoding76CharacterLineLength | 
NSDataBase64EncodingEndLineWithLineFeed)];
+  data = [[NSData alloc] initWithBase64EncodedString:strEnc options: 0];
+  str2 = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
+  PASS_EQUAL(str1, str2, "Encode / Decode 76 - LF")
+  [str2 release];
+
+  str1 = @"In principio creavit Deus caelum et terram.\nTerra autem erat 
inanis et vacua, et tenebrae super faciem abyssi, et spiritus Dei ferebatur 
super aquas.\nDixitque Deus: \"Fiat lux\". Et facta est lux.";
+  data = [str1 dataUsingEncoding:NSASCIIStringEncoding];
+  strEnc = [data 
base64EncodedStringWithOptions:(NSDataBase64Encoding64CharacterLineLength | 
NSDataBase64EncodingEndLineWithCarriageReturn)];
+  data = [[NSData alloc] initWithBase64EncodedString:strEnc options:0];
+  str2 = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
+  PASS_EQUAL(str1, str2, "Encode / Decode 64 - CR")
+  [str2 release];
+
+  str1 = @"In principio creavit Deus caelum et terram.\nTerra autem erat 
inanis et vacua, et tenebrae super faciem abyssi, et spiritus Dei ferebatur 
super aquas.\nDixitque Deus: \"Fiat lux\". Et facta est lux.";
+  data = [str1 dataUsingEncoding:NSASCIIStringEncoding];
+  strEnc = [data 
base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
+  data = [[NSData alloc] initWithBase64EncodedString:strEnc options:0];
+  str2 = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
+  PASS_EQUAL(str1, str2, "Encode / Decode 64 - implicit CR LF")
+  [str2 release];
+
   [arp release]; arp = nil;
   return 0;
 }


_______________________________________________
Gnustep-cvs mailing list
Gnustep-cvs@gna.org
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to