Should-NotMatchString
Contributions are welcome in Pester-repo.
SYNOPSIS
Tests whether a string does not match a regular expression pattern.
SYNTAX
Should-NotMatchString [-Expected] <Object> [[-Actual] <Object>] [-CaseSensitive] [-Because <string>]
DESCRIPTION
The Should-NotMatchString assertion compares the actual string to the expected regular expression pattern using the -notmatch operator.
The -notmatch operator is case-insensitive by default, but you can make it case-sensitive by using the -CaseSensitive switch.
EXAMPLES
EXAMPLE 1
'Hello Jakub, your order #4821 shipped.' | Should-NotMatchString '\{\{.*?\}\}'
This assertion passes, because the rendered text contains no leftover \{\{ ... \}\} template placeholders.
This is a common check after expanding a template to make sure every token was replaced.
EXAMPLE 2
'level=info msg="started"' | Should-NotMatchString 'password='
This assertion passes, because the log line does not leak a password= value.
EXAMPLE 3
'Build failed' | Should-NotMatchString 'failed' -CaseSensitive
This assertion fails, because the actual value case-sensitively contains failed.
PARAMETERS
-Actual
The actual value.
Type: System.Object
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
Position: 1
IsRequired: false
ValueFromPipeline: true
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
-Because
The reason why the actual value should not match the regular expression pattern.
Type: System.String
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
-CaseSensitive
Indicates that the comparison should be case-sensitive.
Type: System.Management.Automation.SwitchParameter
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
Position: Named
IsRequired: false
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
-Expected
The expected regular expression pattern.
Type: System.Object
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
Position: 0
IsRequired: true
ValueFromPipeline: false
ValueFromPipelineByPropertyName: false
ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
INPUTS
System.Object
OUTPUTS
NOTES
Use the -ErrorAction parameter to control soft-assertion behavior for this assertion.
-ErrorAction Continue records the failure and lets the rest of the test run (a soft assertion), while -ErrorAction Stop fails the test immediately, for example to guard a precondition before continuing.
When -ErrorAction is not specified, the behavior comes from Should.ErrorAction in the configuration, which defaults to Stop.
See https://pester.dev/docs/assertions/soft-assertions for more about soft assertions.
RELATED LINKS
VERSION
This page was generated using comment-based help in Pester 6.0.0.