Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(298)

Side by Side Diff: pkg/yaml/test/yaml_test.dart

Issue 274953002: Bring the YAML package's style up to modern standards. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« pkg/yaml/pubspec.yaml ('K') | « pkg/yaml/pubspec.yaml ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library yaml_test; 5 library yaml.test;
6 6
7 // TODO(rnystrom): rewrite tests so that they don't need "Expect". 7 // TODO(rnystrom): rewrite tests so that they don't need "Expect".
8 import "package:expect/expect.dart";
9 import 'package:unittest/unittest.dart'; 8 import 'package:unittest/unittest.dart';
10 import 'package:yaml/yaml.dart'; 9 import 'package:yaml/yaml.dart';
11 import 'package:yaml/src/deep_equals.dart';
12 // TODO(jmesserly): we should not be reaching outside the YAML package
13 // The http package has a similar problem.
14 import '../../../tests/utils/test_utils.dart';
15 10
16 /// Constructs a new yaml.YamlMap, optionally from a normal Map. 11 import 'utils.dart';
Bob Nystrom 2014/05/09 00:18:56 Is this a new file? I don't see it in the patch.
nweiz 2014/05/20 00:15:07 Oops, added.
17 Map yamlMap([Map from]) =>
18 from == null ? new YamlMap() : new YamlMap.from(from);
19
20 /// Asserts that a string containing a single YAML document produces a given
21 /// value when loaded.
22 expectYamlLoads(expected, String source) {
23 var actual = loadYaml(cleanUpLiteral(source));
24 Expect.isTrue(deepEquals(expected, actual),
25 'expectYamlLoads(expected: <$expected>, actual: <$actual>)');
26 }
27
28 /// Asserts that a string containing a stream of YAML documents produces a given
29 /// list of values when loaded.
30 expectYamlStreamLoads(List expected, String source) {
31 var actual = loadYamlStream(cleanUpLiteral(source));
32 Expect.isTrue(deepEquals(expected, actual),
33 'expectYamlStreamLoads(expected: <$expected>, actual: <$actual>)');
34 }
35 12
36 main() { 13 main() {
37 var infinity = double.parse("Infinity"); 14 var infinity = double.parse("Infinity");
38 var nan = double.parse("NaN"); 15 var nan = double.parse("NaN");
39 16
40 group('YamlMap', () { 17 group('YamlMap', () {
41 group('accepts as a key', () { 18 group('accepts as a key', () {
42 _expectKeyWorks(keyFn()) { 19 _expectKeyWorks(keyFn()) {
43 var map = yamlMap(); 20 var map = yamlMap();
44 map[keyFn()] = 5; 21 map[keyFn()] = 5;
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 } 470 }
494 471
495 expectAllowsQuotedCharacter(int charCode) { 472 expectAllowsQuotedCharacter(int charCode) {
496 var char = new String.fromCharCodes([charCode]); 473 var char = new String.fromCharCodes([charCode]);
497 expectYamlLoads("The character '$char' is allowed", 474 expectYamlLoads("The character '$char' is allowed",
498 '"The character \'$char\' is allowed"'); 475 '"The character \'$char\' is allowed"');
499 } 476 }
500 477
501 expectDisallowsCharacter(int charCode) { 478 expectDisallowsCharacter(int charCode) {
502 var char = new String.fromCharCodes([charCode]); 479 var char = new String.fromCharCodes([charCode]);
503 Expect.throws(() => loadYaml('The character "$char" is disallowed')); 480 expectYamlFails('The character "$char" is disallowed');
504 } 481 }
505 482
506 test("doesn't include C0 control characters", () { 483 test("doesn't include C0 control characters", () {
507 expectDisallowsCharacter(0x0); 484 expectDisallowsCharacter(0x0);
508 expectDisallowsCharacter(0x8); 485 expectDisallowsCharacter(0x8);
509 expectDisallowsCharacter(0x1F); 486 expectDisallowsCharacter(0x1F);
510 }); 487 });
511 488
512 test("includes TAB", () => expectAllowsCharacter(0x9)); 489 test("includes TAB", () => expectAllowsCharacter(0x9));
513 test("doesn't include DEL", () => expectDisallowsCharacter(0x7F)); 490 test("doesn't include DEL", () => expectDisallowsCharacter(0x7F));
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
591 }); 568 });
592 569
593 // test('[Example 5.9]', () { 570 // test('[Example 5.9]', () {
594 // expectYamlLoads("text", 571 // expectYamlLoads("text",
595 // """ 572 // """
596 // %YAML 1.2 573 // %YAML 1.2
597 // --- text"""); 574 // --- text""");
598 // }); 575 // });
599 576
600 test('[Example 5.10]', () { 577 test('[Example 5.10]', () {
601 Expect.throws(() => loadYaml("commercial-at: @text")); 578 expectYamlFails("commercial-at: @text");
602 Expect.throws(() => loadYaml("commercial-at: `text")); 579 expectYamlFails("commercial-at: `text");
603 }); 580 });
604 }); 581 });
605 582
606 group('5.4: Line Break Characters', () { 583 group('5.4: Line Break Characters', () {
607 group('include', () { 584 group('include', () {
608 test('\\n', () => expectYamlLoads([1, 2], indentLiteral("- 1\n- 2"))); 585 test('\\n', () => expectYamlLoads([1, 2], indentLiteral("- 1\n- 2")));
609 test('\\r', () => expectYamlLoads([1, 2], "- 1\r- 2")); 586 test('\\r', () => expectYamlLoads([1, 2], "- 1\r- 2"));
610 }); 587 });
611 588
612 group('do not include', () { 589 group('do not include', () {
613 test('form feed', () => Expect.throws(() => loadYaml("- 1\x0C- 2"))); 590 test('form feed', () => expectYamlFails("- 1\x0C- 2"));
614 test('NEL', () => expectYamlLoads(["1\x85- 2"], "- 1\x85- 2")); 591 test('NEL', () => expectYamlLoads(["1\x85- 2"], "- 1\x85- 2"));
615 test('0x2028', () => expectYamlLoads(["1\u2028- 2"], "- 1\u2028- 2")); 592 test('0x2028', () => expectYamlLoads(["1\u2028- 2"], "- 1\u2028- 2"));
616 test('0x2029', () => expectYamlLoads(["1\u2029- 2"], "- 1\u2029- 2")); 593 test('0x2029', () => expectYamlLoads(["1\u2029- 2"], "- 1\u2029- 2"));
617 }); 594 });
618 595
619 group('in a scalar context must be normalized', () { 596 group('in a scalar context must be normalized', () {
620 test("from \\r to \\n", () => 597 test("from \\r to \\n", () =>
621 expectYamlLoads(["foo\nbar"], indentLiteral('- |\n foo\r bar'))); 598 expectYamlLoads(["foo\nbar"], indentLiteral('- |\n foo\r bar')));
622 test("from \\r\\n to \\n", () => 599 test("from \\r\\n to \\n", () =>
623 expectYamlLoads(["foo\nbar"], indentLiteral('- |\n foo\r\n bar'))) ; 600 expectYamlLoads(["foo\nbar"], indentLiteral('- |\n foo\r\n bar'))) ;
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
662 "A A A", 639 "A A A",
663 ''' 640 '''
664 "Fun with \\\\ 641 "Fun with \\\\
665 \\" \\a \\b \\e \\f \\ 642 \\" \\a \\b \\e \\f \\
666 \\n \\r \\t \\v \\0 \\ 643 \\n \\r \\t \\v \\0 \\
667 \\ \\_ \\N \\L \\P \\ 644 \\ \\_ \\N \\L \\P \\
668 \\x41 \\u0041 \\U00000041"'''); 645 \\x41 \\u0041 \\U00000041"''');
669 }); 646 });
670 647
671 test('[Example 5.14]', () { 648 test('[Example 5.14]', () {
672 Expect.throws(() => loadYaml('Bad escape: "\\c"')); 649 expectYamlFails('Bad escape: "\\c"');
673 Expect.throws(() => loadYaml('Bad escape: "\\xq-"')); 650 expectYamlFails('Bad escape: "\\xq-"');
674 }); 651 });
675 }); 652 });
676 653
677 // Chapter 6: Basic Structures 654 // Chapter 6: Basic Structures
678 group('6.1: Indentation Spaces', () { 655 group('6.1: Indentation Spaces', () {
679 test('may not include TAB characters', () { 656 test('may not include TAB characters', () {
680 Expect.throws(() => loadYaml(cleanUpLiteral( 657 expectYamlFails(
681 """ 658 """
682 - 659 -
683 \t- foo 660 \t- foo
684 \t- bar"""))); 661 \t- bar""");
685 }); 662 });
686 663
687 test('must be the same for all sibling nodes', () { 664 test('must be the same for all sibling nodes', () {
688 Expect.throws(() => loadYaml(cleanUpLiteral( 665 expectYamlFails(
689 """ 666 """
690 - 667 -
691 - foo 668 - foo
692 - bar"""))); 669 - bar""");
693 }); 670 });
694 671
695 test('may be different for the children of sibling nodes', () { 672 test('may be different for the children of sibling nodes', () {
696 expectYamlLoads([["foo"], ["bar"]], 673 expectYamlLoads([["foo"], ["bar"]],
697 """ 674 """
698 - 675 -
699 - foo 676 - foo
700 - 677 -
701 - bar"""); 678 - bar""");
702 }); 679 });
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
909 - | # comment 886 - | # comment
910 # not comment 887 # not comment
911 foo 888 foo
912 """); 889 """);
913 }); 890 });
914 }); 891 });
915 }); 892 });
916 893
917 group('6.7: Separation Lines', () { 894 group('6.7: Separation Lines', () {
918 test('may not be used within implicit keys', () { 895 test('may not be used within implicit keys', () {
919 Expect.throws(() => loadYaml(cleanUpLiteral( 896 expectYamlFails(
920 """ 897 """
921 [1, 898 [1,
922 2]: 3"""))); 899 2]: 3""");
923 }); 900 });
924 901
925 test('[Example 6.12]', () { 902 test('[Example 6.12]', () {
926 var doc = yamlMap(); 903 var doc = yamlMap();
927 doc[{'first': 'Sammy', 'last': 'Sosa'}] = { 904 doc[{'first': 'Sammy', 'last': 'Sosa'}] = {
928 'hr': 65, 905 'hr': 65,
929 'avg': 0.278 906 'avg': 0.278
930 }; 907 };
931 expectYamlLoads(doc, 908 expectYamlLoads(doc,
932 """ 909 """
(...skipping 20 matching lines...) Expand all
953 // test('[Example 6.14]', () { 930 // test('[Example 6.14]', () {
954 // expectYamlLoads("foo", 931 // expectYamlLoads("foo",
955 // ''' 932 // '''
956 // %YAML 1.3 # Attempt parsing 933 // %YAML 1.3 # Attempt parsing
957 // # with a warning 934 // # with a warning
958 // --- 935 // ---
959 // "foo"'''); 936 // "foo"''');
960 // }); 937 // });
961 938
962 // test('[Example 6.15]', () { 939 // test('[Example 6.15]', () {
963 // Expect.throws(() => loadYaml(cleanUpLiteral( 940 // expectYamlFails(
964 // """ 941 // """
965 // %YAML 1.2 942 // %YAML 1.2
966 // %YAML 1.1 943 // %YAML 1.1
967 // foo"""))); 944 // foo""");
968 // }); 945 // });
969 946
970 // test('[Example 6.16]', () { 947 // test('[Example 6.16]', () {
971 // expectYamlLoads("foo", 948 // expectYamlLoads("foo",
972 // ''' 949 // '''
973 // %TAG !yaml! tag:yaml.org,2002: 950 // %TAG !yaml! tag:yaml.org,2002:
974 // --- 951 // ---
975 // !yaml!str "foo"'''); 952 // !yaml!str "foo"''');
976 // }); 953 // });
977 954
978 // test('[Example 6.17]', () { 955 // test('[Example 6.17]', () {
979 // Expect.throws(() => loadYaml(cleanUpLiteral( 956 // ExpectYamlFails(
980 // """ 957 // """
981 // %TAG ! !foo 958 // %TAG ! !foo
982 // %TAG ! !foo 959 // %TAG ! !foo
983 // bar"""))); 960 // bar""");
984 // }); 961 // });
985 962
986 // Examples 6.18 through 6.22 test custom tag URIs, which this 963 // Examples 6.18 through 6.22 test custom tag URIs, which this
987 // implementation currently doesn't plan to support. 964 // implementation currently doesn't plan to support.
988 }); 965 });
989 966
990 group('6.9: Node Properties', () { 967 group('6.9: Node Properties', () {
991 // test('may be specified in any order', () { 968 // test('may be specified in any order', () {
992 // expectYamlLoads(["foo", "bar"], 969 // expectYamlLoads(["foo", "bar"],
993 // """ 970 // """
994 // - !!str &a1 foo 971 // - !!str &a1 foo
995 // - &a2 !!str bar"""); 972 // - &a2 !!str bar""");
996 // }); 973 // });
997 974
998 // test('[Example 6.23]', () { 975 // test('[Example 6.23]', () {
999 // expectYamlLoads({ 976 // expectYamlLoads({
1000 // "foo": "bar", 977 // "foo": "bar",
1001 // "baz": "foo" 978 // "baz": "foo"
1002 // }, 979 // },
1003 // ''' 980 // '''
1004 // !!str &a1 "foo": 981 // !!str &a1 "foo":
1005 // !!str bar 982 // !!str bar
1006 // &a2 baz : *a1'''); 983 // &a2 baz : *a1''');
1007 // }); 984 // });
1008 985
1009 // // Example 6.24 tests custom tag URIs, which this implementation currentl y 986 // // Example 6.24 tests custom tag URIs, which this implementation currentl y
1010 // // doesn't plan to support. 987 // // doesn't plan to support.
1011 988
1012 // test('[Example 6.25]', () { 989 // test('[Example 6.25]', () {
1013 // Expect.throws(() => loadYaml("- !<!> foo")); 990 // expectYamlFails("- !<!> foo");
1014 // Expect.throws(() => loadYaml("- !<\$:?> foo")); 991 // expectYamlFails("- !<\$:?> foo");
1015 // }); 992 // });
1016 993
1017 // // Examples 6.26 and 6.27 test custom tag URIs, which this implementation 994 // // Examples 6.26 and 6.27 test custom tag URIs, which this implementation
1018 // // currently doesn't plan to support. 995 // // currently doesn't plan to support.
1019 996
1020 // test('[Example 6.28]', () { 997 // test('[Example 6.28]', () {
1021 // expectYamlLoads(["12", 12, "12"], 998 // expectYamlLoads(["12", 12, "12"],
1022 // ''' 999 // '''
1023 // # Assuming conventional resolution: 1000 // # Assuming conventional resolution:
1024 // - "12" 1001 // - "12"
1025 // - 12 1002 // - 12
1026 // - ! 12'''); 1003 // - ! 12''');
1027 // }); 1004 // });
1028 1005
1029 // test('[Example 6.29]', () { 1006 // test('[Example 6.29]', () {
1030 // expectYamlLoads({ 1007 // expectYamlLoads({
1031 // "First occurrence": "Value", 1008 // "First occurrence": "Value",
1032 // "Second occurrence": "anchor" 1009 // "Second occurrence": "anchor"
1033 // }, 1010 // },
1034 // """ 1011 // """
1035 // First occurrence: &anchor Value 1012 // First occurrence: &anchor Value
1036 // Second occurrence: *anchor"""); 1013 // Second occurrence: *anchor""");
1037 // }); 1014 // });
1038 }); 1015 });
1039 1016
1040 // Chapter 7: Flow Styles 1017 // Chapter 7: Flow Styles
1041 group('7.1: Alias Nodes', () { 1018 group('7.1: Alias Nodes', () {
1042 // test("must not use an anchor that doesn't previously occur", () { 1019 // test("must not use an anchor that doesn't previously occur", () {
1043 // Expect.throws(() => loadYaml(cleanUpLiteral( 1020 // expectYamlFails(
1044 // """ 1021 // """
1045 // - *anchor 1022 // - *anchor
1046 // - &anchor foo""")); 1023 // - &anchor foo""");
1047 // }); 1024 // });
1048 1025
1049 // test("don't have to exist for a given anchor node", () { 1026 // test("don't have to exist for a given anchor node", () {
1050 // expectYamlLoads(["foo"], "- &anchor foo"); 1027 // expectYamlLoads(["foo"], "- &anchor foo");
1051 // }); 1028 // });
1052 1029
1053 // group('must not specify', () { 1030 // group('must not specify', () {
1054 // test('tag properties', () => Expect.throws(() => loadYaml(cleanUpLitera l( 1031 // test('tag properties', () => expectYamlFails(
1055 // """ 1032 // """
1056 // - &anchor foo 1033 // - &anchor foo
1057 // - !str *anchor"""))); 1034 // - !str *anchor""");
1058 1035
1059 // test('anchor properties', () => Expect.throws( 1036 // test('anchor properties', () => expectYamlFails(
1060 // () => loadYaml(cleanUpLiteral(
1061 // """ 1037 // """
1062 // - &anchor foo 1038 // - &anchor foo
1063 // - &anchor2 *anchor"""))); 1039 // - &anchor2 *anchor""");
1064 1040
1065 // test('content', () => Expect.throws(() => loadYaml(cleanUpLiteral( 1041 // test('content', () => expectYamlFails(
1066 // """ 1042 // """
1067 // - &anchor foo 1043 // - &anchor foo
1068 // - *anchor bar"""))); 1044 // - *anchor bar""")));
1069 // }); 1045 // });
1070 1046
1071 // test('must preserve structural equality', () { 1047 // test('must preserve structural equality', () {
1072 // var doc = loadYaml(cleanUpLiteral( 1048 // var doc = loadYaml(cleanUpLiteral(
1073 // """ 1049 // """
1074 // anchor: &anchor [a, b, c] 1050 // anchor: &anchor [a, b, c]
1075 // alias: *anchor"""); 1051 // alias: *anchor""");
1076 // var anchorList = doc['anchor']; 1052 // var anchorList = doc['anchor'];
1077 // var aliasList = doc['alias']; 1053 // var aliasList = doc['alias'];
1078 // Expect.isTrue(anchorList === aliasList); 1054 // expect(anchorList, same(aliasList));
1079 // anchorList.add('d');
1080 // Expect.listEquals(['a', 'b', 'c', 'd'], aliasList);
1081 1055
1082 // doc = loadYaml(cleanUpLiteral( 1056 // doc = loadYaml(cleanUpLiteral(
1083 // """ 1057 // """
1084 // ? &anchor [a, b, c] 1058 // ? &anchor [a, b, c]
1085 // : ? *anchor 1059 // : ? *anchor
1086 // : bar"""); 1060 // : bar""");
1087 // anchorList = doc.keys[0]; 1061 // anchorList = doc.keys[0];
1088 // aliasList = doc[['a', 'b', 'c']].keys[0]; 1062 // aliasList = doc[['a', 'b', 'c']].keys[0];
1089 // Expect.isTrue(anchorList === aliasList); 1063 // expect(anchorList, same(aliasList));
1090 // anchorList.add('d');
1091 // Expect.listEquals(['a', 'b', 'c', 'd'], aliasList);
1092 // }); 1064 // });
1093 1065
1094 // test('[Example 7.1]', () { 1066 // test('[Example 7.1]', () {
1095 // expectYamlLoads({ 1067 // expectYamlLoads({
1096 // "First occurence": "Foo", 1068 // "First occurence": "Foo",
1097 // "Second occurence": "Foo", 1069 // "Second occurence": "Foo",
1098 // "Override anchor": "Bar", 1070 // "Override anchor": "Bar",
1099 // "Reuse anchor": "Bar", 1071 // "Reuse anchor": "Bar",
1100 // }, 1072 // },
1101 // """ 1073 // """
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
1337 el2[{"JSON": "like"}] = "adjacent"; 1309 el2[{"JSON": "like"}] = "adjacent";
1338 1310
1339 expectYamlLoads([[{"YAML": "separate"}], [el1], [el2]], 1311 expectYamlLoads([[{"YAML": "separate"}], [el1], [el2]],
1340 """ 1312 """
1341 - [ YAML : separate ] 1313 - [ YAML : separate ]
1342 - [ : empty key entry ] 1314 - [ : empty key entry ]
1343 - [ {JSON: like}:adjacent ]"""); 1315 - [ {JSON: like}:adjacent ]""");
1344 }); 1316 });
1345 1317
1346 test('[Example 7.22]', () { 1318 test('[Example 7.22]', () {
1347 Expect.throws(() => loadYaml(cleanUpLiteral( 1319 expectYamlFails(
1348 """ 1320 """
1349 [ foo 1321 [ foo
1350 bar: invalid ]"""))); 1322 bar: invalid ]""");
1351 1323
1352 // TODO(nweiz): enable this when we throw an error for long keys 1324 // TODO(nweiz): enable this when we throw an error for long keys
1353 // var dotList = new List.filled(1024, ' '); 1325 // var dotList = new List.filled(1024, ' ');
1354 // var dots = dotList.join(); 1326 // var dots = dotList.join();
1355 // Expect.throws(() => loadYaml('[ "foo...$dots...bar": invalid ]')); 1327 // expectYamlFails('[ "foo...$dots...bar": invalid ]');
1356 }); 1328 });
1357 }); 1329 });
1358 1330
1359 group('7.5: Flow Nodes', () { 1331 group('7.5: Flow Nodes', () {
1360 test('[Example 7.23]', () { 1332 test('[Example 7.23]', () {
1361 expectYamlLoads([["a", "b"], {"a": "b"}, "a", "b", "c"], 1333 expectYamlLoads([["a", "b"], {"a": "b"}, "a", "b", "c"],
1362 """ 1334 """
1363 - [ a, b ] 1335 - [ a, b ]
1364 - { a: b } 1336 - { a: b }
1365 - "a" 1337 - "a"
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
1414 # detected 1386 # detected
1415 - |1 1387 - |1
1416 explicit 1388 explicit
1417 - > 1389 - >
1418 \t 1390 \t
1419 detected 1391 detected
1420 """); 1392 """);
1421 }); 1393 });
1422 1394
1423 test('[Example 8.3]', () { 1395 test('[Example 8.3]', () {
1424 Expect.throws(() => loadYaml(cleanUpLiteral( 1396 expectYamlFails(
1425 """ 1397 """
1426 - | 1398 - |
1427 1399
1428 text"""))); 1400 text""");
1429 1401
1430 Expect.throws(() => loadYaml(cleanUpLiteral( 1402 expectYamlFails(
1431 """ 1403 """
1432 - > 1404 - >
1433 text 1405 text
1434 text"""))); 1406 text""");
1435 1407
1436 Expect.throws(() => loadYaml(cleanUpLiteral( 1408 expectYamlFails(
1437 """ 1409 """
1438 - |2 1410 - |2
1439 text"""))); 1411 text""");
1440 }); 1412 });
1441 1413
1442 test('[Example 8.4]', () { 1414 test('[Example 8.4]', () {
1443 expectYamlLoads({"strip": "text", "clip": "text\n", "keep": "text\n"}, 1415 expectYamlLoads({"strip": "text", "clip": "text\n", "keep": "text\n"},
1444 """ 1416 """
1445 strip: |- 1417 strip: |-
1446 text 1418 text
1447 clip: | 1419 clip: |
1448 text 1420 text
1449 keep: |+ 1421 keep: |+
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after
1871 A null: null 1843 A null: null
1872 Also a null: # Empty 1844 Also a null: # Empty
1873 Not a null: "" 1845 Not a null: ""
1874 Booleans: [ true, True, false, FALSE ] 1846 Booleans: [ true, True, false, FALSE ]
1875 Integers: [ 0, 0o7, 0x3A, -19 ] 1847 Integers: [ 0, 0o7, 0x3A, -19 ]
1876 Floats: [ 0., -0.0, .5, +12e03, -2E+05 ] 1848 Floats: [ 0., -0.0, .5, +12e03, -2E+05 ]
1877 Also floats: [ .inf, -.Inf, +.INF, .NAN ]'''); 1849 Also floats: [ .inf, -.Inf, +.INF, .NAN ]''');
1878 }); 1850 });
1879 }); 1851 });
1880 } 1852 }
OLDNEW
« pkg/yaml/pubspec.yaml ('K') | « pkg/yaml/pubspec.yaml ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698