@@ -221,13 +221,11 @@ func TestProvisionerd(t *testing.T) {
221
221
closer := createProvisionerd (t ,func (ctx context.Context ) (proto.DRPCProvisionerDaemonClient ,error ) {
222
222
return createProvisionerDaemonClient (t ,provisionerDaemonTestServer {
223
223
acquireJob :func (ctx context.Context ,_ * proto.Empty ) (* proto.AcquiredJob ,error ) {
224
- if didAcquireJob .Load () {
225
- completeOnce .Do (func () {
226
- close (completeChan )
227
- })
224
+ if ! didAcquireJob .CAS (false ,true ) {
225
+ completeOnce .Do (func () {close (completeChan ) })
228
226
return & proto.AcquiredJob {},nil
229
227
}
230
- didAcquireJob . Store ( true )
228
+
231
229
return & proto.AcquiredJob {
232
230
JobId :"test" ,
233
231
Provisioner :"someprovisioner" ,
@@ -325,11 +323,11 @@ func TestProvisionerd(t *testing.T) {
325
323
closer := createProvisionerd (t ,func (ctx context.Context ) (proto.DRPCProvisionerDaemonClient ,error ) {
326
324
return createProvisionerDaemonClient (t ,provisionerDaemonTestServer {
327
325
acquireJob :func (ctx context.Context ,_ * proto.Empty ) (* proto.AcquiredJob ,error ) {
328
- if didAcquireJob .Load ( ) {
326
+ if ! didAcquireJob .CAS ( false , true ) {
329
327
completeOnce .Do (func () {close (completeChan ) })
330
328
return & proto.AcquiredJob {},nil
331
329
}
332
- didAcquireJob . Store ( true )
330
+
333
331
return & proto.AcquiredJob {
334
332
JobId :"test" ,
335
333
Provisioner :"someprovisioner" ,
@@ -395,11 +393,11 @@ func TestProvisionerd(t *testing.T) {
395
393
closer := createProvisionerd (t ,func (ctx context.Context ) (proto.DRPCProvisionerDaemonClient ,error ) {
396
394
return createProvisionerDaemonClient (t ,provisionerDaemonTestServer {
397
395
acquireJob :func (ctx context.Context ,_ * proto.Empty ) (* proto.AcquiredJob ,error ) {
398
- if didAcquireJob .Load ( ) {
396
+ if ! didAcquireJob .CAS ( false , true ) {
399
397
completeOnce .Do (func () {close (completeChan ) })
400
398
return & proto.AcquiredJob {},nil
401
399
}
402
- didAcquireJob . Store ( true )
400
+
403
401
return & proto.AcquiredJob {
404
402
JobId :"test" ,
405
403
Provisioner :"someprovisioner" ,