
// @dart = 2.9
import 'dart:isolate';
import 'dart:io';

import 'package:path/path.dart' as p;

main() async {
  Directory tmp = await Directory.systemTemp.createTemp("testCopy");
  var path = "${tmp.path}/other.dart";
  var sourceFile = new File(path);
  sourceFile.writeAsStringSync("""
    import 'package:path/path.dart' as p;

    void main() => print(p.current);
  """);

  var exitPort = new ReceivePort();
  await Isolate.spawnUri(p.toUri(p.absolute(path)), [], null,
      packageConfig: p.toUri(p.absolute(".packages")),
      onExit: exitPort.sendPort);
  await exitPort.first;
  await sourceFile.delete();
}
