mirror of
https://github.com/optim-enterprises-bv/vault.git
synced 2025-11-02 03:27:54 +00:00
Fix LifetimeWatcher test using a buffered channel to ensure that we don't miss a renewal notice. (#14298)
This commit is contained in:
@@ -174,8 +174,10 @@ func TestLifetimeWatcher(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
doneCh := make(chan error, 1)
|
||||
go func() {
|
||||
v.doneCh <- v.doRenewWithOptions(false, false, tc.leaseDurationSeconds, "myleaseID", tc.renew, time.Second)
|
||||
doneCh <- v.doRenewWithOptions(false, false,
|
||||
tc.leaseDurationSeconds, "myleaseID", tc.renew, time.Second)
|
||||
}()
|
||||
defer v.Stop()
|
||||
|
||||
@@ -189,12 +191,15 @@ func TestLifetimeWatcher(t *testing.T) {
|
||||
if r.Secret != renewedSecret {
|
||||
t.Fatalf("expected secret %v, got %v", renewedSecret, r.Secret)
|
||||
}
|
||||
case err := <-v.DoneCh():
|
||||
case err := <-doneCh:
|
||||
if tc.expectError != nil && !errors.Is(err, tc.expectError) {
|
||||
t.Fatalf("expected error %q, got: %v", tc.expectError, err)
|
||||
}
|
||||
if tc.expectError == nil && err != nil {
|
||||
t.Fatalf("expected no error, got: %v", err)
|
||||
}
|
||||
if tc.expectRenewal {
|
||||
t.Fatal("expected at least one renewal")
|
||||
t.Fatalf("expected at least one renewal, got donech result: %v", err)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user