mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2026-05-19 01:06:36 +00:00
(cherry picked from commit3ea0b287d7) (cherry picked from commitdb8392a8ac) (cherry picked from commitbd2a5fa292) (cherry picked from commit235a91c4ae) (cherry picked from commitec12e54182) (cherry picked from commitd456d25d88) (cherry picked from commit4a332f73d1) (cherry picked from commitd59b79a72c) (cherry picked from commit0ec0e97b3b) (cherry picked from commit9d51094c53)
38 lines
1.2 KiB
Go
38 lines
1.2 KiB
Go
// Copyright 2023 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package hash
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestCheckSettingPasswordHashAlgorithm(t *testing.T) {
|
|
t.Run("pbkdf2 is pbkdf2_v2", func(t *testing.T) {
|
|
pbkdf2v2Config, pbkdf2v2Algo := SetDefaultPasswordHashAlgorithm("pbkdf2_v2")
|
|
pbkdf2Config, pbkdf2Algo := SetDefaultPasswordHashAlgorithm("pbkdf2")
|
|
|
|
assert.Equal(t, pbkdf2v2Config, pbkdf2Config)
|
|
assert.Equal(t, pbkdf2v2Algo.Specification, pbkdf2Algo.Specification)
|
|
})
|
|
|
|
for a, b := range aliasAlgorithmNames {
|
|
t.Run(a+"="+b, func(t *testing.T) {
|
|
aConfig, aAlgo := SetDefaultPasswordHashAlgorithm(a)
|
|
bConfig, bAlgo := SetDefaultPasswordHashAlgorithm(b)
|
|
|
|
assert.Equal(t, bConfig, aConfig)
|
|
assert.Equal(t, aAlgo.Specification, bAlgo.Specification)
|
|
})
|
|
}
|
|
|
|
t.Run("pbkdf2_hi is the default when default password hash algorithm is empty", func(t *testing.T) {
|
|
emptyConfig, emptyAlgo := SetDefaultPasswordHashAlgorithm("")
|
|
pbkdf2hiConfig, pbkdf2hiAlgo := SetDefaultPasswordHashAlgorithm("pbkdf2_hi")
|
|
|
|
assert.Equal(t, pbkdf2hiConfig, emptyConfig)
|
|
assert.Equal(t, pbkdf2hiAlgo.Specification, emptyAlgo.Specification)
|
|
})
|
|
}
|