forgejo/tests/integration/session_test.go
TheFox0x7 ce563ade3d enable linter testifylint on v8 (#4573)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4573
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-committed-by: TheFox0x7 <thefox0x7@gmail.com>
2024-07-30 19:41:27 +00:00

38 lines
1,017 B
Go

// Copyright 2023 The Gitea Authors. All rights reserved.
// SPDX-License-Identifier: MIT
package integration
import (
"testing"
"code.gitea.io/gitea/models/auth"
"code.gitea.io/gitea/models/db"
"code.gitea.io/gitea/models/unittest"
"code.gitea.io/gitea/tests"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func Test_RegenerateSession(t *testing.T) {
defer tests.PrepareTestEnv(t)()
require.NoError(t, unittest.PrepareTestDatabase())
key := "new_key890123456" // it must be 16 characters long
key2 := "new_key890123457" // it must be 16 characters
exist, err := auth.ExistSession(db.DefaultContext, key)
require.NoError(t, err)
assert.False(t, exist)
sess, err := auth.RegenerateSession(db.DefaultContext, "", key)
require.NoError(t, err)
assert.EqualValues(t, key, sess.Key)
assert.Empty(t, sess.Data, 0)
sess, err = auth.ReadSession(db.DefaultContext, key2)
require.NoError(t, err)
assert.EqualValues(t, key2, sess.Key)
assert.Empty(t, sess.Data, 0)
}