Skip to content

Add tests to verify RPC arguments for ADM_register_job.

RPC tests currently only verify that the RPC mechanism works, but make no attempt to check that the data sent by a client is actually received correctly by the server (and viceversa for RPC results). We should add the necessary machinery to verify that the complex arguments sent by the ADM_register_job RPC are received correctly, and if that works, we can extend the mechanism to the rest of RPCs.

The mechanism we envision would work as follows:

  • A scord server is started as a single CTest test (probably defined as a fixture).
  • A new test is defined to shutdown the scord server.
  • The scord server is configured to generate output to a temporary file.
  • The tests for ADM_register_job (i.e. c/ADM_register_job.c and cxx/ADM_register_job.cpp) are made to depend on the server startup and shutdown fixtures.
  • Each test for ADM_register_job is run and its output log is also saved to a temporary file.
  • A new test is defined that runs a (Python?) script that takes both temporary files and checks that both RPC arguments and return values match. This test should be made to depend both on the ADM_register_job tests in C and C++.