@@ -7,6 +7,7 @@ package integration
7
7
import (
8
8
"net/http"
9
9
"testing"
10
+ "time"
10
11
11
12
"forgejo.org/models/db"
12
13
"forgejo.org/modules/setting"
@@ -97,9 +98,13 @@ func TestDatabaseCollation(t *testing.T) {
97
98
defer test .MockVariableValue (& setting .Database .CharsetCollation , "utf8mb4_bin" )()
98
99
require .NoError (t , db .ConvertDatabaseTable ())
99
100
100
- r , err := db .CheckCollations (x )
101
- require .NoError (t , err )
102
- assert .Equal (t , "utf8mb4_bin" , r .DatabaseCollation )
101
+ var r * db.CheckCollationsResult
102
+ assert .Eventually (t , func () bool {
103
+ r , err = db .CheckCollations (x )
104
+ require .NoError (t , err )
105
+
106
+ return r .DatabaseCollation == "utf8mb4_bin"
107
+ }, time .Second * 30 , time .Second )
103
108
assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
104
109
assert .Empty (t , r .InconsistentCollationColumns )
105
110
@@ -117,9 +122,13 @@ func TestDatabaseCollation(t *testing.T) {
117
122
defer test .MockVariableValue (& setting .Database .CharsetCollation , "utf8mb4_general_ci" )()
118
123
require .NoError (t , db .ConvertDatabaseTable ())
119
124
120
- r , err := db .CheckCollations (x )
121
- require .NoError (t , err )
122
- assert .Equal (t , "utf8mb4_general_ci" , r .DatabaseCollation )
125
+ var r * db.CheckCollationsResult
126
+ assert .Eventually (t , func () bool {
127
+ r , err = db .CheckCollations (x )
128
+ require .NoError (t , err )
129
+
130
+ return r .DatabaseCollation == "utf8mb4_general_ci"
131
+ }, time .Second * 30 , time .Second )
123
132
assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
124
133
assert .Empty (t , r .InconsistentCollationColumns )
125
134
@@ -137,9 +146,15 @@ func TestDatabaseCollation(t *testing.T) {
137
146
defer test .MockVariableValue (& setting .Database .CharsetCollation , "" )()
138
147
require .NoError (t , db .ConvertDatabaseTable ())
139
148
149
+ var r * db.CheckCollationsResult
140
150
r , err := db .CheckCollations (x )
141
151
require .NoError (t , err )
142
- assert .True (t , r .IsCollationCaseSensitive (r .DatabaseCollation ))
152
+ assert .Eventually (t , func () bool {
153
+ r , err = db .CheckCollations (x )
154
+ require .NoError (t , err )
155
+
156
+ return r .IsCollationCaseSensitive (r .DatabaseCollation )
157
+ }, time .Second * 30 , time .Second )
143
158
assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
144
159
assert .Empty (t , r .InconsistentCollationColumns )
145
160
})
0 commit comments