| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | |
| 2 // for details. All rights reserved. Use of this source code is governed by a | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 // Test that different representations of the same string are all equal. | |
| 6 | |
| 7 import "dart:convert"; | |
| 8 | |
| 9 import "package:expect/expect.dart"; | |
| 10 | |
| 11 main() { | |
| 12 var base = "\u{10412}"; | |
| 13 var strings = [ | |
| 14 "\u{10412}", | |
| 15 "𐐒", | |
| 16 new String.fromCharCodes([0xd801, 0xdc12]), | |
| 17 base[0] + base[1], | |
| 18 "$base", | |
| 19 "${base[0]}${base[1]}", | |
| 20 "${base[0]}${base.substring(1)}", | |
| 21 new String.fromCharCodes([0x10412]), | |
| 22 ("a" + base).substring(1), | |
| 23 (new StringBuffer()..writeCharCode(0xd801)..writeCharCode(0xdc12)) | |
| 24 .toString(), | |
| 25 (new StringBuffer()..writeCharCode(0x10412)).toString(), | |
| 26 JSON.decode('"\u{10412}"'), | |
| 27 (JSON.decode('{"\u{10412}":[]}') as Map).keys.first | |
| 28 ]; | |
| 29 for (String string in strings) { | |
| 30 Expect.equals(base.length, string.length); | |
| 31 Expect.equals(base, string); | |
| 32 Expect.equals(base.hashCode, string.hashCode); | |
| 33 Expect.listEquals(base.codeUnits.toList(), string.codeUnits.toList()); | |
| 34 } | |
| 35 } | |
| OLD | NEW |