forked from forgejo/forgejo
[SEMVER] store SemVer in ForgejoSemVer after a database upgrade
(cherry picked from commitb7fe7cf401
) (cherry picked from commitcf339eed4f
) (cherry picked from commit4f3a16168b
) (cherry picked from commit6f5bbc53fc
)
This commit is contained in:
parent
64d4de2b66
commit
aca42b422e
9 changed files with 156 additions and 2 deletions
46
models/forgejo/semver/semver_test.go
Normal file
46
models/forgejo/semver/semver_test.go
Normal file
|
@ -0,0 +1,46 @@
|
|||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package semver
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"code.gitea.io/gitea/models/db"
|
||||
"code.gitea.io/gitea/models/unittest"
|
||||
|
||||
"github.com/hashicorp/go-version"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestForgejoSemVerSetGet(t *testing.T) {
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
ctx := db.DefaultContext
|
||||
|
||||
newVersion, err := version.NewVersion("v1.2.3")
|
||||
assert.NoError(t, err)
|
||||
assert.NoError(t, SetVersionString(ctx, newVersion.String()))
|
||||
databaseVersion, err := GetVersion(ctx)
|
||||
assert.NoError(t, err)
|
||||
assert.EqualValues(t, newVersion.String(), databaseVersion.String())
|
||||
assert.True(t, newVersion.Equal(databaseVersion))
|
||||
}
|
||||
|
||||
func TestForgejoSemVerMissing(t *testing.T) {
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
ctx := db.DefaultContext
|
||||
e := db.GetEngine(ctx)
|
||||
|
||||
_, err := e.Exec("delete from forgejo_sem_ver")
|
||||
assert.NoError(t, err)
|
||||
|
||||
v, err := GetVersion(ctx)
|
||||
assert.NoError(t, err)
|
||||
assert.EqualValues(t, "1.0.0", v.String())
|
||||
|
||||
_, err = e.Exec("drop table forgejo_sem_ver")
|
||||
assert.NoError(t, err)
|
||||
|
||||
v, err = GetVersion(ctx)
|
||||
assert.NoError(t, err)
|
||||
assert.EqualValues(t, "1.0.0", v.String())
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue