forked from OData/odata.net
-
Notifications
You must be signed in to change notification settings - Fork 0
/
PerformanceBuild.ps1
52 lines (40 loc) · 1.23 KB
/
PerformanceBuild.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Param
(
[String]
$Config = "Release"
)
If("Debug","Release" -notcontains $Config)
{
Write-Host "Usage: Performancebuild.ps1 -Config Debug|Release" -ForegroundColor Red
exit
}
Function ExecuteTests
{
Param(
[string]$projectRoot,
[string]$config,
[string]$servicePath,
[string]$baseName
)
$exeName = "$baseName.exe"
$exePath = "$projectRoot\bin\$config\$exeName";
Write-Host "*** Building tests project $projectRoot***"
dotnet build -c $config $projectRoot
if($LASTEXITCODE -eq 0)
{
Write-Host "Build $projectRoot SUCCESS" -ForegroundColor Green
write-host "`n"
}
else
{
Write-Host "Build FAILED" -ForegroundColor Red
exit
}
Write-Host "Running $exePath tests...";
&$exePath --filter * --envVars ServicePath:"$servicePath"
}
$location = Get-Location
$testServicePath = "$location\test\PerformanceTests\Framework\TestService"
$perfTestsRoot = "$location\test\PerformanceTests"
ExecuteTests "$perfTestsRoot\ComponentTests" $Config $testServicePath "Microsoft.OData.Performance.Component.Tests"
ExecuteTests "$perfTestsRoot\ServiceTests" $Config $testServicePath "Microsoft.OData.Performance.Service.Tests"