Skip to content

Commit

Permalink
Merge pull request #83 from Azure/tests-for-wara-module
Browse files Browse the repository at this point in the history
Initial tests for wara module
  • Loading branch information
kpoineal authored Jan 28, 2025
2 parents b523f3f + 62988bb commit e94dc2c
Show file tree
Hide file tree
Showing 14 changed files with 42,673 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/modules/wara/wara.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ function Start-WARACollector {
#Build Resource Type Object
Write-Debug 'Building Resource Type Object with impactedResourceObj and advisorResourceObj'
Write-Progress -Activity 'WARA Collector' -Status 'Building Resource Type Object' -PercentComplete 78 -Id 1
$resourceTypeObj = Build-ResourceTypeObj -ResourceObj $ResourceInventory <# Adjusting this but keeping old code just in case. ($impactedResourceObj + $advisorResourceObj)#> -TypesNotInAPRLOrAdvisor $TypesNotInAPRLOrAdvisor
$resourceTypeObj = Build-ResourceTypeObj -ResourceObj $Scope_AllResources <# Adjusting this but keeping old code just in case. ($impactedResourceObj + $advisorResourceObj)#> -TypesNotInAPRLOrAdvisor $TypesNotInAPRLOrAdvisor
Write-Debug "Count of Resource Type Object : $($resourceTypeObj.count)"

#Get Azure Outages
Expand Down
182 changes: 182 additions & 0 deletions src/tests/data/wara/all-resources-data.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
[
{
"name": "resource-614",
"type": "microsoft.storage/storageaccounts",
"location": "westus2",
"resourceGroup": "rg-49",
"subscriptionId": "0000000-0000-0000-0000-000000000000",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614"
},
{
"name": "resource-620",
"type": "microsoft.storage/storageaccounts",
"location": "italynorth",
"resourceGroup": "rg-53",
"subscriptionId": "0000000-0000-0000-0000-000000000000",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620"
},
{
"name": "resource-347",
"type": "microsoft.storage/storageaccounts",
"location": "koreacentral",
"resourceGroup": "rg-7",
"subscriptionId": "2222222-2222-2222-2222-222222222222",
"id": "/subscriptions/2222222-2222-2222-2222-222222222222/resourcegroups/rg-7/providers/microsoft.storage/storageaccounts/resource-347",
"ResourceId": "/subscriptions/2222222-2222-2222-2222-222222222222/resourcegroups/rg-7/providers/microsoft.storage/storageaccounts/resource-347"
},
{
"name": "resource-784",
"type": "microsoft.storage/storageaccounts",
"location": "japanwest",
"resourceGroup": "rg-3",
"subscriptionId": "3333333-3333-3333-3333-333333333333",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-3/providers/microsoft.storage/storageaccounts/resource-784",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-3/providers/microsoft.storage/storageaccounts/resource-784"
},
{
"name": "resource-615",
"type": "microsoft.storage/storageaccounts",
"location": "japaneast",
"resourceGroup": "rg-49",
"subscriptionId": "0000000-0000-0000-0000-000000000000",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-615",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-615"
},
{
"name": "resource-708",
"type": "microsoft.servicebus/namespaces",
"location": "westus2",
"resourceGroup": "rg-5",
"subscriptionId": "3333333-3333-3333-3333-333333333333",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-5/providers/microsoft.servicebus/namespaces/resource-708",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-5/providers/microsoft.servicebus/namespaces/resource-708"
},
{
"name": "resource-705",
"type": "microsoft.servicebus/namespaces",
"location": "brazilsouth",
"resourceGroup": "rg-35",
"subscriptionId": "3333333-3333-3333-3333-333333333333",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-35/providers/microsoft.servicebus/namespaces/resource-705",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-35/providers/microsoft.servicebus/namespaces/resource-705"
},
{
"name": "resource-601",
"type": "microsoft.dbforpostgresql/flexibleservers",
"location": "eastasia",
"resourceGroup": "rg-61",
"subscriptionId": "0000000-0000-0000-0000-000000000000",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-61/providers/microsoft.dbforpostgresql/flexibleservers/resource-601",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-61/providers/microsoft.dbforpostgresql/flexibleservers/resource-601"
},
{
"name": "resource-766",
"type": "microsoft.dbforpostgresql/flexibleservers",
"location": "japaneast",
"resourceGroup": "rg-39",
"subscriptionId": "5555555-5555-5555-5555-555555555555",
"id": "/subscriptions/5555555-5555-5555-5555-555555555555/resourcegroups/rg-39/providers/microsoft.dbforpostgresql/flexibleservers/resource-766",
"ResourceId": "/subscriptions/5555555-5555-5555-5555-555555555555/resourcegroups/rg-39/providers/microsoft.dbforpostgresql/flexibleservers/resource-766"
},
{
"name": "resource-270",
"type": "microsoft.sql/managedinstances",
"location": "japaneast",
"resourceGroup": "rg-39",
"subscriptionId": "7777777-7777-7777-7777-777777777777",
"id": "/subscriptions/7777777-7777-7777-7777-777777777777/resourcegroups/rg-39/providers/microsoft.sql/managedinstances/resource-270",
"ResourceId": "/subscriptions/7777777-7777-7777-7777-777777777777/resourcegroups/rg-39/providers/microsoft.sql/managedinstances/resource-270"
},
{
"name": "pip1",
"type": "microsoft.network/publicipaddresses",
"location": "brazilsouth",
"resourceGroup": "avd-main",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/avd-main/providers/Microsoft.Network/publicIPAddresses/pip1",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/avd-main/providers/Microsoft.Network/publicIPAddresses/pip1"
},
{
"name": "AGManager",
"type": "microsoft.insights/actiongroups",
"location": "global",
"resourceGroup": "default-activitylogalerts",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-ActivityLogAlerts/providers/Microsoft.Insights/actiongroups/AGManager",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/Default-ActivityLogAlerts/providers/Microsoft.Insights/actiongroups/AGManager"
},
{
"name": "translator002601",
"type": "microsoft.cognitiveservices/accounts",
"location": "japaneast",
"resourceGroup": "doc-translation",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/doc-translation/providers/Microsoft.CognitiveServices/accounts/translator002601",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/doc-translation/providers/Microsoft.CognitiveServices/accounts/translator002601"
},
{
"name": "doctranslation002601",
"type": "microsoft.storage/storageaccounts",
"location": "japanwest",
"resourceGroup": "doc-translation",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/doc-translation/providers/Microsoft.Storage/storageAccounts/doctranslation002601",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/doc-translation/providers/Microsoft.Storage/storageAccounts/doctranslation002601"
},
{
"name": "NetworkWatcher_eastasia",
"type": "microsoft.network/networkwatchers",
"location": "eastasia",
"resourceGroup": "networkwatcherrg",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastasia",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastasia"
},
{
"name": "nodejs-devenv-vm1",
"type": "microsoft.compute/virtualmachines",
"location": "japaneast",
"resourceGroup": "nodejs-devenv",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/nodejs-devenv/providers/Microsoft.Compute/virtualMachines/nodejs-devenv-vm1",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/nodejs-devenv/providers/Microsoft.Compute/virtualMachines/nodejs-devenv-vm1"
},
{
"name": "nodejs-devenv-nsg",
"type": "microsoft.network/networksecuritygroups",
"location": "westus2",
"resourceGroup": "nodejs-devenv",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/nodejs-devenv/providers/Microsoft.Network/networkSecurityGroups/nodejs-devenv-nsg",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/nodejs-devenv/providers/Microsoft.Network/networkSecurityGroups/nodejs-devenv-nsg"
},
{
"name": "azuresubscription-egst",
"type": "microsoft.eventgrid/systemtopics",
"location": "global",
"resourceGroup": "whatnot",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/whatnot/providers/Microsoft.EventGrid/systemTopics/azuresubscription-egst",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/whatnot/providers/Microsoft.EventGrid/systemTopics/azuresubscription-egst"
},
{
"name": "restag0wi6-asp",
"type": "microsoft.web/serverfarms",
"location": "koreacentral",
"resourceGroup": "resource-tagging",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/resource-tagging/providers/Microsoft.Web/serverFarms/restag0wi6-asp",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/resource-tagging/providers/Microsoft.Web/serverFarms/restag0wi6-asp"
},
{
"name": "restag0wi6-func",
"type": "microsoft.web/sites",
"location": "italynorth",
"resourceGroup": "resource-tagging",
"subscriptionId": "11111111-1111-1111-1111-111111111111",
"id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/resource-tagging/providers/Microsoft.Web/sites/restag0wi6-func",
"ResourceId": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/resource-tagging/providers/Microsoft.Web/sites/restag0wi6-func"
}
]
105 changes: 105 additions & 0 deletions src/tests/data/wara/impacted-resources-data-multiple.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
[
{
"recommendationId": "e6c7e1cc-2f47-264d-aa50-1da421314472",
"name": "resource-614",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614",
"param1": "Param1",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614"
},
{
"recommendationId": "e6c7e1cc-2f47-264d-aa50-1da421314472",
"name": "resource-620",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620"
},
{
"recommendationId": "2ad78dec-5a4d-4a30-8fd1-8584335ad781",
"name": "resource-347",
"id": "/subscriptions/2222222-2222-2222-2222-222222222222/resourcegroups/rg-7/providers/microsoft.storage/storageaccounts/resource-347",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"ResourceId": "/subscriptions/2222222-2222-2222-2222-222222222222/resourcegroups/rg-7/providers/microsoft.storage/storageaccounts/resource-347"
},
{
"recommendationId": "2ad78dec-5a4d-4a30-8fd1-8584335ad781",
"name": "resource-784",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-3/providers/microsoft.storage/storageaccounts/resource-784",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-3/providers/microsoft.storage/storageaccounts/resource-784"
},
{
"recommendationId": "dc55be60-6f8c-461e-a9d5-a3c7686ed94e",
"name": "resource-614",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614",
"param1": "Param1",
"param2": "Param2",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-614"
},
{
"recommendationId": "dc55be60-6f8c-461e-a9d5-a3c7686ed94e",
"name": "resource-615",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-615",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-49/providers/microsoft.storage/storageaccounts/resource-615"
},
{
"recommendationId": "f075a1bd-de9e-4819-9a1d-1ac41037a74f",
"name": "resource-708",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-5/providers/microsoft.servicebus/namespaces/resource-708",
"param1": "Param1",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-5/providers/microsoft.servicebus/namespaces/resource-708"
},
{
"recommendationId": "f075a1bd-de9e-4819-9a1d-1ac41037a74f",
"name": "resource-705",
"id": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-35/providers/microsoft.servicebus/namespaces/resource-705",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/3333333-3333-3333-3333-333333333333/resourcegroups/rg-35/providers/microsoft.servicebus/namespaces/resource-705"
},
{
"recommendationId": "ca87914f-aac4-4783-ab67-82a6f936f194",
"name": "resource-601",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-61/providers/microsoft.dbforpostgresql/flexibleservers/resource-601",
"param1": "Param1",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-61/providers/microsoft.dbforpostgresql/flexibleservers/resource-601"
},
{
"recommendationId": "ca87914f-aac4-4783-ab67-82a6f936f194",
"name": "resource-766",
"id": "/subscriptions/5555555-5555-5555-5555-555555555555/resourcegroups/rg-39/providers/microsoft.dbforpostgresql/flexibleservers/resource-766",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/5555555-5555-5555-5555-555555555555/resourcegroups/rg-39/providers/microsoft.dbforpostgresql/flexibleservers/resource-766"
}
]
15 changes: 15 additions & 0 deletions src/tests/data/wara/impacted-resources-data-single.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[
{
"recommendationId": "e6c7e1cc-2f47-264d-aa50-1da421314472",
"name": "resource-620",
"id": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620",
"param1": "Param1",
"param2": "Param2",
"param3": "Param3",
"param4": "Param4",
"param5": "Param5",
"checkName": "CheckName",
"selector": "Selector",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/rg-53/providers/microsoft.storage/storageaccounts/resource-620"
}
]
Loading

0 comments on commit e94dc2c

Please sign in to comment.