From df89e23bc1d76f93499eb0361ca2624d899e26ce Mon Sep 17 00:00:00 2001 From: DrIOS <58635327+DrIOSX@users.noreply.github.com> Date: Wed, 5 Jun 2024 14:07:19 -0500 Subject: [PATCH] add: simplified object build call --- source/tests/Test-BlockMailForwarding.ps1 | 5 ++- source/tests/Test-MailboxAuditingE5.ps1 | 46 +++++++++++------------ 2 files changed, 26 insertions(+), 25 deletions(-) diff --git a/source/tests/Test-BlockMailForwarding.ps1 b/source/tests/Test-BlockMailForwarding.ps1 index 5554b32..54fe9c2 100644 --- a/source/tests/Test-BlockMailForwarding.ps1 +++ b/source/tests/Test-BlockMailForwarding.ps1 @@ -9,6 +9,7 @@ function Test-BlockMailForwarding { # Dot source the class script if necessary #. .\source\Classes\CISAuditResult.ps1 # Initialization code, if needed + $recnum = "6.2.1" } process { @@ -37,7 +38,7 @@ function Test-BlockMailForwarding { } $params = @{ - Rec = "6.2.1" + Rec = $recnum Result = $forwardingBlocked Status = if ($forwardingBlocked) { "Pass" } else { "Fail" } Details = $details @@ -49,7 +50,7 @@ function Test-BlockMailForwarding { Write-Error "An error occurred during the test: $_" # Call Initialize-CISAuditResult with error parameters - $auditResult = Initialize-CISAuditResult -Rec "6.2.1" -Failure + $auditResult = Initialize-CISAuditResult -Rec $recnum -Failure } } diff --git a/source/tests/Test-MailboxAuditingE5.ps1 b/source/tests/Test-MailboxAuditingE5.ps1 index 3c5e949..3c84096 100644 --- a/source/tests/Test-MailboxAuditingE5.ps1 +++ b/source/tests/Test-MailboxAuditingE5.ps1 @@ -25,10 +25,10 @@ function Test-MailboxAuditingE5 { process { try { - foreach ($user in $allUsers) { - if ($processedUsers.ContainsKey($user.UserPrincipalName)) { - continue - } + foreach ($user in $allUsers) { + if ($processedUsers.ContainsKey($user.UserPrincipalName)) { + continue + } $licenseDetails = Get-MgUserLicenseDetail -UserId $user.UserPrincipalName @@ -69,28 +69,28 @@ function Test-MailboxAuditingE5 { Write-Verbose "User $($user.UserPrincipalName) does not have an Office E5 license." } + } + + # Prepare failure reasons and details based on compliance + $failureReasons = if ($allFailures.Count -eq 0) { "N/A" } else { "Audit issues detected." } + $details = if ($allFailures.Count -eq 0) { "All Office E5 users have correct mailbox audit settings." } else { $allFailures -join " | " } + + # Populate the audit result + $params = @{ + Rec = $recnum + Result = $allFailures.Count -eq 0 + Status = if ($allFailures.Count -eq 0) { "Pass" } else { "Fail" } + Details = $details + FailureReason = $failureReasons + } + $auditResult = Initialize-CISAuditResult @params } + catch { + Write-Error "An error occurred during the test: $_" - # Prepare failure reasons and details based on compliance - $failureReasons = if ($allFailures.Count -eq 0) { "N/A" } else { "Audit issues detected." } - $details = if ($allFailures.Count -eq 0) { "All Office E5 users have correct mailbox audit settings." } else { $allFailures -join " | " } - - # Populate the audit result - $params = @{ - Rec = $recnum - Result = $allFailures.Count -eq 0 - Status = if ($allFailures.Count -eq 0) { "Pass" } else { "Fail" } - Details = $details - FailureReason = $failureReasons + # Call Initialize-CISAuditResult with error parameters + $auditResult = Initialize-CISAuditResult -Rec $recnum -Failure } - $auditResult = Initialize-CISAuditResult @params - } - catch { - Write-Error "An error occurred during the test: $_" - - # Call Initialize-CISAuditResult with error parameters - $auditResult = Initialize-CISAuditResult -Rec $recnum -Failure - } } end {