Support relative paths in source_dir

Without this change, `test_check` doesn't source helper files, since it (indirectly) passes a relative path to `source_dir`.