0
Gibt es eine einfache Möglichkeit, zwei Arrays von PsCustomObject
s zu vergleichen?Vergleichen Sie zwei Arrays von PsCustomObjects
Beispiel A (Reihenfolge unabhängig):
$Expected = @()
$Expected += [PsCustomObject]@{Table='patient';ColumnName='id'}
$Expected += [PsCustomObject]@{Table='patient';ColumnName='mrn'}
$Actual = @()
$Actual += [PsCustomObject]@{Table='patient';ColumnName='mrn'}
$Actual += [PsCustomObject]@{Table='patient';ColumnName='id'}
Compare-ByFoo ($Expected $Actual).Count | Should Be 0
Beispiel B (missing value):
$Expected = @()
$Expected += [PsCustomObject]@{Table='patient';ColumnName='id'}
$Expected += [PsCustomObject]@{Table='patient';ColumnName='mrn'}
$Actual = @()
$Actual += [PsCustomObject]@{Table='';ColumnName='id'}
$Actual += [PsCustomObject]@{Table='patient';ColumnName='id'}
Compare-ByFoo ($Expected $Actual).Count | Should Be 1
Beispiel C (fehlende Eigenschaft):
$Expected = @()
$Expected += [PsCustomObject]@{Table='patient';ColumnName='id'}
$Expected += [PsCustomObject]@{Table='patient';ColumnName='mrn'}
$Actual = @()
$Actual += [PsCustomObject]@{Table='patient'}
$Actual += [PsCustomObject]@{Table='patient';ColumnName='id'}
Compare-ByFoo ($Expected $Actual).Count | Should Be 1
Beispiel D (fehlende Aufzeichnung):
$Expected = @()
$Expected += [PsCustomObject]@{Table='patient';ColumnName='id'}
$Expected += [PsCustomObject]@{Table='patient';ColumnName='mrn'}
$Actual = @()
$Actual += [PsCustomObject]@{Table='patient';ColumnName='id'}
Compare-ByFoo ($Expected $Actual).Count | Should Be 1
Elegante Lösung. – craig