| import 'dart:io'; |
| import 'package:dev_compiler/src/compiler/shared_command.dart'; |
| import 'package:test/test.dart'; |
| |
| main(List<String> args) { |
| String currentDir; |
| setUpAll(() { |
| currentDir = Directory.current.path.replaceAll(r'\', r'/'); |
| if (!currentDir.startsWith(r'/')) currentDir = "/$currentDir"; |
| }); |
| |
| group('sourcePathToUri', () { |
| test('various URL schemes', () { |
| expect(sourcePathToUri("dart:io").toString(), "dart:io"); |
| expect(sourcePathToUri("package:expect/minitest.dart").toString(), |
| "package:expect/minitest.dart"); |
| expect(sourcePathToUri("foobar:whatnot").toString(), "foobar:whatnot"); |
| }); |
| |
| test('full Windows path', () { |
| expect( |
| sourcePathToUri("C:\\full\\windows\\path.foo", windows: true) |
| .toString(), |
| "file:///C:/full/windows/path.foo"); |
| expect( |
| sourcePathToUri("C:/full/windows/path.foo", windows: true).toString(), |
| "file:///C:/full/windows/path.foo"); |
| }); |
| |
| test('relative Windows path', () { |
| expect( |
| sourcePathToUri("partial\\windows\\path.foo", windows: true) |
| .toString(), |
| "file://$currentDir/partial/windows/path.foo"); |
| }); |
| |
| test('full unix path', () { |
| expect( |
| sourcePathToUri("/full/path/to/foo.bar", windows: false).toString(), |
| "file:///full/path/to/foo.bar"); |
| }); |
| |
| test('relative unix path', () { |
| expect( |
| sourcePathToUri("partial/path/to/foo.bar", windows: false).toString(), |
| "file://$currentDir/partial/path/to/foo.bar"); |
| }); |
| }); |
| |
| group('sourcePathToRelativeUri', () { |
| test('various URL schemes', () { |
| expect(sourcePathToRelativeUri("dart:io").toString(), "dart:io"); |
| expect(sourcePathToRelativeUri("package:expect/minitest.dart").toString(), |
| "package:expect/minitest.dart"); |
| expect(sourcePathToRelativeUri("foobar:whatnot").toString(), |
| "foobar:whatnot"); |
| }); |
| |
| test('full Windows path', () { |
| expect( |
| sourcePathToRelativeUri("C:\\full\\windows\\path.foo", windows: true) |
| .toString(), |
| "file:///C:/full/windows/path.foo"); |
| expect( |
| sourcePathToRelativeUri("C:/full/windows/path.foo", windows: true) |
| .toString(), |
| "file:///C:/full/windows/path.foo"); |
| }); |
| |
| test('relative Windows path', () { |
| expect( |
| sourcePathToRelativeUri("partial\\windows\\path.foo", windows: true) |
| .toString(), |
| "partial/windows/path.foo"); |
| }); |
| |
| test('full unix path', () { |
| expect( |
| sourcePathToRelativeUri("/full/path/to/foo.bar", windows: false) |
| .toString(), |
| "file:///full/path/to/foo.bar"); |
| }); |
| |
| test('relative unix path', () { |
| expect( |
| sourcePathToRelativeUri("partial/path/to/foo.bar", windows: false) |
| .toString(), |
| "partial/path/to/foo.bar"); |
| }); |
| }); |
| } |