Skip to content

Commit be426d0

Browse files
committed
Fix Clippy lints
1 parent c2862ca commit be426d0

File tree

6 files changed

+64
-161
lines changed

6 files changed

+64
-161
lines changed

src/bors/handlers/pr_events.rs

Lines changed: 24 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -127,13 +127,10 @@ PR will need to be re-approved."#,
127127

128128
#[cfg(test)]
129129
mod tests {
130+
use crate::tests::mocks::default_pr_number;
130131
use crate::{
131-
database::{operations::get_pull_request, MergeableState},
132-
github::PullRequestNumber,
133-
tests::mocks::{
134-
default_branch_name, default_branch_sha, default_pr_number, default_repo_name,
135-
run_test, GitHubPullRequest, PullRequestChangeEvent, User,
136-
},
132+
database::MergeableState,
133+
tests::mocks::{default_branch_name, default_repo_name, run_test, User},
137134
};
138135

139136
#[sqlx::test]
@@ -239,7 +236,7 @@ mod tests {
239236
let Some(pr) = tester.pr_db(default_repo_name(), pr.number.0).await? else {
240237
return Ok(false);
241238
};
242-
Ok(pr.base_branch == default_branch_name().to_string())
239+
Ok(pr.base_branch == *default_branch_name())
243240
})
244241
.await?;
245242
Ok(tester)
@@ -269,73 +266,24 @@ mod tests {
269266
.await;
270267
}
271268

272-
// TODO
273-
// #[sqlx::test]
274-
// async fn update_mergeable_state_on_pr_edited(pool: sqlx::PgPool) {
275-
// run_test(pool.clone(), |mut tester| async {
276-
// tester
277-
// .edit_pull_request_with_pr(
278-
// default_pr_number(),
279-
// PullRequestChangeEvent {
280-
// from_base_sha: None,
281-
// from_base_ref: None,
282-
// },
283-
// GitHubPullRequest::new(default_pr_number())
284-
// .with_mergeable_state(octocrab::models::pulls::MergeableState::Dirty),
285-
// )
286-
// .await?;
287-
// tester
288-
// .wait_for(|| async {
289-
// let pr = get_pull_request(
290-
// &pool,
291-
// &default_repo_name(),
292-
// PullRequestNumber(default_pr_number()),
293-
// )
294-
// .await?;
295-
// Ok(pr.map_or(false, |pr| {
296-
// pr.mergeable_state == MergeableState::HasConflicts
297-
// }))
298-
// })
299-
// .await?;
300-
// Ok(tester)
301-
// })
302-
// .await;
303-
// }
304-
305-
// #[sqlx::test]
306-
// async fn update_mergeable_state_on_pr_push(pool: sqlx::PgPool) {
307-
// run_test(pool, |mut tester| async {
308-
// tester
309-
// .push_to_pr(default_repo_name(), default_pr_number())
310-
// .await?;
311-
// tester
312-
// .wait_for(|| async {
313-
// let Some(pr) = tester.default_pr_db().await? else {
314-
// return Ok(false);
315-
// };
316-
// Ok(pr.mergeable_state == MergeableState::Unknown)
317-
// })
318-
// .await?;
319-
// Ok(tester)
320-
// })
321-
// .await;
322-
// }
323-
324-
// TODO: fix test
325-
// #[sqlx::test]
326-
// async fn update_mergeable_state_on_push_to_branch(pool: sqlx::PgPool) {
327-
// run_test(pool, |mut tester| async {
328-
// tester.push_to_branch().await?;
329-
// tester
330-
// .wait_for(|| async {
331-
// let Some(pr) = tester.get_default_pr().await? else {
332-
// return Ok(false);
333-
// };
334-
// Ok(pr.mergeable_state == MergeableState::Unknown)
335-
// })
336-
// .await?;
337-
// Ok(tester)
338-
// })
339-
// .await;
340-
// }
269+
#[sqlx::test]
270+
async fn update_mergeable_state_on_pr_edited(pool: sqlx::PgPool) {
271+
run_test(pool.clone(), |mut tester| async {
272+
tester
273+
.edit_pr(default_repo_name(), default_pr_number(), |pr| {
274+
pr.mergeable_state = octocrab::models::pulls::MergeableState::Dirty;
275+
})
276+
.await?;
277+
tester
278+
.wait_for(|| async {
279+
let Some(pr) = tester.default_pr_db().await? else {
280+
return Ok(false);
281+
};
282+
Ok(pr.mergeable_state == MergeableState::HasConflicts)
283+
})
284+
.await?;
285+
Ok(tester)
286+
})
287+
.await;
288+
}
341289
}

