@@ -7,6 +7,7 @@ package integration
77import  (
88	"net/http" 
99	"testing" 
10+ 	"time" 
1011
1112	"forgejo.org/models/db" 
1213	"forgejo.org/modules/setting" 
@@ -97,9 +98,13 @@ func TestDatabaseCollation(t *testing.T) {
9798		defer  test .MockVariableValue (& setting .Database .CharsetCollation , "utf8mb4_bin" )()
9899		require .NoError (t , db .ConvertDatabaseTable ())
99100
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 )
103108		assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
104109		assert .Empty (t , r .InconsistentCollationColumns )
105110
@@ -117,9 +122,13 @@ func TestDatabaseCollation(t *testing.T) {
117122		defer  test .MockVariableValue (& setting .Database .CharsetCollation , "utf8mb4_general_ci" )()
118123		require .NoError (t , db .ConvertDatabaseTable ())
119124
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 )
123132		assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
124133		assert .Empty (t , r .InconsistentCollationColumns )
125134
@@ -137,9 +146,15 @@ func TestDatabaseCollation(t *testing.T) {
137146		defer  test .MockVariableValue (& setting .Database .CharsetCollation , "" )()
138147		require .NoError (t , db .ConvertDatabaseTable ())
139148
149+ 		var  r  * db.CheckCollationsResult 
140150		r , err  :=  db .CheckCollations (x )
141151		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 )
143158		assert .True (t , r .CollationEquals (r .ExpectedCollation , r .DatabaseCollation ))
144159		assert .Empty (t , r .InconsistentCollationColumns )
145160	})
0 commit comments