I don't believe the code is even being touched.
This alone tells me your test environment is way too complicated, withy far too much untested code, any or all of which may be broken with unknown symptoms.
Why not just add a trivial main
to the Sound class to create a new instance, just keep ines 43-58 for now, on line 47 declare out
directly as a file output stream, and change the while loop to exit and close the file when you have written a few k bytes. That will give you something for a meaningful first test. You can restore the other bits one at a time, testing as you go, once that's working.
Here's a useful rule of thumb: if, while you are still coding, one run of a test reveals more than one new bug, you need to be running more and simpler tests.