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

Unified Diff: tests/standalone/io/platform_executable_test.dart

Issue 1180623006: Revert change to Platform.excutable and add Platform.resolvedExecutable (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Updated dart2js io_patch.dart Created 5 years, 6 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
« no previous file with comments | « sdk/lib/io/platform_impl.dart ('k') | tests/standalone/io/platform_resolved_executable_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/standalone/io/platform_executable_test.dart
diff --git a/tests/standalone/io/platform_executable_test.dart b/tests/standalone/io/platform_executable_test.dart
deleted file mode 100644
index 3a0e16c73574bca64f6f7512051b34b8f688f957..0000000000000000000000000000000000000000
--- a/tests/standalone/io/platform_executable_test.dart
+++ /dev/null
@@ -1,144 +0,0 @@
-// 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.
-//
-// Process test program to test process communication.
-
-library PlatformExecutableTest;
-
-import "dart:io";
-
-const _SCRIPT_KEY = '_test_script';
-
-void expectEquals(a, b) {
- if (a != b) {
- throw 'Expected: $a\n'
- ' Actual: $b';
- }
-}
-
-void verify(String exePath, {String altPath}) {
- var env = {_SCRIPT_KEY: 'yes'};
- if (altPath != null) {
- env['PATH'] = altPath;
- }
-
- var processResult = Process.runSync(exePath, [scriptPath],
- includeParentEnvironment: false, runInShell: true, environment: env);
-
- if (processResult.exitCode != 0) {
- throw 'Error with process\n'
- '$scriptPath'
- 'Exit code: ${processResult.exitCode}\n'
- ' STDOUT: ${processResult.stdout}\n'
- ' STDERR: ${processResult.stderr}\n';
- }
-
- var result = processResult.stdout.trim();
- expectEquals(Platform.executable, result);
-}
-
-void testDartExecShouldNotBeInCurrentDir() {
- var type = FileSystemEntity.typeSync(platformExeName);
- expectEquals(FileSystemEntityType.NOT_FOUND, type);
-}
-
-void testShouldSucceedWithEmptyPathEnvironment() {
- var command = Platform.isWindows ? 'cmd' : 'ls';
- Process.runSync(command, [],
- includeParentEnvironment: false,
- environment: {_SCRIPT_KEY: 'yes', 'PATH': ''});
-}
-
-void testShouldSucceedWithSourcePlatformExecutable() {
- verify(Platform.executable);
-}
-
-void testExeSymLinked(Directory dir) {
- var dirUri = new Uri.directory(dir.path);
- var link = new Link.fromUri(dirUri.resolve('dart_exe_link'));
- link.createSync(Platform.executable);
- verify(link.path);
-}
-
-void testPathToDirWithExeSymLinked(Directory dir) {
- var dirUri = new Uri.directory(dir.path);
- var link = new Link.fromUri(dirUri.resolve('dart_exe_link'));
- link.createSync(Platform.executable);
- verify('dart_exe_link', altPath: dir.path);
-}
-
-/// Create a sym-link to the SDK directory and run 'dart' from that path
-void testExeDirSymLinked(Directory dir) {
- var dirUri = new Uri.directory(dir.path);
-
- var linkDirUri = dirUri.resolve('dart_bin_dir_link');
- var link = new Link.fromUri(linkDirUri);
-
- var exeFile = new File(Platform.executable);
-
- link.createSync(exeFile.parent.path);
-
- var linkedBin =
- new Uri.directory(linkDirUri.toFilePath()).resolve(platformExeName);
-
- verify(linkedBin.toFilePath());
-}
-
-void testPathPointsToSymLinkedSDKPath(Directory dir) {
- var dirUri = new Uri.directory(dir.path);
-
- var linkDirUri = dirUri.resolve('dart_bin_dir_link');
- var link = new Link.fromUri(linkDirUri);
-
- var exeFile = new File(Platform.executable);
-
- link.createSync(exeFile.parent.path);
-
- verify(platformExeName, altPath: link.path);
-}
-
-void testPathToSDKDir() {
- var exeFile = new File(Platform.executable);
- var binDirPath = exeFile.parent.path;
-
- verify(platformExeName, altPath: binDirPath);
-}
-
-void withTempDir(void test(Directory dir)) {
- var tempDir = Directory.systemTemp.createTempSync('dart.sdk.test.');
- try {
- test(tempDir);
- } finally {
- tempDir.deleteSync(recursive: true);
- }
-}
-
-String get platformExeName {
- var raw = new Uri.file(Platform.executable);
- return raw.pathSegments.last;
-}
-
-String get scriptPath => Platform.script.toFilePath();
-
-void main() {
- if (Platform.environment.containsKey(_SCRIPT_KEY)) {
- print(Platform.executable);
- return;
- }
-
- testDartExecShouldNotBeInCurrentDir();
- testShouldSucceedWithSourcePlatformExecutable(); /// 00: ok
- // dart:io does not support linking to files in Windows.
- if (!Platform.isWindows) {
- withTempDir(testExeSymLinked); /// 01: ok
- }
- withTempDir(testExeDirSymLinked); /// 02: ok
- testPathToSDKDir(); /// 03: ok
- withTempDir(testPathPointsToSymLinkedSDKPath); /// 04: ok
- // dart:io does not support linking to files in Windows.
- if (!Platform.isWindows) {
- withTempDir(testPathToDirWithExeSymLinked); /// 05: ok
- }
- testShouldSucceedWithEmptyPathEnvironment(); /// 06: ok
-}
« no previous file with comments | « sdk/lib/io/platform_impl.dart ('k') | tests/standalone/io/platform_resolved_executable_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698