Skip to content

Commit 85ac7ee

Browse files
reporting updates
1 parent 8a86ddb commit 85ac7ee

File tree

2 files changed

+46
-10
lines changed

2 files changed

+46
-10
lines changed

Modules/CIPPCore/Public/Add-CippTestResult.ps1

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ function Add-CippTestResult {
4747
[Parameter(Mandatory = $true)]
4848
[string]$TestId,
4949

50+
[Parameter(Mandatory = $true)]
51+
[string]$testType = 'identity',
52+
5053
[Parameter(Mandatory = $true)]
5154
[string]$Status,
5255

@@ -86,6 +89,7 @@ function Add-CippTestResult {
8689
UserImpact = $UserImpact ?? ''
8790
ImplementationEffort = $ImplementationEffort ?? ''
8891
Category = $Category ?? ''
92+
TestType = $TestType
8993
}
9094

9195
Add-CIPPAzDataTableEntity @Table -Entity $Entity -Force

Modules/CIPPCore/Public/Entrypoints/HTTP Functions/Invoke-ListTests.ps1

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,35 +25,67 @@ function Invoke-ListTests {
2525

2626
$TestResultsData = Get-CIPPTestResults -TenantFilter $TenantFilter
2727

28-
$TotalTests = 0
28+
$IdentityTotal = 0
29+
$DevicesTotal = 0
2930

3031
if ($ReportId) {
3132
$ReportTable = Get-CippTable -tablename 'CippReportTemplates'
3233
$Filter = "PartitionKey eq 'ReportingTemplate' and RowKey eq '{0}'" -f $ReportId
3334
$ReportTemplate = Get-CIPPAzDataTableEntity @ReportTable -Filter $Filter
3435

3536
if ($ReportTemplate) {
36-
$ReportTests = $ReportTemplate.Tests | ConvertFrom-Json
37-
$TotalTests = @($ReportTests).Count
38-
$FilteredTests = $TestResultsData.TestResults | Where-Object { $ReportTests -contains $_.TestId }
39-
$TestResultsData.TestResults = $FilteredTests
37+
$IdentityTests = @()
38+
$DeviceTests = @()
39+
40+
if ($ReportTemplate.identityTests) {
41+
$IdentityTests = $ReportTemplate.identityTests | ConvertFrom-Json
42+
$IdentityTotal = @($IdentityTests).Count
43+
}
44+
45+
if ($ReportTemplate.deviceTests) {
46+
$DeviceTests = $ReportTemplate.deviceTests | ConvertFrom-Json
47+
$DevicesTotal = @($DeviceTests).Count
48+
}
49+
50+
$AllReportTests = $IdentityTests + $DeviceTests
51+
$FilteredTests = $TestResultsData.TestResults | Where-Object { $AllReportTests -contains $_.RowKey }
52+
$TestResultsData.TestResults = @($FilteredTests)
4053
} else {
4154
Write-LogMessage -API $APIName -tenant $TenantFilter -message "Report template '$ReportId' not found" -sev Warning
4255
$TestResultsData.TestResults = @()
4356
}
4457
} else {
45-
$TotalTests = @($TestResultsData.TestResults).Count
58+
$IdentityTotal = @($TestResultsData.TestResults | Where-Object { $_.TestType -eq 'Identity' }).Count
59+
$DevicesTotal = @($TestResultsData.TestResults | Where-Object { $_.TestType -eq 'Devices' }).Count
4660
}
4761

62+
$IdentityResults = $TestResultsData.TestResults | Where-Object { $_.TestType -eq 'Identity' }
63+
$DeviceResults = $TestResultsData.TestResults | Where-Object { $_.TestType -eq 'Devices' }
64+
4865
$TestCounts = @{
49-
Successful = @($TestResultsData.TestResults | Where-Object { $_.Result -eq 'Passed' }).Count
50-
Failed = @($TestResultsData.TestResults | Where-Object { $_.Result -eq 'Failed' }).Count
51-
Skipped = @($TestResultsData.TestResults | Where-Object { $_.Result -eq 'Skipped' }).Count
52-
Total = $TotalTests
66+
Identity = @{
67+
Passed = @($IdentityResults | Where-Object { $_.Status -eq 'Passed' }).Count
68+
Failed = @($IdentityResults | Where-Object { $_.Status -eq 'Failed' }).Count
69+
Investigate = @($IdentityResults | Where-Object { $_.Status -eq 'Investigate' }).Count
70+
Skipped = @($IdentityResults | Where-Object { $_.Status -eq 'Skipped' }).Count
71+
Total = $IdentityTotal
72+
}
73+
Devices = @{
74+
Passed = @($DeviceResults | Where-Object { $_.Status -eq 'Passed' }).Count
75+
Failed = @($DeviceResults | Where-Object { $_.Status -eq 'Failed' }).Count
76+
Investigate = @($DeviceResults | Where-Object { $_.Status -eq 'Investigate' }).Count
77+
Skipped = @($DeviceResults | Where-Object { $_.Status -eq 'Skipped' }).Count
78+
Total = $DevicesTotal
79+
}
5380
}
5481

5582
$TestResultsData | Add-Member -NotePropertyName 'TestCounts' -NotePropertyValue $TestCounts -Force
5683

84+
$SecureScoreData = New-CIPPDbRequest -TenantFilter $TenantFilter -Type 'SecureScore'
85+
if ($SecureScoreData) {
86+
$TestResultsData | Add-Member -NotePropertyName 'SecureScore' -NotePropertyValue $SecureScoreData -Force
87+
}
88+
5789
$StatusCode = [HttpStatusCode]::OK
5890
$Body = $TestResultsData
5991

0 commit comments

Comments
 (0)