def test_serialise_invalid_version(gitlab_api): runner = Runner.register("https://gitlab.cern.ch", gitlab_api.token) serialised_runner = json.loads(runner.dumps()) serialised_runner[0] = 2 as_string = json.dumps(serialised_runner) with pytest.raises(ValueError): Runner.loads(as_string) with tempfile.NamedTemporaryFile(mode="wt") as fp: json.dump(as_string, fp) fp.flush() with pytest.raises(ValueError): Runner.load(fp.name)
def test_serialise(gitlab_api): runner = Runner.register( "https://gitlab.cern.ch", gitlab_api.token, name="The runner name", description="The runner description", active=True, locked=False, run_untagged=True, tags=["dirac", "docker", "cvmfs"], maximum_timeout=24 * 60 * 60, version="1.0", revision="a94b1e", platform="linux", architecture="x86_64", executor="dirac", ) as_string = runner.dumps() runner_from_string = Runner.loads(as_string) assert runner == runner_from_string with tempfile.NamedTemporaryFile() as fp: runner.dump(fp.name) runner_from_file = Runner.load(fp.name) assert runner == runner_from_file