@@ -6552,16 +6552,40 @@ func TestOntapQtree_DestroyAsync(t *testing.T) {
65526552 }
65536553 for _ , test := range tests {
65546554 t .Run (test .name , func (t * testing.T ) {
6555- server := httptest .NewServer (http .HandlerFunc (test .mockFunction ))
6555+ var requests []struct {
6556+ Method string
6557+ Path string
6558+ }
6559+ var mu sync.Mutex
6560+ handler := func (w http.ResponseWriter , r * http.Request ) {
6561+ mu .Lock ()
6562+ requests = append (requests , struct {
6563+ Method string
6564+ Path string
6565+ }{Method : r .Method , Path : r .URL .Path })
6566+ mu .Unlock ()
6567+ test .mockFunction (w , r )
6568+ }
6569+
6570+ server := httptest .NewServer (http .HandlerFunc (handler ))
6571+
65566572 rs := newRestClient (server .Listener .Addr ().String (), server .Client ())
65576573 assert .NotNil (t , rs )
65586574
65596575 err := rs .QtreeDestroyAsync (ctx , "/vol1/qtree_vol1" , false )
65606576 if ! test .isErrorExpected {
65616577 assert .NoError (t , err , "could not delete the qtree" )
6578+ mu .Lock ()
6579+ assert .Len (t , requests , 2 , "expected exactly 2 requests (qtree lookup + delete); job poll would add GET to cluster/jobs" )
6580+ for _ , req := range requests {
6581+ assert .NotRegexp (t , `.*/cluster/jobs/.*` , req .Path ,
6582+ "must not poll job endpoint when qtree delete returns 202 Accepted; got %s %s" , req .Method , req .Path )
6583+ }
6584+ mu .Unlock ()
65626585 } else {
65636586 assert .Error (t , err , "qtree deleted" )
65646587 }
6588+
65656589 server .Close ()
65666590 })
65676591 }
0 commit comments