@@ -1660,20 +1660,22 @@ var _ = Describe("Scheduled Leases", func() {
16601660 It ("should acquire first lease at BeginTime, then second after first is released" , func () {
16611661 ctx := context .Background ()
16621662
1663- // Use same BeginTime for both to avoid timing races
1664- sharedBeginTime := metav1 .NewTime (time .Now ().Truncate (time .Second ).Add (1 * time .Second ))
1663+ // Give lease1 an earlier BeginTime to ensure deterministic ordering
1664+ // Stagger them closely so both BeginTimes will have passed by the time we check lease2
1665+ lease1BeginTime := metav1 .NewTime (time .Now ().Truncate (time .Second ).Add (1 * time .Second ))
1666+ lease2BeginTime := metav1 .NewTime (time .Now ().Truncate (time .Second ).Add (1 * time .Second + 100 * time .Millisecond ))
16651667
16661668 // Both leases target dut:b (only one exporter available)
16671669 lease1 := leaseDutA2Sec .DeepCopy ()
16681670 lease1 .Name = lease1Name
16691671 lease1 .Spec .Selector .MatchLabels ["dut" ] = "b"
1670- lease1 .Spec .BeginTime = & sharedBeginTime
1672+ lease1 .Spec .BeginTime = & lease1BeginTime
16711673 lease1 .Spec .Duration = & metav1.Duration {Duration : 10 * time .Second } // Long duration, but we'll release early
16721674
16731675 lease2 := leaseDutA2Sec .DeepCopy ()
16741676 lease2 .Name = lease2Name
16751677 lease2 .Spec .Selector .MatchLabels ["dut" ] = "b"
1676- lease2 .Spec .BeginTime = & sharedBeginTime
1678+ lease2 .Spec .BeginTime = & lease2BeginTime
16771679 lease2 .Spec .Duration = & metav1.Duration {Duration : 10 * time .Second }
16781680
16791681 Expect (k8sClient .Create (ctx , lease1 )).To (Succeed ())
0 commit comments