forked from NYANDEV/forgejo
ec12e54182
(cherry picked from commit 3ea0b287d74b8fc0dad08b2a539105e1aa1c1e67) (cherry picked from commit db8392a8ac093d4d3760e8bb40c56d8e194d44fb) (cherry picked from commit bd2a5fa2923c320e01faeaa1fdc1ad823c337027) (cherry picked from commit 235a91c4ae2ddd1810ca172c3306e091742f6912)
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)
|
|
})
|
|
}
|