| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 library frame_test; | 5 library frame_test; |
| 6 | 6 |
| 7 import 'dart:io'; | 7 import 'dart:io'; |
| 8 import 'dart:uri'; | |
| 9 | 8 |
| 10 import 'package:pathos/path.dart' as path; | 9 import 'package:pathos/path.dart' as path; |
| 11 import 'package:stack_trace/src/utils.dart'; | 10 import 'package:stack_trace/src/utils.dart'; |
| 12 import 'package:stack_trace/stack_trace.dart'; | 11 import 'package:stack_trace/stack_trace.dart'; |
| 13 import 'package:unittest/unittest.dart'; | 12 import 'package:unittest/unittest.dart'; |
| 14 | 13 |
| 15 String getStackFrame() { | 14 String getStackFrame() { |
| 16 try { | 15 try { |
| 17 throw ''; | 16 throw ''; |
| 18 } catch (_, stackTrace) { | 17 } catch (_, stackTrace) { |
| (...skipping 16 matching lines...) Expand all Loading... |
| 35 expect(frame.line, equals(42)); | 34 expect(frame.line, equals(42)); |
| 36 expect(frame.column, equals(21)); | 35 expect(frame.column, equals(21)); |
| 37 expect(frame.member, equals('Foo._bar')); | 36 expect(frame.member, equals('Foo._bar')); |
| 38 }); | 37 }); |
| 39 | 38 |
| 40 test('parses a real stack frame correctly', () { | 39 test('parses a real stack frame correctly', () { |
| 41 var frame = new Frame.parse(getStackFrame()); | 40 var frame = new Frame.parse(getStackFrame()); |
| 42 // TODO(nweiz): use URL-style paths when such a thing exists. | 41 // TODO(nweiz): use URL-style paths when such a thing exists. |
| 43 var builder = new path.Builder(style: path.Style.posix); | 42 var builder = new path.Builder(style: path.Style.posix); |
| 44 expect(builder.basename(frame.uri.path), equals('frame_test.dart')); | 43 expect(builder.basename(frame.uri.path), equals('frame_test.dart')); |
| 45 expect(frame.line, equals(17)); | 44 expect(frame.line, equals(16)); |
| 46 expect(frame.column, equals(5)); | 45 expect(frame.column, equals(5)); |
| 47 expect(frame.member, equals('getStackFrame')); | 46 expect(frame.member, equals('getStackFrame')); |
| 48 }); | 47 }); |
| 49 | 48 |
| 50 test('converts "<anonymous closure>" to "<fn>"', () { | 49 test('converts "<anonymous closure>" to "<fn>"', () { |
| 51 String parsedMember(String member) => | 50 String parsedMember(String member) => |
| 52 new Frame.parse('#0 $member (foo:0:0)').member; | 51 new Frame.parse('#0 $member (foo:0:0)').member; |
| 53 | 52 |
| 54 expect(parsedMember('Foo.<anonymous closure>'), equals('Foo.<fn>')); | 53 expect(parsedMember('Foo.<anonymous closure>'), equals('Foo.<fn>')); |
| 55 expect(parsedMember('<anonymous closure>.<anonymous closure>.bar'), | 54 expect(parsedMember('<anonymous closure>.<anonymous closure>.bar'), |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 equals('dart:core in Foo')); | 166 equals('dart:core in Foo')); |
| 168 }); | 167 }); |
| 169 | 168 |
| 170 test('converts "<anonymous closure>" to "<fn>"', () { | 169 test('converts "<anonymous closure>" to "<fn>"', () { |
| 171 expect(new Frame.parse('#0 Foo.<anonymous closure> (dart:core:5:10)') | 170 expect(new Frame.parse('#0 Foo.<anonymous closure> (dart:core:5:10)') |
| 172 .toString(), | 171 .toString(), |
| 173 equals('dart:core in Foo.<fn>')); | 172 equals('dart:core in Foo.<fn>')); |
| 174 }); | 173 }); |
| 175 }); | 174 }); |
| 176 } | 175 } |
| OLD | NEW |