There is likely something I don't understand here, because that doesn't seem to be the same as what is done now -- right now these files are loaded by the test suite rather than the jquery-xblock library, right? So it means that we are not testing the timings/promises or the load order.

For not storing it as a string, I agree - can't you leave the js as a file, and load its content as a string from the ajax mock, without having to manually add the content as a string in the ajax mock source code?