From 0f1f1b2f2991e30672706b58ca4af5b2cc1c92cf Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Wed, 8 Nov 2017 23:05:34 +0100 Subject: jenkins.rs: Allow `request_job` to work with the test mock Use the 'url' crate to split the passed in URL string and get its path part so we can use the mock HTTP server for testing. Otherwise, this requested the real Jenkins API URL and we couldn't test it. --- src/jenkins.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/jenkins.rs b/src/jenkins.rs index ff15428..9312113 100644 --- a/src/jenkins.rs +++ b/src/jenkins.rs @@ -23,8 +23,10 @@ extern crate json; extern crate mockito; extern crate reqwest; +extern crate url; use self::reqwest::header::{Authorization, Basic}; +use self::url::Url; use af83; use pull_request::CommitRef; @@ -102,11 +104,13 @@ pub fn get_jobs(repo_name: String) -> Vec { } pub fn request_job(url: String) -> Job { + let url = Url::parse(url.as_ref()).unwrap(); + let client = reqwest::Client::new(); let credentials = auth_credentials(); - let mut response = client.get(&format!("{}/api/json", url)) + let mut response = client.get(&format!("{}{}/api/json", API_URL, url.path())) .header(Authorization(credentials)) .send() .unwrap(); -- cgit v1.2.3