Headless CMS and Content Managment Hub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

105 lines
3.0 KiB

Param(
[switch]$testInfrastructure,
[switch]$testAppsCore,
[switch]$testAppsEntities,
[switch]$testUsers,
[switch]$testWeb,
[switch]$testAll,
[switch]$noClean
)
$ErrorActionPreference = "Stop"
$folderReports = ".\_test-output"
$folderWorking = Get-Location
$versionOpenCover = "4.7.1221"
$versionReportGenerator = "5.4.1"
if ($testAll) {
$testInfrastructure = $true
$testAppsCore = $true
$testAppsEntities = $true
$testUsers = $true
$testWeb = $true
}
Write-Host "Test Infrastructure: $testInfrastructure"
Write-Host "Test Apps Core: $testAppsCore"
Write-Host "Test Apps Entities: $testAppsEntities"
Write-Host "Test Users: $testUsers"
Write-Host "Test Web: $testWeb"
if (!$noClean) {
if (Test-Path $folderReports) {
Remove-Item $folderReports -recurse
Write-Host "Recreated '$folderReports' folder"
}
}
if (!(Test-Path $folderReports)) {
New-Item -ItemType directory -Path $folderReports
}
if ($testInfrastructure) {
$projectName = "Squidex.Infrastructure.Tests"
dotnet test "$folderWorking\$projectName\$projectName.csproj" `
--no-restore `
--filter "Category!=Dependencies & Category!=TestContainer" `
--collect "XPlat Code Coverage" `
--results-directory "$folderReports" `
--settings "$folderWorking\coverlet.runsettings.xml"
}
if ($testAppsCore) {
$projectName = "Squidex.Domain.Apps.Core.Tests"
dotnet test "$folderWorking\$projectName\$projectName.csproj" `
--no-restore `
--filter "Category!=Dependencies & Category!=TestContainer" `
--collect "XPlat Code Coverage" `
--results-directory "$folderReports" `
--settings "$folderWorking\coverlet.runsettings.xml"
}
if ($testAppsEntities) {
$projectName = "Squidex.Domain.Apps.Entities.Tests"
dotnet test "$folderWorking\$projectName\$projectName.csproj" `
--no-restore `
--filter "Category!=Dependencies & Category!=TestContainer" `
--collect "XPlat Code Coverage" `
--results-directory "$folderReports" `
--settings "$folderWorking\coverlet.runsettings.xml"
}
if ($testUsers) {
$projectName = "Squidex.Domain.Users.Tests"
dotnet test "$folderWorking\$projectName\$projectName.csproj" `
--no-restore `
--filter "Category!=Dependencies & Category!=TestContainer" `
--collect "XPlat Code Coverage" `
--results-directory "$folderReports" `
--settings "$folderWorking\coverlet.runsettings.xml"
}
if ($testWeb) {
$projectName = "Squidex.Web.Tests"
dotnet test "$folderWorking\$projectName\$projectName.csproj" `
--no-restore `
--filter "Category!=Dependencies & Category!=TestContainer" `
--collect "XPlat Code Coverage" `
--results-directory "$folderReports" `
--settings "$folderWorking\coverlet.runsettings.xml"
}
dotnet tool install -g dotnet-reportgenerator-globaltool
reportgenerator `
-reports:"$folderReports\**\coverage.cobertura.xml" `
-targetdir:"$folderReports\report" `
-reporttypes:Html