test(daemon): release shutdown lock before assertions
- commit
- cce35a80d6eead7a5807ec2caa68f506bda12594
- author
- brice · · 2026-08-01 09:47 UTC
- parent
- c9da028
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
1 file · +3 -2
M internal/usecase/daemon/role_effect_gate_test.go +3 -2
| @@ -370,12 +370,13 @@ func TestShutdownSignalsServeWhenParticipantGateAcquisitionTimesOut(t *testing.T | |||
| 370 | 370 | go func() { shutdownDone <- d.shutdownAll(ports.ReasonServerShutdown) }() | |
| 371 | 371 | ||
| 372 | 372 | deadline := awaitTestValue(t, clock.timers, "shutdown did not arm the gate acquisition deadline") | |
| 373 | - | deadline.ch <- time.Now() | |
| 373 | + | deadline.ch <- clock.Now() | |
| 374 | 374 | require.False(t, awaitTestValue(t, shutdownDone, "shutdown did not return after its gate acquisition deadline")) | |
| 375 | 375 | ||
| 376 | 376 | d.mu.Lock() | |
| 377 | - | require.Same(t, sess, d.sessions[sess.id], "timed-out initial teardown should leave the session for Serve's shutdown pass") | |
| 377 | + | registered := d.sessions[sess.id] | |
| 378 | 378 | d.mu.Unlock() | |
| 379 | + | require.Same(t, sess, registered, "timed-out initial teardown should leave the session for Serve's shutdown pass") | |
| 379 | 380 | select { | |
| 380 | 381 | case <-d.done: | |
| 381 | 382 | case <-time.After(time.Second): | |
| @@ -370,12 +370,13 @@ func TestShutdownSignalsServeWhenParticipantGateAcquisitionTimesOut(t *testing.T | |||||
| 370 | go func() { shutdownDone <- d.shutdownAll(ports.ReasonServerShutdown) }() | 370 | go func() { shutdownDone <- d.shutdownAll(ports.ReasonServerShutdown) }() | ||
| 371 | 371 | ||||
| 372 | deadline := awaitTestValue(t, clock.timers, "shutdown did not arm the gate acquisition deadline") | 372 | deadline := awaitTestValue(t, clock.timers, "shutdown did not arm the gate acquisition deadline") | ||
| 373 | - | deadline.ch <- time.Now() | 373 | + | deadline.ch <- clock.Now() |
| 374 | require.False(t, awaitTestValue(t, shutdownDone, "shutdown did not return after its gate acquisition deadline")) | 374 | require.False(t, awaitTestValue(t, shutdownDone, "shutdown did not return after its gate acquisition deadline")) | ||
| 375 | 375 | ||||
| 376 | d.mu.Lock() | 376 | d.mu.Lock() | ||
| 377 | - | require.Same(t, sess, d.sessions[sess.id], "timed-out initial teardown should leave the session for Serve's shutdown pass") | 377 | + | registered := d.sessions[sess.id] |
| 378 | d.mu.Unlock() | 378 | d.mu.Unlock() | ||
| 379 | + | require.Same(t, sess, registered, "timed-out initial teardown should leave the session for Serve's shutdown pass") | |||
| 379 | select { | 380 | select { | ||
| 380 | case <-d.done: | 381 | case <-d.done: | ||
| 381 | case <-time.After(time.Second): | 382 | case <-time.After(time.Second): | ||