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

Unified Diff: sdk/lib/_internal/pub/test/lish/many_files_test.dart

Issue 1165473002: Start pulling pub from its own repo. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Code review changes Created 5 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/pub/test/lish/many_files_test.dart
diff --git a/sdk/lib/_internal/pub/test/lish/many_files_test.dart b/sdk/lib/_internal/pub/test/lish/many_files_test.dart
deleted file mode 100644
index 776779aee1aba4aa9629cf6ce4df3899dd1ac58f..0000000000000000000000000000000000000000
--- a/sdk/lib/_internal/pub/test/lish/many_files_test.dart
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright (c) 2015, 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.
-
-import 'dart:convert';
-import 'dart:io';
-import 'dart:math' as math;
-
-import 'package:path/path.dart' as p;
-import 'package:scheduled_test/scheduled_test.dart';
-import 'package:scheduled_test/scheduled_server.dart';
-import 'package:shelf/shelf.dart' as shelf;
-
-import '../../lib/src/exit_codes.dart' as exit_codes;
-import '../descriptor.dart' as d;
-import '../test_pub.dart';
-import 'utils.dart';
-
-/// The maximum number of bytes in an entire path.
-///
-/// This is [Windows's number][MAX_PATH], which is a much tighter constraint
-/// than OS X or Linux. We subtract one because Windows counts it as the number
-/// of bytes in a path C string including the terminating NUL but we only count
-/// characters here.
-///
-/// We use this limit on all platforms for consistency.
-///
-/// [MAX_PATH]: https://msdn.microsoft.com/en-us/library/windows/desktop/aa383130(v=vs.85).aspx
-const _pathMax = 260 - 1;
-
-main() {
- initConfig();
-
- integration('archives and uploads a package with more files than can fit on '
- 'the command line', () {
- d.validPackage.create();
-
- var argMax;
- if (Platform.isWindows) {
- // On Windows, the maximum argument list length is 8^5 bytes.
- argMax = math.pow(8, 5);
- } else {
- // On POSIX, the maximum argument list length can be retrieved
- // automatically.
- var result = Process.runSync("getconf", ["ARG_MAX"]);
- if (result.exitCode != 0) {
- fail("getconf failed with exit code ${result.exitCode}:\n"
- "${result.stderr}");
- }
-
- argMax = int.parse(result.stdout);
- }
-
- schedule(() {
- var appRoot = p.join(sandboxDir, appPath);
-
- // We'll make the filenames as long as possible to reduce the number of
- // files we have to create to hit the maximum. However, the tar process
- // uses relative paths, which means we can't count the root as part of the
- // length.
- var lengthPerFile = _pathMax - appRoot.length;
-
- // Create enough files to hit [argMax]. This may be a slight overestimate,
- // since other options are passed to the tar command line, but we don't
- // know how long those will be.
- var filesToCreate = (argMax / lengthPerFile).ceil();
-
- for (var i = 0; i < filesToCreate; i++) {
- var iString = i.toString();
-
- // The file name contains "x"s to make the path hit [_pathMax],
- // followed by a number to distinguish different files.
- var fileName =
- "x" * (_pathMax - appRoot.length - iString.length - 1) + iString;
-
- new File(p.join(appRoot, fileName)).writeAsStringSync("");
- }
- });
-
- var server = new ScheduledServer();
- d.credentialsFile(server, 'access token').create();
- var pub = startPublish(server);
-
- confirmPublish(pub);
- handleUploadForm(server);
- handleUpload(server);
-
- server.handle('GET', '/create', (request) {
- return new shelf.Response.ok(JSON.encode({
- 'success': {'message': 'Package test_pkg 1.0.0 uploaded!'}
- }));
- });
-
- pub.stdout.expect(startsWith('Uploading...'));
- pub.stdout.expect('Package test_pkg 1.0.0 uploaded!');
- pub.shouldExit(exit_codes.SUCCESS);
- });
-}

Powered by Google App Engine
This is Rietveld 408576698