| Index: tools/testing/dart/test_suite.dart
|
| diff --git a/tools/testing/dart/test_suite.dart b/tools/testing/dart/test_suite.dart
|
| index 000a864309d8c7f8b316f9ce7c2ff3f2be361e75..475a3589c8ae153ad655ae5dd3c4736910b01315 100644
|
| --- a/tools/testing/dart/test_suite.dart
|
| +++ b/tools/testing/dart/test_suite.dart
|
| @@ -21,7 +21,6 @@ import "test_runner.dart";
|
| import "multitest.dart";
|
| import "drt_updater.dart";
|
| import "dart:uri";
|
| -import '../../../pkg/path/lib/path.dart' as pathLib;
|
|
|
| part "browser_test.dart";
|
|
|
| @@ -402,17 +401,11 @@ class StandardTestSuite extends TestSuite {
|
| final Path dartDir;
|
| Predicate<String> isTestFilePredicate;
|
| final bool listRecursively;
|
| - /**
|
| - * The set of servers that have been started to run these tests (Could be
|
| - * none).
|
| - */
|
| - List serverList;
|
|
|
| StandardTestSuite(Map configuration,
|
| String suiteName,
|
| Path suiteDirectory,
|
| this.statusFilePaths,
|
| - this.serverList,
|
| {this.isTestFilePredicate,
|
| bool recursive: false})
|
| : super(configuration, suiteName),
|
| @@ -446,18 +439,14 @@ class StandardTestSuite extends TestSuite {
|
| * instead of having to create a custom [StandardTestSuite] subclass. In
|
| * particular, if you add 'path/to/mytestsuite' to [TEST_SUITE_DIRECTORIES]
|
| * in test.dart, this will all be set up for you.
|
| - *
|
| - * The [StandardTestSuite] also optionally takes a list of servers that have
|
| - * been started up by the test harness, to be used by browser tests.
|
| */
|
| factory StandardTestSuite.forDirectory(
|
| - Map configuration, Path directory, [List serverList = const []]) {
|
| + Map configuration, Path directory) {
|
| final name = directory.filename;
|
|
|
| return new StandardTestSuite(configuration,
|
| name, directory,
|
| ['$directory/$name.status', '$directory/${name}_dart2js.status'],
|
| - serverList,
|
| isTestFilePredicate: (filename) => filename.endsWith('_test.dart'),
|
| recursive: true);
|
| }
|
| @@ -864,7 +853,7 @@ class StandardTestSuite extends TestSuite {
|
| File file = new File(dartWrapperFilename);
|
| RandomAccessFile dartWrapper = file.openSync(FileMode.WRITE);
|
| dartWrapper.writeStringSync(
|
| - dartTestWrapper(dartDir, file.name, dartLibraryFilename));
|
| + dartTestWrapper(dartDir, dartLibraryFilename));
|
| dartWrapper.closeSync();
|
| } else {
|
| dartWrapperFilename = filename;
|
| @@ -886,6 +875,12 @@ class StandardTestSuite extends TestSuite {
|
| dartWrapperFilename : compiledDartWrapperFilename;
|
| // Create the HTML file for the test.
|
| RandomAccessFile htmlTest = new File(htmlPath).openSync(FileMode.WRITE);
|
| + String filePrefix = '';
|
| + if (Platform.operatingSystem == 'windows') {
|
| + // Firefox on Windows does not like absolute file path names that start
|
| + // with 'C:' adding 'file:///' solves the problem.
|
| + filePrefix = 'file:///';
|
| + }
|
| String content = null;
|
| Path dir = filePath.directoryPath;
|
| String nameNoExt = filePath.filenameWithoutExtension;
|
| @@ -894,12 +889,10 @@ class StandardTestSuite extends TestSuite {
|
| Path expectedOutput = null;
|
| if (new File.fromPath(pngPath).existsSync()) {
|
| expectedOutput = pngPath;
|
| - content = getHtmlLayoutContents(scriptType, pathLib.relative(scriptPath,
|
| - from: pathLib.dirname(htmlPath)));
|
| + content = getHtmlLayoutContents(scriptType, '$filePrefix$scriptPath');
|
| } else if (new File.fromPath(txtPath).existsSync()) {
|
| expectedOutput = txtPath;
|
| - content = getHtmlLayoutContents(scriptType, pathLib.relative(scriptPath,
|
| - from: pathLib.dirname(htmlPath)));
|
| + content = getHtmlLayoutContents(scriptType, '$filePrefix$scriptPath');
|
| } else {
|
| final htmlLocation = new Path.fromNative(htmlPath);
|
| content = getHtmlContents(
|
| @@ -949,15 +942,10 @@ class StandardTestSuite extends TestSuite {
|
| }
|
|
|
| List<String> args = <String>[];
|
| - var basePath = TestUtils.dartDir().toString();
|
| - htmlPath = htmlPath.startsWith(basePath) ?
|
| - htmlPath.substring(basePath.length) : htmlPath;
|
| - String fullHtmlPath = htmlPath;
|
| - if (!htmlPath.startsWith('http')) {
|
| - if (!htmlPath.startsWith('/')) htmlPath = '/$htmlPath';
|
| - fullHtmlPath = 'http://127.0.0.1:${serverList[0].port}$htmlPath?'
|
| - 'crossOriginPort=${serverList[1].port}';
|
| - }
|
| + String fullHtmlPath = htmlPath.startsWith('http:') ? htmlPath :
|
| + (htmlPath.startsWith('/') ?
|
| + 'file://$htmlPath' :
|
| + 'file:///$htmlPath');
|
| if (info.optionsFromFile['isMultiHtmlTest']
|
| && subtestNames.length > 0) {
|
| fullHtmlPath = '${fullHtmlPath}#${subtestNames[subtestIndex]}';
|
| @@ -999,10 +987,8 @@ class StandardTestSuite extends TestSuite {
|
| var absolutePath =
|
| TestUtils.absolutePath(new Path(packageRootPath));
|
| packageRootUri = new Uri.fromComponents(
|
| - scheme: 'http',
|
| - path: '127.0.0.1:${serverList[0].port}/'
|
| - '${pathLib.relative(absolutePath.toString(), from:
|
| - TestUtils.dartDir().toString())}');
|
| + scheme: 'file',
|
| + path: absolutePath.toString());
|
| }
|
| }
|
|
|
| @@ -1111,8 +1097,7 @@ class StandardTestSuite extends TestSuite {
|
| var minified = configuration['minified'] ? '-minified' : '';
|
| var dirName = "${configuration['compiler']}-${configuration['runtime']}"
|
| "$checked$minified";
|
| - Path generatedTestPath = new Path.fromNative(dartDir.toString())
|
| - .append(buildDir.toString())
|
| + Path generatedTestPath = new Path.fromNative(buildDir)
|
| .append('generated_tests')
|
| .append(dirName)
|
| .append(testUniqueName);
|
| @@ -1453,8 +1438,7 @@ class DartcCompilationTestSuite extends StandardTestSuite {
|
| : super(configuration,
|
| suiteName,
|
| new Path.fromNative(directoryPath),
|
| - expectations,
|
| - []);
|
| + expectations);
|
|
|
| List<String> additionalOptions(Path filePath) {
|
| return ['--fatal-warnings', '--fatal-type-errors'];
|
|
|