Skip to content

Commit 2662a64

Browse files
authored
Modify build.fsx dotnet test to target the assembly dll directly instead of targetting the .csproj file (#5924)
1 parent f8053b9 commit 2662a64

File tree

1 file changed

+32
-17
lines changed

1 file changed

+32
-17
lines changed

build.fsx

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -247,21 +247,26 @@ Target "RunTests" (fun _ ->
247247
-- "./src/examples/**"
248248
rawProjects |> Seq.choose filterProjects
249249

250-
let runSingleProject project =
250+
let projectDlls = projects |> Seq.map ( fun project ->
251+
let assemblyName = fileNameWithoutExt project
252+
(directory project) @@ "bin" @@ "Release" @@ testNetFrameworkVersion @@ assemblyName + ".dll"
253+
)
254+
255+
let runSingleProject projectDll =
251256
let arguments =
252257
match (hasTeamCity) with
253-
| true -> (sprintf "test -c Release --blame --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none -teamcity" testNetFrameworkVersion outputTests)
254-
| false -> (sprintf "test -c Release --blame --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none" testNetFrameworkVersion outputTests)
255-
258+
| true -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -teamcity" projectDll testNetFrameworkVersion outputTests)
259+
| false -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\"" projectDll testNetFrameworkVersion outputTests)
260+
256261
let result = ExecProcess(fun info ->
257262
info.FileName <- "dotnet"
258-
info.WorkingDirectory <- (Directory.GetParent project).FullName
263+
info.WorkingDirectory <- outputTests
259264
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
260265

261266
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
262-
267+
263268
CreateDir outputTests
264-
projects |> Seq.iter (runSingleProject)
269+
projectDlls |> Seq.iter (runSingleProject)
265270
)
266271

267272
Target "RunTestsNetCore" (fun _ ->
@@ -277,21 +282,26 @@ Target "RunTestsNetCore" (fun _ ->
277282
-- "./src/examples/**"
278283
rawProjects |> Seq.choose filterProjects
279284

280-
let runSingleProject project =
285+
let projectDlls = projects |> Seq.map ( fun project ->
286+
let assemblyName = fileNameWithoutExt project
287+
(directory project) @@ "bin" @@ "Release" @@ testNetCoreVersion @@ assemblyName + ".dll"
288+
)
289+
290+
let runSingleProject projectDll =
281291
let arguments =
282292
match (hasTeamCity) with
283-
| true -> (sprintf "test -c Release --blame --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none -teamcity" testNetCoreVersion outputTests)
284-
| false -> (sprintf "test -c Release --blame --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none" testNetCoreVersion outputTests)
293+
| true -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -teamcity" projectDll testNetCoreVersion outputTests)
294+
| false -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\"" projectDll testNetCoreVersion outputTests)
285295

286296
let result = ExecProcess(fun info ->
287297
info.FileName <- "dotnet"
288-
info.WorkingDirectory <- (Directory.GetParent project).FullName
298+
info.WorkingDirectory <- outputTests
289299
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
290300

291301
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
292302

293303
CreateDir outputTests
294-
projects |> Seq.iter (runSingleProject)
304+
projectDlls |> Seq.iter (runSingleProject)
295305
)
296306

297307
Target "RunTestsNet" (fun _ ->
@@ -307,21 +317,26 @@ Target "RunTestsNet" (fun _ ->
307317
-- "./src/examples/**"
308318
rawProjects |> Seq.choose filterProjects
309319

310-
let runSingleProject project =
320+
let projectDlls = projects |> Seq.map ( fun project ->
321+
let assemblyName = fileNameWithoutExt project
322+
(directory project) @@ "bin" @@ "Release" @@ testNetVersion @@ assemblyName + ".dll"
323+
)
324+
325+
let runSingleProject projectDll =
311326
let arguments =
312327
match (hasTeamCity) with
313-
| true -> (sprintf "test -c Release --blame-crash --blame-hang-timeout 25m --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none -teamcity" testNetVersion outputTests)
314-
| false -> (sprintf "test -c Release --blame-crash --blame-hang-timeout 25m --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -parallel none" testNetVersion outputTests)
328+
| true -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\" -- -teamcity" projectDll testNetVersion outputTests)
329+
| false -> (sprintf "test \"%s\" --blame-crash --blame-hang-timeout 25m -l:trx -l:\"console;verbosity=normal\" --framework %s --results-directory \"%s\"" projectDll testNetVersion outputTests)
315330

316331
let result = ExecProcess(fun info ->
317332
info.FileName <- "dotnet"
318-
info.WorkingDirectory <- (Directory.GetParent project).FullName
333+
info.WorkingDirectory <- outputTests
319334
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
320335

321336
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
322337

323338
CreateDir outputTests
324-
projects |> Seq.iter (runSingleProject)
339+
projectDlls |> Seq.iter (runSingleProject)
325340
)
326341

327342
Target "MultiNodeTestsNetCore" (fun _ ->

0 commit comments

Comments
 (0)