From 5840ad07bb829199dbcaf8535d77c6861edd9585 Mon Sep 17 00:00:00 2001 From: Tobias Bieniek Date: Mon, 14 Oct 2024 11:38:29 +0000 Subject: [PATCH] tests/builders/version: Simplify code by adding fields to `NewVersion` struct --- src/models/version.rs | 4 ++++ src/tests/builders/version.rs | 20 +++++--------------- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/src/models/version.rs b/src/models/version.rs index 64daf862f2f..b3fa4eba181 100644 --- a/src/models/version.rs +++ b/src/models/version.rs @@ -82,6 +82,10 @@ impl Version { pub struct NewVersion<'a> { crate_id: i32, num: &'a str, + #[builder(default)] + created_at: Option<&'a NaiveDateTime>, + #[builder(default, setter(strip_option))] + yanked: Option, #[builder( default = "serde_json::Value::Object(Default::default())", setter(custom) diff --git a/src/tests/builders/version.rs b/src/tests/builders/version.rs index 85564f5b6fd..bb77ce54b45 100644 --- a/src/tests/builders/version.rs +++ b/src/tests/builders/version.rs @@ -1,6 +1,6 @@ use crate::{ models::{Crate, NewVersion, Version}, - schema::{dependencies, versions}, + schema::dependencies, util::errors::AppResult, }; use std::collections::BTreeMap; @@ -97,7 +97,7 @@ impl VersionBuilder { published_by: i32, connection: &mut PgConnection, ) -> AppResult { - use diesel::{insert_into, update}; + use diesel::insert_into; let version = self.num.to_string(); @@ -109,22 +109,12 @@ impl VersionBuilder { .checksum(&self.checksum) .links(self.links.as_deref()) .rust_version(self.rust_version.as_deref()) + .yanked(self.yanked) + .created_at(self.created_at.as_ref()) .build() .map_err(|error| internal(error.to_string()))?; - let mut vers = new_version.save(connection, "someone@example.com")?; - - if self.yanked { - vers = update(&vers) - .set(versions::yanked.eq(true)) - .get_result(connection)?; - } - - if let Some(created_at) = self.created_at { - vers = update(&vers) - .set(versions::created_at.eq(created_at)) - .get_result(connection)?; - } + let vers = new_version.save(connection, "someone@example.com")?; let new_deps = self .dependencies