|  | // Copyright (c) 2020, the Dart project authors.  Please see the AUTHORS file | 
|  | // for details. All rights reserved. Use of this source code is governed by a | 
|  | // BSD-style license that can be found in the LICENSE file. | 
|  |  | 
|  | import "dart:io"; | 
|  | import "nnbd_spawn_autodetect_helper.dart"; | 
|  |  | 
|  | void main() { | 
|  | // Create temporary directory. | 
|  | var tmpDir = Directory.systemTemp.createTempSync(); | 
|  | var tmpDirPath = tmpDir.path; | 
|  | String sourcePath = "$tmpDirPath/strong.dart"; | 
|  | String dillPath = "$tmpDirPath/strong.dill"; | 
|  | String jitPath = "$tmpDirPath/strong.appjit"; | 
|  |  | 
|  | // Generate code for an isolate to run in strong mode. | 
|  | generateIsolateSource(sourcePath, ""); | 
|  | generateKernel(sourcePath, dillPath); | 
|  | generateAppJIT(sourcePath, jitPath); | 
|  |  | 
|  | try { | 
|  | // Strong Isolate Spawning another Strong Isolate using spawn. | 
|  | testNullSafetyMode(sourcePath, 're: strong'); | 
|  | testNullSafetyMode(dillPath, 're: strong'); | 
|  | testNullSafetyMode(jitPath, 're: strong'); | 
|  | } finally { | 
|  | tmpDir.deleteSync(recursive: true); | 
|  | } | 
|  | } |