diff options
author | Teddy Wing | 2017-11-08 22:37:07 +0100 |
---|---|---|
committer | Teddy Wing | 2017-11-08 22:37:07 +0100 |
commit | d93d73e1a3504a84cd4a017174a8665a739e8045 (patch) | |
tree | ce5c9cdff660653637e822453e19ff96ea601f81 | |
parent | 2ccb61d165a7a638f5525639e2bc6906984e9140 (diff) | |
download | kipper-d93d73e1a3504a84cd4a017174a8665a739e8045.tar.bz2 |
jenkins.rs: Add test for `request_job`
This function will get a `Job` based on the response from requesting a
single build job from the Jenkins API.
-rw-r--r-- | src/jenkins.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/jenkins.rs b/src/jenkins.rs index f8bd3bb..1879574 100644 --- a/src/jenkins.rs +++ b/src/jenkins.rs @@ -175,6 +175,30 @@ mod tests { } #[test] + fn request_job_queries_a_job_from_the_jenkins_api() { + let mock = mock("GET", "/job/changes-branches/15/api/json") + .with_status(200) + .with_header("content-type", "application/json;charset=utf-8") + .with_body(r#" + { + "displayName": "2388-delete-the-codes-391af", + "result": "SUCCESS" + } + "#) + .create(); + + let job = request_job("http://jenkins.example.com/job/changes-branches/17".to_string()); + + let expected = Job { + display_name: "2388-delete-the-codes-391af".to_string(), + result: JobStatus::Success, + }; + + assert_eq!(job.display_name, expected.display_name); + assert_eq!(job.result, expected.result); + } + + #[test] fn job_for_commit_returns_true_when_commit_matches_job() { let job = Job { display_name: "1753-fix-everything-b4a28".to_string(), |