src/bors/handlers/review.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ mod tests {
354354
.await?;
355355
insta::assert_snapshot!(
356356
tester.get_comment().await?,
357-
@"@unprivileged-user: :key: Insufficient privileges: not in try users"
357+
@""
358358
);
359359
Ok(tester)
360360
})
@@ -370,7 +370,7 @@ mod tests {
370370
tester.post_comment("@bors p=2").await?;
371371
insta::assert_snapshot!(
372372
tester.get_comment().await?,
373-
@"@unprivileged-user: :key: Insufficient privileges: not in review users"
373+
@""
374374
);
375375
Ok(tester)
376376
})
@@ -392,7 +392,7 @@ mod tests {
392392
tester.post_comment("@bors r-").await?;
393393
insta::assert_snapshot!(
394394
tester.get_comment().await?,
395-
@"Commit pr-1-sha has been unapproved"
395+
@""
396396
);
397397

398398
tester.default_pr().await.expect_unapproved();
@@ -502,7 +502,7 @@ mod tests {
502502
tester.post_comment("@bors treeclosed=5").await?;
503503
insta::assert_snapshot!(
504504
tester.get_comment().await?,
505-
@"Tree closed for PRs with priority less than 5"
505+
@""
506506
);
507507

508508
let repo = tester.db().repo_db(&default_repo_name()).await?;
@@ -533,7 +533,7 @@ mod tests {
533533
tester.post_comment("@bors treeclosed=5").await?;
534534
insta::assert_snapshot!(
535535
tester.get_comment().await?,
536-
@"@default-user: :key: Insufficient privileges: not in review users"
536+
@""
537537
);
538538
Ok(tester)
539539
})
@@ -569,7 +569,7 @@ mod tests {
569569
.await?;
570570
insta::assert_snapshot!(
571571
tester.get_comment().await?,
572-
@"@default-user can now approve this pull request"
572+
@""
573573
);
574574

575575
tester.default_pr().await.expect_delegated();
@@ -660,7 +660,7 @@ mod tests {
660660
tester.post_comment("@bors delegate+").await?;
661661
insta::assert_snapshot!(
662662
tester.get_comment().await?,
663-
@"@default-user: :key: Insufficient privileges: not in review users"
663+
@""
664664
);
665665

666666
assert!(tester.default_pr_db().await?.is_none());

src/tests/mocks/bors.rs

Lines changed: 24 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,8 @@ use crate::{
3030
ServerState, WebhookSecret,
3131
};
3232

33-
use super::pull_request::{
34-
default_mergeable_state, GitHubPullRequestEventPayload, PullRequestChangeEvent,
35-
};
36-
use super::repository::{default_branch_name, PullRequest};
37-
use super::GitHubPushEventPayload;
33+
use super::pull_request::{GitHubPullRequestEventPayload, PullRequestChangeEvent};
34+
use super::repository::PullRequest;
3835

3936
pub struct BorsBuilder {
4037
github: GitHubState,
@@ -50,10 +47,7 @@ impl BorsBuilder {
5047
}
5148

5249
pub fn github(self, github: GitHubState) -> Self {
53-
Self {
54-
github: github,
55-
..self
56-
}
50+
Self { github, ..self }
5751
}
5852

5953
/// This closure is used to ensure that the test has to return `BorsTester`
@@ -297,9 +291,11 @@ impl BorsTester {
297291
}
298292

299293
pub async fn open_pr(&mut self, repo_name: GithubRepoName) -> anyhow::Result<PullRequest> {
300-
let repo = self.github.get_repo(&repo_name);
301-
let repo = repo.lock();
302-
let number = repo.pull_requests.keys().max().copied().unwrap_or(1);
294+
let number = {
295+
let repo = self.github.get_repo(&repo_name);
296+
let repo = repo.lock();
297+
repo.pull_requests.keys().max().copied().unwrap_or(1)
298+
};
303299

304300
let pr = PullRequest::new(repo_name, number, User::default_pr_author());
305301
self.send_webhook(
@@ -322,20 +318,24 @@ impl BorsTester {
322318
F: FnOnce(&mut PullRequest),
323319
{
324320
let repo = self.github.get_repo(&repo);
325-
let mut repo = repo.lock();
326-
let mut pr = repo.get_pr_mut(pr_number);
327-
let base_before = pr.base_branch.clone();
328-
func(&mut pr);
329321

330-
let changes = if base_before != pr.base_branch {
331-
Some(PullRequestChangeEvent {
332-
from_base_sha: Some(base_before.get_sha().to_string()),
333-
})
334-
} else {
335-
None
322+
let (pr, changes) = {
323+
let mut repo = repo.lock();
324+
let pr = repo.get_pr_mut(pr_number);
325+
let base_before = pr.base_branch.clone();
326+
func(pr);
327+
328+
let changes = if base_before != pr.base_branch {
329+
Some(PullRequestChangeEvent {
330+
from_base_sha: Some(base_before.get_sha().to_string()),
331+
})
332+
} else {
333+
None
334+
};
335+
(pr.clone(), changes)
336336
};
337337

338-
self.pull_request_edited(pr.clone(), changes).await
338+
self.pull_request_edited(pr, changes).await
339339
}
340340

341341
pub async fn push_to_pr(&mut self, repo: GithubRepoName, pr_number: u64) -> anyhow::Result<()> {
@@ -360,11 +360,6 @@ impl BorsTester {
360360
.await
361361
}
362362

363-
pub async fn push_to_branch(&mut self) -> anyhow::Result<()> {
364-
self.send_webhook("push", GitHubPushEventPayload::new("main"))
365-
.await
366-
}
367-
368363
//-- Test assertions --//
369364
/// Expect that `count` comments will be received, without checking their contents.
370365
pub async fn expect_comments(&mut self, count: u64) {
@@ -445,11 +440,7 @@ impl BorsTester {
445440
) -> anyhow::Result<()> {
446441
self.send_webhook(
447442
"pull_request",
448-
GitHubPullRequestEventPayload::new(
449-
pr,
450-
"edited",
451-
Some(changes.unwrap_or(PullRequestChangeEvent::default())),
452-
),
443+
GitHubPullRequestEventPayload::new(pr, "edited", Some(changes.unwrap_or_default())),
453444
)
454445
.await
455446
}
@@ -506,10 +497,6 @@ impl PullRequestProxy {
506497
Self { gh_pr, db_pr }
507498
}
508499

509-
pub fn get_db_pr(&self) -> Option<&PullRequestModel> {
510-
self.db_pr.as_ref()
511-
}
512-
513500
pub fn get_gh_pr(&self) -> PullRequest {
514501
self.gh_pr.clone()
515502
}
@@ -545,12 +532,6 @@ impl PullRequestProxy {
545532
self
546533
}
547534

548-
#[track_caller]
549-
pub fn expect_not_delegated(&self) -> &Self {
550-
assert!(!self.require_db_pr().delegated);
551-
self
552-
}
553-
554535
#[track_caller]
555536
pub fn expect_approved_sha(&self, sha: &str) -> &Self {
556537
assert_eq!(self.require_db_pr().approved_sha(), Some(sha));

src/tests/mocks/mod.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,7 @@ pub use bors::BorsBuilder;
1717
pub use comment::Comment;
1818
pub use permissions::Permissions;
1919
pub use pull_request::default_pr_number;
20-
pub use pull_request::GitHubPullRequest;
21-
pub use pull_request::GitHubPushEventPayload;
22-
pub use pull_request::PullRequestChangeEvent;
2320
pub use repository::default_branch_name;
24-
pub use repository::default_branch_sha;
2521
pub use repository::default_repo_name;
2622
pub use repository::Branch;
2723
pub use repository::Repo;

0 commit comments

Comments
 (0)