I have a series of tests that I keep in my head and run manually when testing job control. I can't use the existing testing framework for these because it's incapable of interacting with child processes in any of the modes (C++, fish script, or expect).
As the simplest example, we need a scripted way to do this in an interactive fish session:
- Run fish
- Start
foo | less - Send ^Z to the foreground job
- Run a fish command and error if we hang here
Any suggestions on how this might be accomplished? The Tcl/expect scripts can't do the first bolded step, or at least, I can't figure out how to get them to do it. Input seems to always be directed either to the (local) console or to fish itself, but does not reach child procs.