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

Side by Side Diff: tools/testing/dart/browser_test.dart

Issue 12223074: Create generated tests inside the build directory (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 10 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
« no previous file with comments | « tools/test-runtime.dart ('k') | tools/testing/dart/http_server.dart » ('j') | 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) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 part of test_suite; 5 part of test_suite;
6 6
7 String getHtmlContents(String title, 7 String getHtmlContents(String title,
8 Path controllerScript,
9 Path dartJsScript,
10 String scriptType, 8 String scriptType,
11 Path sourceScript) => 9 Path sourceScript) =>
12 """ 10 """
13 <!DOCTYPE html> 11 <!DOCTYPE html>
14 <html> 12 <html>
15 <head> 13 <head>
16 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 14 <meta http-equiv="X-UA-Compatible" content="IE=edge">
17 <title> Test $title </title> 15 <title> Test $title </title>
18 <style> 16 <style>
19 .unittest-table { font-family:monospace; border:1px; } 17 .unittest-table { font-family:monospace; border:1px; }
20 .unittest-pass { background: #6b3;} 18 .unittest-pass { background: #6b3;}
21 .unittest-fail { background: #d55;} 19 .unittest-fail { background: #d55;}
22 .unittest-error { background: #a11;} 20 .unittest-error { background: #a11;}
23 </style> 21 </style>
24 </head> 22 </head>
25 <body> 23 <body>
26 <h1> Running $title </h1> 24 <h1> Running $title </h1>
27 <script type="text/javascript" src="$controllerScript"></script> 25 <script type="text/javascript"
26 src="/root_dart/pkg/unittest/lib/test_controller.js">
27 </script>
28 <script type="$scriptType" src="$sourceScript" onerror="externalError(null)"> 28 <script type="$scriptType" src="$sourceScript" onerror="externalError(null)">
29 </script> 29 </script>
30 <script type="text/javascript" src="$dartJsScript"></script> 30 <script type="text/javascript"
31 src="/root_dart/pkg/browser/lib/dart.js"></script>
31 </body> 32 </body>
32 </html> 33 </html>
33 """; 34 """;
34 35
35 String getHtmlLayoutContents(String scriptType, String sourceScript) => 36 String getHtmlLayoutContents(String scriptType, String sourceScript) =>
36 """ 37 """
37 <!DOCTYPE html> 38 <!DOCTYPE html>
38 <html> 39 <html>
39 <head> 40 <head>
40 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 41 <meta http-equiv="X-UA-Compatible" content="IE=edge">
41 </head> 42 </head>
42 <body> 43 <body>
43 <script type="text/javascript"> 44 <script type="text/javascript">
44 if (navigator.webkitStartDart) navigator.webkitStartDart(); 45 if (navigator.webkitStartDart) navigator.webkitStartDart();
45 </script> 46 </script>
46 <script type="$scriptType" src="$sourceScript"></script> 47 <script type="$scriptType" src="$sourceScript"></script>
47 </body> 48 </body>
48 </html> 49 </html>
49 """; 50 """;
50 51
51 String wrapDartTestInLibrary(Path test, String testPath) => 52 String wrapDartTestInLibrary(Path testRelativeToDart) =>
52 """ 53 """
53 library libraryWrapper; 54 library libraryWrapper;
54 part '${pathLib.relative(test.toNativePath(), 55 part '/$testRelativeToDart';
55 from: pathLib.dirname(testPath)).replaceAll('\\', '\\\\')}';
56 """; 56 """;
57 57
58 String dartTestWrapper(Path dartHome, String testPath, Path library) { 58 String dartTestWrapper(bool usePackageImport, String libraryPathComponent) {
59 var testPathDir = pathLib.dirname(testPath);
60 var dartHomePath = dartHome.toNativePath();
61 // TODO(efortuna): Unify path libraries used in test.dart.
62 var unitTest = pathLib.relative(pathLib.join(dartHomePath,
63 'pkg/unittest/lib'), from: testPathDir).replaceAll('\\', '\\\\');
64
65 var libString = library.toNativePath();
66 if (!pathLib.isAbsolute(libString)) {
67 libString = pathLib.join(dartHome.toNativePath(), libString);
68 }
69 // Tests inside "pkg" import unittest using "package:". All others use a 59 // Tests inside "pkg" import unittest using "package:". All others use a
70 // relative path. The imports need to agree, so use a matching form here. 60 // relative path. The imports need to agree, so use a matching form here.
71 if (pathLib.split(pathLib.relative(libString, 61 var unitTest;
72 from: dartHome.toNativePath())).contains("pkg")) { 62 if (usePackageImport) {
73 unitTest = 'package:unittest'; 63 unitTest = 'package:unittest';
64 } else {
65 unitTest = '/root_dart/pkg/unittest/lib';
74 } 66 }
75 return """ 67 return """
76 library test; 68 library test;
77 69
78 import '$unitTest/unittest.dart' as unittest; 70 import '$unitTest/unittest.dart' as unittest;
79 import '$unitTest/html_config.dart' as config; 71 import '$unitTest/html_config.dart' as config;
80 import '${pathLib.relative(libString, from: testPathDir).replaceAll( 72 import '$libraryPathComponent' as Test;
81 '\\', '\\\\')}' as Test;
82 73
83 main() { 74 main() {
84 config.useHtmlConfiguration(); 75 config.useHtmlConfiguration();
85 unittest.group('', Test.main); 76 unittest.group('', Test.main);
86 } 77 }
87 """; 78 """;
88 } 79 }
OLDNEW
« no previous file with comments | « tools/test-runtime.dart ('k') | tools/testing/dart/http_server.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698