use faker_rand::en_us::internet; use uuid::Uuid; use crate::{ app::App, login::{self, Login, Password}, }; pub async fn create_with_password(app: &App) -> (String, Password) { let (name, password) = propose(); app.logins() .create(&name, &password) .await .expect("should always succeed if the login is actually new"); (name, password) } pub async fn create(app: &App) -> Login { let (name, password) = propose(); app.logins() .create(&name, &password) .await .expect("should always succeed if the login is actually new") } pub fn fictitious() -> Login { Login { id: login::Id::generate(), name: name(), } } pub fn propose() -> (String, Password) { (name(), propose_password()) } fn name() -> String { rand::random::().to_string() } pub fn propose_password() -> Password { Uuid::new_v4().to_string().into() }