Skip to content

Commit 1a6755e

Browse files
committed
typosquat/test_util: Simplify crate_and_version() by using CrateBuilder
1 parent 8562d4f commit 1a6755e

File tree

1 file changed

+10
-24
lines changed

1 file changed

+10
-24
lines changed

src/typosquat/test_util.rs

Lines changed: 10 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ use diesel::{prelude::*, PgConnection};
22

33
use crate::tests::util::github::next_gh_id;
44
use crate::{
5-
models::{
6-
Crate, CrateOwner, NewCrate, NewTeam, NewUser, NewVersion, Owner, OwnerKind, User, Version,
7-
},
8-
schema::{crate_downloads, crate_owners, users},
5+
models::{Crate, CrateOwner, NewTeam, NewUser, Owner, OwnerKind, User},
6+
schema::{crate_owners, users},
97
};
108

119
pub mod faker {
1210
use super::*;
11+
use crate::tests::builders::CrateBuilder;
12+
use anyhow::anyhow;
1313

1414
pub fn add_crate_to_team(
1515
conn: &mut PgConnection,
@@ -39,26 +39,12 @@ pub mod faker {
3939
user: &User,
4040
downloads: i32,
4141
) -> anyhow::Result<Crate> {
42-
let krate = NewCrate {
43-
name,
44-
description: Some(description),
45-
..Default::default()
46-
}
47-
.create(conn, user.id)?;
48-
49-
diesel::update(crate_downloads::table)
50-
.filter(crate_downloads::crate_id.eq(krate.id))
51-
.set(crate_downloads::downloads.eq(downloads as i64))
52-
.execute(conn)?;
53-
54-
NewVersion::builder(krate.id, "1.0.0")
55-
.published_by(user.id)
56-
.checksum("0000000000000000000000000000000000000000000000000000000000000000")
57-
.build()
58-
.save(conn, "[email protected]")
59-
.unwrap();
60-
61-
Ok(krate)
42+
CrateBuilder::new(name, user.id)
43+
.description(description)
44+
.downloads(downloads)
45+
.version("1.0.0")
46+
.build(conn)
47+
.map_err(|err| anyhow!(err.to_string()))
6248
}
6349

6450
pub fn team(conn: &mut PgConnection, org: &str, team: &str) -> anyhow::Result<Owner> {

0 commit comments

Comments
 (0)