I noticed at least in 2 places (suspending and resuming a job) that the testsuite calls drmaa_control and expects drmaa_job_ps to return a new state right after that. As far as I remember, the spec says that it is only guaranteed that drmaa_control requests the state change from DRM and that it doesn't have to block until the change takes place actually.
Your are right, citing GFD.130 Section 9.8: "This method SHALL return once the action has been acknowledged by the DRM system, but MAY return before the action has been completed." I think you talk about the cases where check_job_state() is immediately called after drmaa_control() . In the SVN trunk of test_drmaa.c, I would blame everything around line 1887, 2076, and 2091. Do you have other locations in mind ? I would propose to relax 'check_job_state()' with some timeout mechanism, in order to give all DRM's enough time to perform the state change in a visible way. Regards, Peter.