70 lines
1.9 KiB
PowerShell
70 lines
1.9 KiB
PowerShell
|
. $PSScriptRoot\..\..\Load-PesterModules.ps1
|
||
|
$here = Split-Path -Parent $MyInvocation.MyCommand.Path
|
||
|
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path) -replace '\.tests\.', '.'
|
||
|
$functionPath = Join-Path -Path $here -ChildPath $sut
|
||
|
Write-Host "Overriding SUT: $functionPath"
|
||
|
Import-Module $functionPath -Force
|
||
|
$moduleForMock = ""
|
||
|
|
||
|
Describe "Test-AlkamiFluentMigrationManifest10" {
|
||
|
Context "Test valid manifest - Core" {
|
||
|
$result = Test-AlkamiFluentMigrationManifest10 @{
|
||
|
runtime = 'core'
|
||
|
db_role = 'some name'
|
||
|
entryPoint = @(
|
||
|
'just an example.dll'
|
||
|
)
|
||
|
version = '3.3.1'
|
||
|
}
|
||
|
|
||
|
It "Tested successfully" {
|
||
|
$result.success | Should -BeTrue
|
||
|
}
|
||
|
|
||
|
It "Produced no error messages" {
|
||
|
$result.results.Count | Should -Be 0
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Context "Test valid manifest - Framework" {
|
||
|
$result = Test-AlkamiFluentMigrationManifest10 @{
|
||
|
runtime = 'framework'
|
||
|
db_role = 'some name'
|
||
|
entryPoint = @(
|
||
|
'just an example.dll'
|
||
|
)
|
||
|
}
|
||
|
|
||
|
It "Tested successfully" {
|
||
|
$result.success | Should -BeTrue
|
||
|
}
|
||
|
|
||
|
It "Produced no error messages" {
|
||
|
$result.results.Count | Should -Be 0
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Context "Test invalid manifest" {
|
||
|
$result = Test-AlkamiFluentMigrationManifest10 @{
|
||
|
runtime = 'invalid'
|
||
|
serverType = 'nonsense'
|
||
|
migrationType = @{
|
||
|
'#text' = ''
|
||
|
online = 'garbage'
|
||
|
}
|
||
|
}
|
||
|
|
||
|
It "Tested successfully" {
|
||
|
$result.success | Should -BeFalse
|
||
|
}
|
||
|
|
||
|
It "Actually produced warnings" {
|
||
|
$result.results | Should -Not -BeNullOrEmpty
|
||
|
}
|
||
|
|
||
|
It "Produced at least two warning statements" {
|
||
|
$result.results.Count | Should -BeGreaterOrEqual 2
|
||
|
}
|
||
|
}
|
||
|
}
|