@@ -86,7 +86,7 @@ func (tt *TermTest) ExpectCustom(consumer consumer, opts ...SetExpectOpt) (rerr
8686 return fmt .Errorf ("could not create expect options: %w" , err )
8787 }
8888
89- cons , err := tt .outputProducer .addConsumer (consumer , expectOpts .ToConsumerOpts ()... )
89+ cons , err := tt .outputProducer .addConsumer (tt , consumer , expectOpts .ToConsumerOpts ()... )
9090 if err != nil {
9191 return fmt .Errorf ("could not add consumer: %w" , err )
9292 }
@@ -180,11 +180,11 @@ func (tt *TermTest) expectExitCode(exitCode int, match bool, opts ...SetExpectOp
180180 select {
181181 case <- time .After (timeoutV ):
182182 return fmt .Errorf ("after %s: %w" , timeoutV , TimeoutError )
183- case err := <- waitChan (tt . cmd . Wait ):
184- if err != nil && (tt . cmd . ProcessState == nil || tt . cmd .ProcessState .ExitCode () == 0 ) {
185- return fmt .Errorf ("cmd wait failed: %w" , err )
183+ case state := <- ttExited (tt , false ):
184+ if state . Err != nil && (state . ProcessState == nil || state .ProcessState .ExitCode () == 0 ) {
185+ return fmt .Errorf ("cmd wait failed: %w" , state . Err )
186186 }
187- if err := tt .assertExitCode (tt . cmd .ProcessState .ExitCode (), exitCode , match ); err != nil {
187+ if err := tt .assertExitCode (state .ProcessState .ExitCode (), exitCode , match ); err != nil {
188188 return err
189189 }
190190 }
0 commit comments