mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-28 13:49:13 -05:00
4e8677a911
- If for some reason a action log file does not longer exist in the database or on the file system, then mark it as being cleaned up. - Unit test added.
31 lines
998 B
Go
31 lines
998 B
Go
// Copyright 2024 The Forgejo Authors. All rights reserved.
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
package actions
|
|
|
|
import (
|
|
"testing"
|
|
|
|
actions_model "code.gitea.io/gitea/models/actions"
|
|
"code.gitea.io/gitea/models/db"
|
|
"code.gitea.io/gitea/models/unittest"
|
|
"code.gitea.io/gitea/modules/timeutil"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestCleanup(t *testing.T) {
|
|
require.NoError(t, unittest.PrepareTestDatabase())
|
|
|
|
t.Run("Deletes no longer existing logs", func(t *testing.T) {
|
|
unittest.AssertSuccessfulInsert(t, &actions_model.ActionTask{ID: 1001, LogExpired: false, LogIndexes: []int64{1, 2, 3, 4}, LogFilename: "does-not-exist", Stopped: timeutil.TimeStamp(1)})
|
|
|
|
require.NoError(t, CleanupLogs(db.DefaultContext))
|
|
|
|
task := unittest.AssertExistsAndLoadBean(t, &actions_model.ActionTask{ID: 1001})
|
|
assert.EqualValues(t, "does-not-exist", task.LogFilename)
|
|
assert.True(t, task.LogExpired)
|
|
assert.Nil(t, task.LogIndexes)
|
|
})
|
|
}
|