| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| part "../../../sdk/lib/io/base64.dart"; |
| |
| void main() { |
| String line; |
| String expected; |
| |
| line = |
| "Man is distinguished, not only by his reason, but by this singular " |
| "passion from other animals, which is a lust of the mind, that by a " |
| "perseverance of delight in the continued and indefatigable generation " |
| "of knowledge, exceeds the short vehemence of any carnal pleasure."; |
| expected = |
| "TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbm" |
| "x5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz\r\n" |
| "IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlci" |
| "BhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg\r\n" |
| "dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcm" |
| "FuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu\r\n" |
| "dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYX" |
| "Rpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo\r\n" |
| "ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm" |
| "5hbCBwbGVhc3VyZS4="; |
| Expect.equals(expected, _Base64._encode(line.charCodes)); |
| Expect.listEquals(line.charCodes, _Base64._decode(expected)); |
| |
| line = "Simple string"; |
| expected = "U2ltcGxlIHN0cmluZw=="; |
| Expect.equals(expected, _Base64._encode(line.charCodes)); |
| Expect.listEquals(line.charCodes, _Base64._decode(expected)); |
| |
| for (int i = 0; i < 256; i++) { |
| List<int> x = [i]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 255; i++) { |
| List<int> x = [i, i + 1]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 254; i++) { |
| List<int> x = [i, i + 1, i + 2]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 253; i++) { |
| List<int> x = [i, i + 1, i + 2, i + 3]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 252; i++) { |
| List<int> x = [i, i + 1, i + 2, i + 3, i + 4]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 251; i++) { |
| List<int> x = [i, i + 1, i + 2, i + 3, i + 4, i + 5]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| |
| for (int i = 0; i < 250; i++) { |
| List<int> x = [i, i + 1, i + 2, i + 3, i + 4, i + 5, i + 6]; |
| Expect.listEquals(x, _Base64._decode(_Base64._encode(x))); |
| } |
| } |