Windows PowerShell command on Get-command InModuleScope
MyWebUniversity

Windows PowerShell command on Get-command InModuleScope

NAME

InModuleScope

SYNOPSIS

Allows you to execute parts of a test script within the scope of a PowerShell script module.

SYNTAX

InModuleScope [-ModuleName] [-ScriptBlock] []

DESCRIPTION

By injecting some test code into the scope of a PowerShell

script module, you can use non-exported functions, aliases

and variables inside that module, to perform unit tests on its internal implementation.

InModuleScope may be used anywhere inside a Pester script,

either inside or outside a Describe block.

PARAMETERS

-ModuleName

The name of the module into which the test code should be injected. This module must already be loaded into the current PowerShell session. Required? true Position? 1 Default value Accept pipeline input? false Accept wildcard characters? false

-ScriptBlock

The code to be executed within the script module. Required? true Position? 2 Default value Accept pipeline input? false Accept wildcard characters? false This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).

INPUTS

OUTPUTS

-------------------------- EXAMPLE 1 --------------------------

PS C:\># The script module:

function PublicFunction { # Does something } function PrivateFunction {

return $true

}

Export-ModuleMember -Function PublicFunction

# The test script:

Import-Module MyModule

InModuleScope MyModule {

Describe 'Testing MyModule' { It 'Tests the Private function' {

PrivateFunction | Should Be $true

} } } Normally you would not be able to access "PrivateFunction" from the powershell session, because the module only exported

"PublicFunction". Using InModuleScope allowed this call to

"PrivateFunction" to work successfully.

RELATED LINKS



Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 OurUNIX.com ™