Skip to content

Commit a729c0e

Browse files
committed
tests/yanking: Extract YankRequestHelper trait to reduce code duplication
1 parent d87579a commit a729c0e

File tree

1 file changed

+4
-16
lines changed

1 file changed

+4
-16
lines changed

src/tests/krate/yanking.rs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,34 +3,22 @@ use crate::util::{RequestHelper, TestApp};
33
use crate::OkBool;
44
use http::StatusCode;
55

6-
impl crate::util::MockTokenUser {
6+
trait YankRequestHelper {
77
/// Yank the specified version of the specified crate and run all pending background jobs
8-
fn yank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool> {
9-
let url = format!("/api/v1/crates/{krate_name}/{version}/yank");
10-
let response = self.delete(&url);
11-
self.app().run_pending_background_jobs();
12-
response
13-
}
8+
fn yank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool>;
149

1510
/// Unyank the specified version of the specified crate and run all pending background jobs
16-
fn unyank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool> {
17-
let url = format!("/api/v1/crates/{krate_name}/{version}/unyank");
18-
let response = self.put(&url, &[]);
19-
self.app().run_pending_background_jobs();
20-
response
21-
}
11+
fn unyank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool>;
2212
}
2313

24-
impl crate::util::MockCookieUser {
25-
/// Yank the specified version of the specified crate and run all pending background jobs
14+
impl<T: RequestHelper> YankRequestHelper for T {
2615
fn yank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool> {
2716
let url = format!("/api/v1/crates/{krate_name}/{version}/yank");
2817
let response = self.delete(&url);
2918
self.app().run_pending_background_jobs();
3019
response
3120
}
3221

33-
/// Unyank the specified version of the specified crate and run all pending background jobs
3422
fn unyank(&self, krate_name: &str, version: &str) -> crate::util::Response<OkBool> {
3523
let url = format!("/api/v1/crates/{krate_name}/{version}/unyank");
3624
let response = self.put(&url, &[]);

0 commit comments

Comments
 (0)