@@ -41,14 +41,15 @@ void main() {
4141 outputDirectoryShared: tempUri2,
4242 )
4343 ..config.setupBuild (linkingEnabled: false )
44- ..config.setupShared (buildAssetTypes: [CodeAsset .type])
45- ..config.setupCode (
46- targetOS: targetOS,
47- macOS: macOSConfig,
48- targetArchitecture: Architecture .current,
49- // Ignored by executables.
50- linkModePreference: LinkModePreference .dynamic ,
51- cCompiler: cCompiler,
44+ ..addExtension (
45+ CodeAssetExtension (
46+ targetOS: targetOS,
47+ macOS: macOSConfig,
48+ targetArchitecture: Architecture .current,
49+ // Ignored by executables.
50+ linkModePreference: LinkModePreference .dynamic ,
51+ cCompiler: cCompiler,
52+ ),
5253 );
5354
5455 final buildInput = BuildInput (buildInputBuilder.json);
@@ -64,9 +65,9 @@ void main() {
6465 await builder.run (input: buildInput, output: buildOutput, logger: logger);
6566
6667 final executableUri = switch (targetOS) {
67- OS .macOS => tempUri .resolve ('$name .app/Contents/MacOS/${OS .current .executableFileName (name )}' ),
68- OS .windows => tempUri .resolve ('${buildMode .name .toCapitalCase ()}/$name .exe' ),
69- _ => tempUri .resolve (OS .current.executableFileName (name)),
68+ OS .macOS => buildInput.outputDirectory .resolve ('$name .app/Contents/MacOS/${OS .current .executableFileName (name )}' ),
69+ OS .windows => buildInput.outputDirectory .resolve ('${buildMode .name .toCapitalCase ()}/$name .exe' ),
70+ _ => buildInput.outputDirectory .resolve (OS .current.executableFileName (name)),
7071 };
7172 expect (await File .fromUri (executableUri).exists (), true );
7273 final result = await runProcess (
@@ -98,14 +99,15 @@ void main() {
9899 outputDirectoryShared: tempUri2,
99100 )
100101 ..config.setupBuild (linkingEnabled: false )
101- ..config.setupShared (buildAssetTypes: [CodeAsset .type])
102- ..config.setupCode (
103- targetOS: targetOS,
104- macOS: macOSConfig,
105- targetArchitecture: Architecture .current,
106- // Ignored by executables.
107- linkModePreference: LinkModePreference .dynamic ,
108- cCompiler: cCompiler,
102+ ..addExtension (
103+ CodeAssetExtension (
104+ targetOS: targetOS,
105+ macOS: macOSConfig,
106+ targetArchitecture: Architecture .current,
107+ // Ignored by executables.
108+ linkModePreference: LinkModePreference .dynamic ,
109+ cCompiler: cCompiler,
110+ ),
109111 );
110112
111113 final buildInput = BuildInput (buildInputBuilder.json);
@@ -124,7 +126,7 @@ void main() {
124126 );
125127 await builder.run (input: buildInput, output: buildOutput, logger: logger);
126128
127- final dylibUri = tempUri .resolve ('install/lib/${OS .current .dylibFileName (name )}' );
129+ final dylibUri = buildInput.outputDirectory .resolve ('install/lib/${OS .current .dylibFileName (name )}' );
128130 expect (await File .fromUri (dylibUri).exists (), true );
129131 final dylib = openDynamicLibraryForTest (dylibUri.toFilePath ());
130132 final add = dylib.lookupFunction< Int32 Function (Int32 , Int32 ), int Function (int , int )> ('add' );
@@ -150,14 +152,15 @@ Future<void> testDefines({BuildMode buildMode = BuildMode.debug}) async {
150152 outputDirectoryShared: tempUri2,
151153 )
152154 ..config.setupBuild (linkingEnabled: false )
153- ..config.setupShared (buildAssetTypes: [CodeAsset .type])
154- ..config.setupCode (
155- targetOS: targetOS,
156- macOS: targetOS == OS .macOS ? MacOSCodeConfig (targetVersion: defaultMacOSVersion) : null ,
157- targetArchitecture: Architecture .current,
158- // Ignored by executables.
159- linkModePreference: LinkModePreference .dynamic ,
160- cCompiler: cCompiler,
155+ ..addExtension (
156+ CodeAssetExtension (
157+ targetOS: targetOS,
158+ macOS: targetOS == OS .macOS ? MacOSCodeConfig (targetVersion: defaultMacOSVersion) : null ,
159+ targetArchitecture: Architecture .current,
160+ // Ignored by executables.
161+ linkModePreference: LinkModePreference .dynamic ,
162+ cCompiler: cCompiler,
163+ ),
161164 );
162165
163166 final buildInput = BuildInput (buildInputBuilder.json);
@@ -177,9 +180,9 @@ Future<void> testDefines({BuildMode buildMode = BuildMode.debug}) async {
177180 );
178181
179182 final executableUri = switch (targetOS) {
180- OS .macOS => tempUri .resolve ('$name .app/Contents/MacOS/${OS .current .executableFileName (name )}' ),
181- OS .windows => tempUri .resolve ('${buildMode .name .toCapitalCase ()}/$name .exe' ),
182- _ => tempUri .resolve (OS .current.executableFileName (name)),
183+ OS .macOS => buildInput.outputDirectory .resolve ('$name .app/Contents/MacOS/${OS .current .executableFileName (name )}' ),
184+ OS .windows => buildInput.outputDirectory .resolve ('${buildMode .name .toCapitalCase ()}/$name .exe' ),
185+ _ => buildInput.outputDirectory .resolve (OS .current.executableFileName (name)),
183186 };
184187 expect (await File .fromUri (executableUri).exists (), true );
185188 final result = await runProcess (
0 commit comments