Should-MatchString
Contributions are welcome in Pester-repo.
SYNOPSIS
Tests whether a string matches a regular expression pattern.
SYNTAX
Should-MatchString [[-Actual] <Object>] [-Expected] <Object> [-CaseSensitive] [-Because <String>]
[<CommonParameters>]
DESCRIPTION
The Should-MatchString assertion compares the actual string to the expected regular expression pattern using the -match operator.
The -match operator is case-insensitive by default, but you can make it case-sensitive by using the -CaseSensitive switch.
EXAMPLES
EXAMPLE 1
(New-Guid).Guid | Should-MatchString '^[0-9a-f-]{36}$'
This assertion passes, because a GUID is made up of 36 lowercase hexadecimal and dash characters.
EXAMPLE 2
'user-4f2a' | Should-MatchString '^user-[0-9a-f]{4}$'
This assertion passes, because the generated id matches the expected user- prefix followed by four hexadecimal characters.
This is handy for checking that a function returns ids, tokens or file names in the format you expect.
EXAMPLE 3
'Pester 6.0.0' | Should-MatchString 'pester \d+\.\d+\.\d+' -CaseSensitive
This assertion fails, because with -CaseSensitive the lowercase pester in the pattern does not match the capitalized Pester in the actual value.
PARAMETERS
-Actual
The actual value.
Type: Object
Parameter Sets: (All)
Aliases:
Required: False
Position: 2
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-Expected
The expected regular expression pattern.
Type: Object
Parameter Sets: (All)
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-CaseSensitive
Indicates that the comparison should be case-sensitive.
Type: SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-Because
The reason why the actual value should match the regular expression pattern.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
INPUTS
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
https://pester.dev/docs/commands/Should-MatchString
https://pester.dev/docs/assertions
VERSION
This page was generated using comment-based help in Pester 6.0.0-rc5.