33 lines
788 B
PowerShell
33 lines
788 B
PowerShell
function Test-ConfigurationDataItemKeyMatch {
|
|
[CmdletBinding()]
|
|
Param(
|
|
[AllowNull()]
|
|
$Left,
|
|
[AllowNull()]
|
|
$Right,
|
|
[Parameter(Mandatory=$true)]
|
|
[String[]]
|
|
$KeyNames
|
|
)
|
|
|
|
if($KeyNames.Count -eq 0){
|
|
return $false
|
|
}
|
|
|
|
foreach($KeyName in $KeyNames){
|
|
if(-not (Test-ConfigurationDataItemContainsKey -Item $Left -KeyName $KeyName)){
|
|
return $false
|
|
}
|
|
|
|
if(-not (Test-ConfigurationDataItemContainsKey -Item $Right -KeyName $KeyName)){
|
|
return $false
|
|
}
|
|
|
|
if((Get-ConfigurationDataItemValue -Item $Left -KeyName $KeyName) -ne (Get-ConfigurationDataItemValue -Item $Right -KeyName $KeyName)){
|
|
return $false
|
|
}
|
|
}
|
|
|
|
return $true
|
|
}
|