Resources/Module/src/Tests/v5/Unit/Private/Private-Function.Tests.ps1
#------------------------------------------------------------------------- Set-Location -Path $PSScriptRoot #------------------------------------------------------------------------- $ModuleName = '<%=$PLASTER_PARAM_ModuleName%>' $PathToManifest = [System.IO.Path]::Combine('..', '..', '..', $ModuleName, "$ModuleName.psd1") #------------------------------------------------------------------------- if (Get-Module -Name $ModuleName -ErrorAction 'SilentlyContinue') { #if the module is already in memory, remove it Remove-Module -Name $ModuleName -Force } Import-Module $PathToManifest -Force #------------------------------------------------------------------------- InModuleScope '<%=$PLASTER_PARAM_ModuleName%>' { #------------------------------------------------------------------------- $WarningPreference = "SilentlyContinue" #------------------------------------------------------------------------- Describe 'Get-Day Private Function Tests' -Tag Unit { BeforeAll { $WarningPreference = 'SilentlyContinue' $ErrorActionPreference = 'SilentlyContinue' } #beforeAll Context 'Error' { It 'should return unknown if an error is encountered getting the date' { Mock -CommandName Get-Date -MockWith { throw 'Fake Error' } #endMock Get-Day | Should -BeExactly 'Unknown' } #it } #context_Error Context 'Success' { BeforeEach { Mock -CommandName Get-Date -MockWith { [PSCustomObject]@{ DisplayHint = 'DateTime' DateTime = 'Thursday, June 11, 2021 21:08:41' Date = '06/11/21 00:00:00' Day = '10' DayOfWeek = 'Friday' DayOfYear = '162' Hour = '21' Kind = 'Local' Millisecond = '989' Minute = '8' Month = '6' Second = '41' Ticks = '637589561219896868' TimeOfDay = '21:08:41.9896868' Year = '2021' } } #endMock } #beforeEach It 'should return the expected results' { Get-Day | Should -BeExactly 'Friday' } #it } #context_Success } #describe_Get-HellowWorld } #inModule |