| Index: sdk/lib/_internal/pub/test/ascii_tree_test.dart
|
| diff --git a/sdk/lib/_internal/pub/test/ascii_tree_test.dart b/sdk/lib/_internal/pub/test/ascii_tree_test.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..96d81ee7bc53fe8180dfd6ecf8ccb68d18809a3b
|
| --- /dev/null
|
| +++ b/sdk/lib/_internal/pub/test/ascii_tree_test.dart
|
| @@ -0,0 +1,248 @@
|
| +// 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.
|
| +
|
| +library lock_file_test;
|
| +
|
| +import 'package:unittest/unittest.dart';
|
| +
|
| +import '../lib/src/ascii_tree.dart' as tree;
|
| +import '../lib/src/utils.dart';
|
| +
|
| +main() {
|
| + runningAsTest = true;
|
| +
|
| + group('tree.fromFiles', () {
|
| + test('no files', () {
|
| + expect(tree.fromFiles([]), equals(""));
|
| + });
|
| +
|
| + test('up to ten files in one directory are shown', () {
|
| + var files = [
|
| + "dir/a.dart",
|
| + "dir/b.dart",
|
| + "dir/c.dart",
|
| + "dir/d.dart",
|
| + "dir/e.dart",
|
| + "dir/f.dart",
|
| + "dir/g.dart",
|
| + "dir/h.dart",
|
| + "dir/i.dart",
|
| + "dir/j.dart"
|
| + ];
|
| + expect(tree.fromFiles(files), equals("""
|
| +'-- dir
|
| + |-- a.dart
|
| + |-- b.dart
|
| + |-- c.dart
|
| + |-- d.dart
|
| + |-- e.dart
|
| + |-- f.dart
|
| + |-- g.dart
|
| + |-- h.dart
|
| + |-- i.dart
|
| + '-- j.dart
|
| +"""));
|
| + });
|
| +
|
| + test('files are elided if there are more than ten', () {
|
| + var files = [
|
| + "dir/a.dart",
|
| + "dir/b.dart",
|
| + "dir/c.dart",
|
| + "dir/d.dart",
|
| + "dir/e.dart",
|
| + "dir/f.dart",
|
| + "dir/g.dart",
|
| + "dir/h.dart",
|
| + "dir/i.dart",
|
| + "dir/j.dart",
|
| + "dir/k.dart"
|
| + ];
|
| + expect(tree.fromFiles(files), equals("""
|
| +'-- dir
|
| + |-- a.dart
|
| + |-- b.dart
|
| + |-- c.dart
|
| + | (5 more...)
|
| + |-- i.dart
|
| + |-- j.dart
|
| + '-- k.dart
|
| +"""));
|
| + });
|
| +
|
| + test('files are not elided at the top level', () {
|
| + var files = [
|
| + "a.dart",
|
| + "b.dart",
|
| + "c.dart",
|
| + "d.dart",
|
| + "e.dart",
|
| + "f.dart",
|
| + "g.dart",
|
| + "h.dart",
|
| + "i.dart",
|
| + "j.dart",
|
| + "k.dart"
|
| + ];
|
| + expect(tree.fromFiles(files), equals("""
|
| +|-- a.dart
|
| +|-- b.dart
|
| +|-- c.dart
|
| +|-- d.dart
|
| +|-- e.dart
|
| +|-- f.dart
|
| +|-- g.dart
|
| +|-- h.dart
|
| +|-- i.dart
|
| +|-- j.dart
|
| +'-- k.dart
|
| +"""));
|
| + });
|
| +
|
| + test('a complex example', () {
|
| + var files = [
|
| + "TODO",
|
| + "example/console_example.dart",
|
| + "example/main.dart",
|
| + "example/web copy/web_example.dart",
|
| + "test/absolute_test.dart",
|
| + "test/basename_test.dart",
|
| + "test/dirname_test.dart",
|
| + "test/extension_test.dart",
|
| + "test/is_absolute_test.dart",
|
| + "test/is_relative_test.dart",
|
| + "test/join_test.dart",
|
| + "test/normalize_test.dart",
|
| + "test/relative_test.dart",
|
| + "test/split_test.dart",
|
| + ".gitignore",
|
| + "README.md",
|
| + "lib/path.dart",
|
| + "pubspec.yaml",
|
| + "test/all_test.dart",
|
| + "test/path_posix_test.dart",
|
| + "test/path_windows_test.dart"
|
| + ];
|
| +
|
| + expect(tree.fromFiles(files), equals("""
|
| +|-- .gitignore
|
| +|-- README.md
|
| +|-- TODO
|
| +|-- example
|
| +| |-- console_example.dart
|
| +| |-- main.dart
|
| +| '-- web copy
|
| +| '-- web_example.dart
|
| +|-- lib
|
| +| '-- path.dart
|
| +|-- pubspec.yaml
|
| +'-- test
|
| + |-- absolute_test.dart
|
| + |-- all_test.dart
|
| + |-- basename_test.dart
|
| + | (7 more...)
|
| + |-- path_windows_test.dart
|
| + |-- relative_test.dart
|
| + '-- split_test.dart
|
| +"""));
|
| + });
|
| + });
|
| +
|
| + group('treeFromMap', () {
|
| + test('empty map', () {
|
| + expect(tree.fromMap({}), equals(""));
|
| + });
|
| +
|
| + test('a complex example', () {
|
| + var map = {
|
| + ".gitignore": {},
|
| + "README.md": {},
|
| + "TODO": {},
|
| + "example": {
|
| + "console_example.dart": {},
|
| + "main.dart": {},
|
| + "web copy": {
|
| + "web_example.dart": {}
|
| + },
|
| + },
|
| + "lib": {
|
| + "path.dart": {}
|
| + },
|
| + "pubspec.yaml": {},
|
| + "test": {
|
| + "absolute_test.dart": {},
|
| + "basename_test.dart": {},
|
| + "dirname_test.dart": {},
|
| + "extension_test.dart": {},
|
| + "is_absolute_test.dart": {},
|
| + "is_relative_test.dart": {},
|
| + "join_test.dart": {},
|
| + "normalize_test.dart": {},
|
| + "relative_test.dart": {},
|
| + "split_test.dart": {}
|
| + }
|
| + };
|
| +
|
| + expect(tree.fromMap(map), equals("""
|
| +|-- .gitignore
|
| +|-- README.md
|
| +|-- TODO
|
| +|-- example
|
| +| |-- console_example.dart
|
| +| |-- main.dart
|
| +| '-- web copy
|
| +| '-- web_example.dart
|
| +|-- lib
|
| +| '-- path.dart
|
| +|-- pubspec.yaml
|
| +'-- test
|
| + |-- absolute_test.dart
|
| + |-- basename_test.dart
|
| + |-- dirname_test.dart
|
| + |-- extension_test.dart
|
| + |-- is_absolute_test.dart
|
| + |-- is_relative_test.dart
|
| + |-- join_test.dart
|
| + |-- normalize_test.dart
|
| + |-- relative_test.dart
|
| + '-- split_test.dart
|
| +"""));
|
| + });
|
| + });
|
| +
|
| + test('does not elide children if showAllChildren is true', () {
|
| + var map = {
|
| + 'dir': {
|
| + 'a.dart': {},
|
| + 'b.dart': {},
|
| + 'c.dart': {},
|
| + 'd.dart': {},
|
| + 'e.dart': {},
|
| + 'f.dart': {},
|
| + 'g.dart': {},
|
| + 'h.dart': {},
|
| + 'i.dart': {},
|
| + 'j.dart': {},
|
| + 'k.dart': {},
|
| + 'l.dart': {},
|
| + }
|
| + };
|
| + expect(tree.fromMap(map, showAllChildren: true), equals("""
|
| +'-- dir
|
| + |-- a.dart
|
| + |-- b.dart
|
| + |-- c.dart
|
| + |-- d.dart
|
| + |-- e.dart
|
| + |-- f.dart
|
| + |-- g.dart
|
| + |-- h.dart
|
| + |-- i.dart
|
| + |-- j.dart
|
| + |-- k.dart
|
| + '-- l.dart
|
| +"""));
|
| + });
|
| +
|
| +}
|
|
|