Skip to content

Commit a873b14

Browse files
committed
Support source maps in precompiled mode and support extended source maps.
BUG= [email protected] Review URL: https://codereview.chromium.org//2557183002 .
1 parent 8dbf5ff commit a873b14

File tree

4 files changed

+25
-8
lines changed

4 files changed

+25
-8
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.12.17+3
2+
3+
* Internal changes only.
4+
15
## 0.12.17+2
26

37
* Fix Dartium debugging on Windows.

lib/src/runner/browser/platform.dart

+13
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,19 @@ class BrowserPlatform extends PlatformPlugin {
241241
if (browser.isJS) {
242242
if (_precompiled(suiteConfig, path)) {
243243
if (_precompiledPaths.add(suiteConfig.precompiledPath)) {
244+
if (!suiteConfig.jsTrace) {
245+
var jsPath = p.join(suiteConfig.precompiledPath,
246+
p.relative(path + ".browser_test.dart.js", from: _root));
247+
248+
var sourceMapPath = '${jsPath}.map';
249+
if (new File(sourceMapPath).existsSync()) {
250+
_mappers[path] = new StackTraceMapper(
251+
new File(sourceMapPath).readAsStringSync(),
252+
mapUrl: p.toUri(sourceMapPath),
253+
packageResolver: await PackageResolver.current.asSync,
254+
sdkRoot: p.toUri(sdkDir));
255+
}
256+
}
244257
_precompiledCascade ??= new shelf.Cascade();
245258
_precompiledCascade = _precompiledCascade.add(
246259
createStaticHandler(suiteConfig.precompiledPath));

lib/src/util/stack_trace_mapper.dart

+5-5
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ class StackTraceMapper {
1717
/// The URI of the SDK root from which dart2js loaded its sources.
1818
final Uri _sdkRoot;
1919

20-
StackTraceMapper(String contents, {Uri mapUrl,
21-
SyncPackageResolver packageResolver, Uri sdkRoot})
22-
: _mapping = parse(contents, mapUrl: mapUrl),
23-
_packageResolver = packageResolver,
24-
_sdkRoot = sdkRoot;
20+
StackTraceMapper(String contents,
21+
{Uri mapUrl, SyncPackageResolver packageResolver, Uri sdkRoot})
22+
: _mapping = parseExtended(contents, mapUrl: mapUrl),
23+
_packageResolver = packageResolver,
24+
_sdkRoot = sdkRoot;
2525

2626
/// Converts [trace] into a Dart stack trace.
2727
StackTrace mapStackTrace(StackTrace trace) =>

pubspec.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: test
2-
version: 0.12.17+2
2+
version: 0.12.17+3
33
author: Dart Team <[email protected]>
44
description: A library for writing dart unit tests.
55
homepage: https://github.com/dart-lang/test
@@ -22,8 +22,8 @@ dependencies:
2222
shelf_packages_handler: '^1.0.0'
2323
shelf_static: '^0.2.0'
2424
shelf_web_socket: '^0.2.0'
25-
source_map_stack_trace: '^1.1.0'
26-
source_maps: '^0.10.1'
25+
source_map_stack_trace: '^1.1.4'
26+
source_maps: '^0.10.2'
2727
source_span: '^1.0.0'
2828
stack_trace: '^1.2.1'
2929
stream_channel: '^1.3.1'

0 commit comments

Comments
 (0)