@@ -87,7 +87,8 @@ func (suite *CookiePersistenceTestSuite) Test_CookiePersistence_Dynamic() {
8787 beName := suite .test .GetNS () + "_svc_http-echo_http"
8888 serverName := "SRV_1"
8989
90- suite .checkServerNoCookie (p , beName , serverName )
90+ err = suite .checkServerNoCookie (p , beName , serverName )
91+ suite .Require ().NoError (err , "check server no cookie" )
9192
9293 // ------------------------
9394 // Second step : remove annotation
@@ -118,7 +119,8 @@ func (suite *CookiePersistenceTestSuite) Test_CookiePersistence_Dynamic() {
118119 p , err = parser .New (options .Reader (reader ))
119120 suite .Require ().NoError (err , "Could not get Haproxy config parser" )
120121
121- suite .checkServerNoCookie (p , beName , serverName )
122+ err = suite .checkServerNoCookie (p , beName , serverName )
123+ suite .Require ().NoError (err , "check server no cookie" )
122124}
123125
124126// Expected backend
@@ -200,7 +202,8 @@ func (suite *CookiePersistenceTestSuite) Test_CookiePersistence_No_Dynamic() {
200202 p , err = parser .New (options .Reader (reader ))
201203 suite .Require ().NoError (err , "Could not get Haproxy config parser" )
202204
203- suite .checkServerNoCookie (p , beName , serverName )
205+ err = suite .checkServerNoCookie (p , beName , serverName )
206+ suite .Require ().NoError (err , "check server no cookie" )
204207}
205208
206209func (suite * CookiePersistenceTestSuite ) Test_CookiePersistence_Switch () {
@@ -245,7 +248,8 @@ func (suite *CookiePersistenceTestSuite) Test_CookiePersistence_Switch() {
245248 beName := suite .test .GetNS () + "_svc_http-echo_http"
246249 serverName := "SRV_1"
247250
248- suite .checkServerNoCookie (p , beName , serverName )
251+ err = suite .checkServerNoCookie (p , beName , serverName )
252+ suite .Require ().NoError (err , "check server no cookie" )
249253
250254 //----------------------
251255 // Step 2: not dynamic
@@ -316,16 +320,31 @@ func (suite *CookiePersistenceTestSuite) Test_CookiePersistence_Switch() {
316320 }, e2e .WaitDuration , e2e .TickDuration )
317321
318322 // Also check configuration
319- cfg , err = suite .test .GetIngressControllerFile ("/etc/haproxy/haproxy.cfg" )
320- suite .Require ().NoError (err , "Could not get Haproxy config" )
321-
322- suite .Require ().Contains (cfg , "cookie mycookie dynamic indirect nocache insert" )
323- suite .Require ().Contains (cfg , "dynamic-cookie-key" )
324-
325- // Check that the server line does not contain "cookie" param
326- reader = strings .NewReader (cfg )
327- p , err = parser .New (options .Reader (reader ))
328- suite .Require ().NoError (err , "Could not get Haproxy config parser" )
323+ suite .Eventually (func () bool {
324+ cfg , err = suite .test .GetIngressControllerFile ("/etc/haproxy/haproxy.cfg" )
325+ if err != nil {
326+ suite .T ().Logf ("Could not get Haproxy config: %v" , err )
327+ return false
328+ }
329+ if ! strings .Contains (cfg , "cookie mycookie dynamic indirect nocache insert" ) {
330+ return false
331+ }
332+ if ! strings .Contains (cfg , "dynamic-cookie-key" ) {
333+ return false
334+ }
335+ // Check that the server line does not contain "cookie" param
336+ reader = strings .NewReader (cfg )
337+ p , err = parser .New (options .Reader (reader ))
338+ if err != nil {
339+ suite .T ().Logf ("Could not get Haproxy config parser: %v" , err )
340+ return false
341+ }
342+ err = suite .checkServerNoCookie (p , beName , serverName )
343+ if err != nil {
344+ suite .T ().Logf ("check server no cookie: %v" , err )
345+ return false
346+ }
329347
330- suite .checkServerNoCookie (p , beName , serverName )
348+ return true
349+ }, e2e .WaitDuration , e2e .TickDuration )
331350}
0 commit comments