@@ -534,27 +534,26 @@ func TestKubeMiddleware(t *testing.T) {
534
534
require .NoError (t , err )
535
535
536
536
var rw * responsewriters.MemoryResponseWriter
537
- // We use `require.Eventually ` to avoid a very rare test flakiness case when reissue goroutine manages to
537
+ // We use `require.EventuallyWithT ` to avoid a very rare test flakiness case when reissue goroutine manages to
538
538
// successfully finish before the parent goroutine has a chance to check the context (and see that it's expired).
539
- require .Eventually (t , func () bool {
539
+ require .EventuallyWithT (t , func (t * assert. CollectT ) {
540
540
rw = responsewriters .NewMemoryResponseWriter ()
541
541
// HandleRequest will reissue certificate if needed.
542
542
km .HandleRequest (rw , req )
543
543
544
544
// request timed out.
545
- return rw .Status () == http .StatusInternalServerError
545
+ assert .Equal (t , http .StatusInternalServerError , rw .Status ())
546
+ assert .Contains (t , rw .Buffer ().String (), "context canceled" )
546
547
547
- }, 5 * time .Second , 100 * time .Millisecond )
548
- require .Contains (t , rw .Buffer ().String (), "context canceled" )
549
-
550
- // just let the reissuing goroutine some time to replace certs.
551
- time .Sleep (10 * time .Millisecond )
548
+ // but certificate still was reissued.
549
+ certs , err := km .OverwriteClientCerts (req )
550
+ assert .NoError (t , err )
551
+ if ! assert .Len (t , certs , 1 ) {
552
+ return
553
+ }
554
+ assert .Equal (t , newCert , certs [0 ], "certificate was not reissued" )
552
555
553
- // but certificate still was reissued.
554
- certs , err := km .OverwriteClientCerts (req )
555
- require .NoError (t , err )
556
- require .Len (t , certs , 1 )
557
- require .Equal (t , newCert , certs [0 ], "certificate was not reissued" )
556
+ }, 15 * time .Second , 100 * time .Millisecond )
558
557
})
559
558
560
559
getStartCerts := func () KubeClientCerts {
0 commit comments