Skip to content

Commit ca3469e

Browse files
committed
fix
1 parent 775421e commit ca3469e

File tree

2 files changed

+4
-46
lines changed

2 files changed

+4
-46
lines changed

models/unittest/fixtures.go

Lines changed: 1 addition & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,12 @@
44
package unittest
55

66
import (
7-
"fmt"
8-
97
"code.gitea.io/gitea/models/db"
108
"code.gitea.io/gitea/modules/auth/password/hash"
119
"code.gitea.io/gitea/modules/setting"
1210
"code.gitea.io/gitea/modules/util"
1311

1412
"xorm.io/xorm"
15-
"xorm.io/xorm/schemas"
1613
)
1714

1815
var defaultFixturesLoader *fixturesLoader
@@ -32,47 +29,7 @@ func InitFixtures(opts FixturesOptions, engine ...*xorm.Engine) (err error) {
3229
return err
3330
}
3431

35-
func loadFixtureResetSeqPgsql(e *xorm.Engine) error {
36-
results, err := e.QueryString(`SELECT 'SELECT SETVAL(' ||
37-
quote_literal(quote_ident(PGT.schemaname) || '.' || quote_ident(S.relname)) ||
38-
', COALESCE(MAX(' ||quote_ident(C.attname)|| '), 1) ) FROM ' ||
39-
quote_ident(PGT.schemaname)|| '.'||quote_ident(T.relname)|| ';'
40-
FROM pg_class AS S,
41-
pg_depend AS D,
42-
pg_class AS T,
43-
pg_attribute AS C,
44-
pg_tables AS PGT
45-
WHERE S.relkind = 'S'
46-
AND S.oid = D.objid
47-
AND D.refobjid = T.oid
48-
AND D.refobjid = C.attrelid
49-
AND D.refobjsubid = C.attnum
50-
AND T.relname = PGT.tablename
51-
ORDER BY S.relname;`)
52-
if err != nil {
53-
return fmt.Errorf("failed to generate sequence update: %w", err)
54-
}
55-
for _, r := range results {
56-
for _, value := range r {
57-
_, err = e.Exec(value)
58-
if err != nil {
59-
return fmt.Errorf("failed to update sequence: %s, error: %w", value, err)
60-
}
61-
}
62-
}
63-
return nil
64-
}
65-
6632
// LoadFixtures load fixtures for a test database
6733
func LoadFixtures() error {
68-
if err := defaultFixturesLoader.Load(); err != nil {
69-
return err
70-
}
71-
// Now if we're running postgres we need to tell it to update the sequences
72-
if defaultFixturesLoader.engine.Dialect().URI().DBType == schemas.POSTGRES {
73-
if err := loadFixtureResetSeqPgsql(defaultFixturesLoader.engine); err != nil {
74-
return err
75-
}
76-
}
77-
return nil
34+
return defaultFixturesLoader.Load()
7835
}

models/unittest/fixtures_loader.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ func (f *fixturesLoader) prepareFieldValue(v any) any {
3131
}
3232
return v
3333
}
34+
3435
func (f *fixturesLoader) loadFixtures(file string) error {
3536
data, err := os.ReadFile(file)
3637
if err != nil {
@@ -51,9 +52,9 @@ func (f *fixturesLoader) loadFixtures(file string) error {
5152

5253
switch f.engine.Dialect().URI().DBType {
5354
case schemas.MSSQL:
54-
_, _ = f.engine.Exec("SET IDENTITY_INSERT [%s] ON", tableName)
55+
_, _ = f.engine.Exec(fmt.Sprintf("SET IDENTITY_INSERT `%s` ON", tableName))
5556
defer func() {
56-
_, _ = f.engine.Exec("SET IDENTITY_INSERT [%s] OFF", tableName)
57+
_, _ = f.engine.Exec(fmt.Sprintf("SET IDENTITY_INSERT `%s` OFF", tableName))
5758
}()
5859
}
5960

0 commit comments

Comments
 (0)