feat(String): add Sting Helper functions
This commit is contained in:
parent
52369d540d
commit
b475e21f03
2 changed files with 63 additions and 0 deletions
21
PSConfluencePublisher/String.Tests.ps1
Executable file
21
PSConfluencePublisher/String.Tests.ps1
Executable file
|
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env pwsh
|
||||||
|
$ErrorActionPreference = "Stop"
|
||||||
|
|
||||||
|
BeforeAll {
|
||||||
|
Import-Module (Join-Path $PSScriptRoot 'PSConfluencePublisher.psd1') -Force
|
||||||
|
}
|
||||||
|
|
||||||
|
Describe 'Get-StringHash' `
|
||||||
|
{
|
||||||
|
Context 'default' `
|
||||||
|
{
|
||||||
|
It 'works' `
|
||||||
|
{
|
||||||
|
$result = Get-StringHash 'foobar'
|
||||||
|
|
||||||
|
$result.Hash | Should -Be (
|
||||||
|
'C3AB8FF13720E8AD9047DD3946' + `
|
||||||
|
'6B3C8974E592C2FA383D4A3960714CAEF0C4F2')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
42
PSConfluencePublisher/String.psm1
Executable file
42
PSConfluencePublisher/String.psm1
Executable file
|
|
@ -0,0 +1,42 @@
|
||||||
|
#!/usr/bin/env pwsh
|
||||||
|
|
||||||
|
function Get-StringHash
|
||||||
|
{
|
||||||
|
<#
|
||||||
|
.SYNOPSIS
|
||||||
|
Get hash value of a string
|
||||||
|
|
||||||
|
.DESCRIPTION
|
||||||
|
The Get-StringHash function is just a wrapper around the
|
||||||
|
Get-FileHash function and utilizes a stream for providing said
|
||||||
|
function with proper input values.
|
||||||
|
|
||||||
|
.OUTPUTS
|
||||||
|
Same as the Get-FileHash function
|
||||||
|
|
||||||
|
.EXAMPLE
|
||||||
|
Get-StringHash 'foobar' -Algorithm 'SHA256'
|
||||||
|
#>
|
||||||
|
Param(
|
||||||
|
[Parameter(Mandatory, Position = 0)] [String] $InputString,
|
||||||
|
[Parameter()] [String] $Algorithm = 'SHA256'
|
||||||
|
)
|
||||||
|
|
||||||
|
Begin
|
||||||
|
{
|
||||||
|
$stream = [IO.MemoryStream]::New()
|
||||||
|
|
||||||
|
$writer = [IO.StreamWriter]::New($stream)
|
||||||
|
|
||||||
|
$writer.Write($InputString)
|
||||||
|
|
||||||
|
$writer.Flush()
|
||||||
|
|
||||||
|
$stream.Position = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
Process
|
||||||
|
{
|
||||||
|
Get-FileHash -InputStream $stream -Algorithm $Algorithm
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue