PowerShell7/test/powershell/New-Object.Tests.ps1
2016-03-24 20:20:06 -07:00

35 lines
1.0 KiB
PowerShell

Describe "New-Object" {
It "should create an object with 4 fields" {
$o = New-Object psobject
$val = $o.GetType()
$val.IsPublic | Should Not BeNullOrEmpty
$val.Name | Should Not BeNullOrEmpty
$val.IsSerializable | Should Not BeNullOrEmpty
$val.BaseType | Should Not BeNullOrEmpty
$val.IsPublic | Should Be $true
$val.IsSerializable | Should Be $false
$val.Name | Should Be 'PSCustomObject'
$val.BaseType | Should Be 'System.Object'
}
It "should create an object with using Property switch" {
$hash = @{
FirstVal = 'test1'
SecondVal = 'test2'
}
$o = New-Object psobject -Property $hash
$o.FirstVal | Should Be 'test1'
$o.SecondVal | Should Be 'test2'
}
It "should create a .Net object with using ArgumentList switch" {
$o = New-Object -TypeName System.Version -ArgumentList "1.2.3.4"
$o.GetType() | Should Be ([System.Version])
$o | Should Be "1.2.3.4"
}
}