@@ -42,39 +42,47 @@ void main() {
42
42
].firstOrNull? .uri;
43
43
44
44
final targetOS = OS .current;
45
- final buildInputBuilder = BuildInputBuilder ()
46
- ..setupShared (
47
- packageName: 'dummy' ,
48
- packageRoot: tempUri,
49
- outputDirectory: tempUri,
50
- outputDirectoryShared: tempUri2,
51
- )
52
- ..config.setupBuild (
53
- linkingEnabled: false ,
54
- dryRun: false ,
55
- )
56
- ..config.setupShared (buildAssetTypes: [CodeAsset .type])
57
- ..config.setupCode (
58
- targetOS: targetOS,
59
- macOS: targetOS == OS .macOS
60
- ? MacOSConfig (targetVersion: defaultMacOSVersion)
61
- : null ,
62
- targetArchitecture: Architecture .current,
63
- linkModePreference: LinkModePreference .dynamic ,
64
- cCompiler: CCompilerConfig (
65
- archiver: ar,
66
- compiler: cc,
67
- linker: ld,
68
- envScript: envScript,
69
- ),
70
- );
71
- final buildInput = BuildInput (buildInputBuilder.json);
72
- final resolver =
73
- CompilerResolver (codeConfig: buildInput.config.code, logger: logger);
74
- final compiler = await resolver.resolveCompiler ();
75
- final archiver = await resolver.resolveArchiver ();
76
- expect (compiler.uri, buildInput.config.code.cCompiler? .compiler);
77
- expect (archiver.uri, buildInput.config.code.cCompiler? .archiver);
45
+ for (final passInEnvScript in [if (targetOS == OS .windows) true , false ]) {
46
+ final buildInputBuilder = BuildInputBuilder ()
47
+ ..setupShared (
48
+ packageName: 'dummy' ,
49
+ packageRoot: tempUri,
50
+ outputDirectory: tempUri,
51
+ outputDirectoryShared: tempUri2,
52
+ )
53
+ ..config.setupBuild (
54
+ linkingEnabled: false ,
55
+ dryRun: false ,
56
+ )
57
+ ..config.setupShared (buildAssetTypes: [CodeAsset .type])
58
+ ..config.setupCode (
59
+ targetOS: targetOS,
60
+ macOS: targetOS == OS .macOS
61
+ ? MacOSConfig (targetVersion: defaultMacOSVersion)
62
+ : null ,
63
+ targetArchitecture: Architecture .current,
64
+ linkModePreference: LinkModePreference .dynamic ,
65
+ cCompiler: CCompilerConfig (
66
+ archiver: ar,
67
+ compiler: cc,
68
+ linker: ld,
69
+ envScript: passInEnvScript ? envScript : null ,
70
+ ),
71
+ );
72
+ final buildInput = BuildInput (buildInputBuilder.json);
73
+ final resolver =
74
+ CompilerResolver (codeConfig: buildInput.config.code, logger: logger);
75
+ final compiler = await resolver.resolveCompiler ();
76
+ final archiver = await resolver.resolveArchiver ();
77
+ expect (compiler.uri, buildInput.config.code.cCompiler? .compiler);
78
+ expect (archiver.uri, buildInput.config.code.cCompiler? .archiver);
79
+ final environment = await resolver.resolveEnvironment (compiler);
80
+ if (passInEnvScript) {
81
+ expect (environment, isNot (equals ({})));
82
+ } else {
83
+ expect (environment, equals ({}));
84
+ }
85
+ }
78
86
});
79
87
80
88
test ('No compiler found' , () async {
0 commit comments