summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/test')
-rw-r--r--src/test/fixtures/cookie.rs14
-rw-r--r--src/test/fixtures/identity.rs6
-rw-r--r--src/test/fixtures/invite.rs4
-rw-r--r--src/test/fixtures/login.rs21
-rw-r--r--src/test/fixtures/message.rs4
-rw-r--r--src/test/fixtures/mod.rs1
-rw-r--r--src/test/fixtures/user.rs25
-rw-r--r--src/test/verify/identity.rs6
-rw-r--r--src/test/verify/login.rs10
-rw-r--r--src/test/verify/token.rs8
10 files changed, 48 insertions, 51 deletions
diff --git a/src/test/fixtures/cookie.rs b/src/test/fixtures/cookie.rs
index f5a32a6..7dc5083 100644
--- a/src/test/fixtures/cookie.rs
+++ b/src/test/fixtures/cookie.rs
@@ -1,11 +1,7 @@
use uuid::Uuid;
use crate::{
- app::App,
- clock::RequestedAt,
- name::Name,
- password::Password,
- token::{Secret, extract::IdentityCookie},
+ app::App, clock::RequestedAt, name::Name, password::Password, token::extract::IdentityCookie,
};
pub fn not_logged_in() -> IdentityCookie {
@@ -19,18 +15,14 @@ pub async fn logged_in(
) -> IdentityCookie {
let (name, password) = credentials;
let secret = app
- .tokens()
- .login(name, password, now)
+ .logins()
+ .with_password(name, password, now)
.await
.expect("should succeed given known-valid credentials");
IdentityCookie::new().set(secret)
}
-pub fn secret(identity: &IdentityCookie) -> Secret {
- identity.secret().expect("identity contained a secret")
-}
-
pub fn fictitious() -> IdentityCookie {
let token = Uuid::new_v4().to_string();
IdentityCookie::new().set(token)
diff --git a/src/test/fixtures/identity.rs b/src/test/fixtures/identity.rs
index ac353de..93e4a38 100644
--- a/src/test/fixtures/identity.rs
+++ b/src/test/fixtures/identity.rs
@@ -37,8 +37,8 @@ pub async fn logged_in(
}
pub fn fictitious() -> Identity {
- let user = fixtures::user::fictitious();
- let (token, _) = Token::generate(&user, &fixtures::now());
+ let login = fixtures::login::fictitious();
+ let (token, _) = Token::generate(&login, &fixtures::now());
- Identity { token, user }
+ Identity { token, login }
}
diff --git a/src/test/fixtures/invite.rs b/src/test/fixtures/invite.rs
index 7a41eb6..654d1b4 100644
--- a/src/test/fixtures/invite.rs
+++ b/src/test/fixtures/invite.rs
@@ -2,10 +2,10 @@ use crate::{
app::App,
clock::DateTime,
invite::{self, Invite},
- user::User,
+ login::Login,
};
-pub async fn issue(app: &App, issuer: &User, issued_at: &DateTime) -> Invite {
+pub async fn issue(app: &App, issuer: &Login, issued_at: &DateTime) -> Invite {
app.invites()
.issue(issuer, issued_at)
.await
diff --git a/src/test/fixtures/login.rs b/src/test/fixtures/login.rs
new file mode 100644
index 0000000..d9aca81
--- /dev/null
+++ b/src/test/fixtures/login.rs
@@ -0,0 +1,21 @@
+use crate::{
+ app::App,
+ clock::DateTime,
+ login::{self, Login},
+ test::fixtures::user::{propose, propose_name},
+};
+
+pub async fn create(app: &App, created_at: &DateTime) -> Login {
+ let (name, password) = propose();
+ app.users()
+ .create(&name, &password, created_at)
+ .await
+ .expect("should always succeed if the user is actually new")
+}
+
+pub fn fictitious() -> Login {
+ Login {
+ id: login::Id::generate(),
+ name: propose_name(),
+ }
+}
diff --git a/src/test/fixtures/message.rs b/src/test/fixtures/message.rs
index 03f8072..92ac1f5 100644
--- a/src/test/fixtures/message.rs
+++ b/src/test/fixtures/message.rs
@@ -4,14 +4,14 @@ use crate::{
app::App,
clock::RequestedAt,
conversation::Conversation,
+ login::Login,
message::{self, Body, Message},
- user::User,
};
pub async fn send(
app: &App,
conversation: &Conversation,
- sender: &User,
+ sender: &Login,
sent_at: &RequestedAt,
) -> Message {
let body = propose();
diff --git a/src/test/fixtures/mod.rs b/src/test/fixtures/mod.rs
index 87d3fa1..3d69cfa 100644
--- a/src/test/fixtures/mod.rs
+++ b/src/test/fixtures/mod.rs
@@ -9,6 +9,7 @@ pub mod event;
pub mod future;
pub mod identity;
pub mod invite;
+pub mod login;
pub mod message;
pub mod user;
diff --git a/src/test/fixtures/user.rs b/src/test/fixtures/user.rs
index 086f866..d4d8db4 100644
--- a/src/test/fixtures/user.rs
+++ b/src/test/fixtures/user.rs
@@ -1,13 +1,7 @@
use faker_rand::{en_us::internet, lorem::Paragraphs};
use uuid::Uuid;
-use crate::{
- app::App,
- clock::RequestedAt,
- name::Name,
- password::Password,
- user::{self, User},
-};
+use crate::{app::App, clock::RequestedAt, login::Login, name::Name, password::Password};
pub async fn create_with_password(app: &App, created_at: &RequestedAt) -> (Name, Password) {
let (name, password) = propose();
@@ -20,19 +14,8 @@ pub async fn create_with_password(app: &App, created_at: &RequestedAt) -> (Name,
(user.name, password)
}
-pub async fn create(app: &App, created_at: &RequestedAt) -> User {
- let (name, password) = propose();
- app.users()
- .create(&name, &password, created_at)
- .await
- .expect("should always succeed if the login is actually new")
-}
-
-pub fn fictitious() -> User {
- User {
- id: user::Id::generate(),
- name: propose_name(),
- }
+pub async fn create(app: &App, created_at: &RequestedAt) -> Login {
+ super::login::create(app, created_at).await
}
pub fn propose() -> (Name, Password) {
@@ -43,7 +26,7 @@ pub fn propose_invalid_name() -> Name {
rand::random::<Paragraphs>().to_string().into()
}
-fn propose_name() -> Name {
+pub(crate) fn propose_name() -> Name {
rand::random::<internet::Username>().to_string().into()
}
diff --git a/src/test/verify/identity.rs b/src/test/verify/identity.rs
index 226ee74..8e2d36e 100644
--- a/src/test/verify/identity.rs
+++ b/src/test/verify/identity.rs
@@ -1,9 +1,9 @@
use crate::{
app::App,
+ login::Login,
name::Name,
test::{fixtures, verify},
token::{app::ValidateError, extract::IdentityCookie},
- user::User,
};
pub async fn valid_for_name(app: &App, identity: &IdentityCookie, name: &Name) {
@@ -13,11 +13,11 @@ pub async fn valid_for_name(app: &App, identity: &IdentityCookie, name: &Name) {
verify::token::valid_for_name(app, &secret, name).await;
}
-pub async fn valid_for_user(app: &App, identity: &IdentityCookie, user: &User) {
+pub async fn valid_for_login(app: &App, identity: &IdentityCookie, login: &Login) {
let secret = identity
.secret()
.expect("identity cookie must be set to be valid");
- verify::token::valid_for_user(app, &secret, user).await;
+ verify::token::valid_for_login(app, &secret, login).await;
}
pub async fn invalid(app: &App, identity: &IdentityCookie) {
diff --git a/src/test/verify/login.rs b/src/test/verify/login.rs
index 3f291a3..ae2e91e 100644
--- a/src/test/verify/login.rs
+++ b/src/test/verify/login.rs
@@ -1,15 +1,15 @@
use crate::{
app::App,
+ login::app::LoginError,
name::Name,
password::Password,
test::{fixtures, verify},
- token::app::LoginError,
};
pub async fn valid_login(app: &App, name: &Name, password: &Password) {
let secret = app
- .tokens()
- .login(&name, &password, &fixtures::now())
+ .logins()
+ .with_password(name, password, &fixtures::now())
.await
.expect("login credentials expected to be valid");
verify::token::valid_for_name(&app, &secret, &name).await;
@@ -17,8 +17,8 @@ pub async fn valid_login(app: &App, name: &Name, password: &Password) {
pub async fn invalid_login(app: &App, name: &Name, password: &Password) {
let error = app
- .tokens()
- .login(name, password, &fixtures::now())
+ .logins()
+ .with_password(name, password, &fixtures::now())
.await
.expect_err("login credentials expected not to be valid");
assert!(matches!(error, LoginError::Rejected));
diff --git a/src/test/verify/token.rs b/src/test/verify/token.rs
index 99cd31f..adc4397 100644
--- a/src/test/verify/token.rs
+++ b/src/test/verify/token.rs
@@ -1,9 +1,9 @@
use crate::{
app::App,
+ login::Login,
name::Name,
test::fixtures,
token::{Secret, app},
- user::User,
};
pub async fn valid_for_name(app: &App, secret: &Secret, name: &Name) {
@@ -12,16 +12,16 @@ pub async fn valid_for_name(app: &App, secret: &Secret, name: &Name) {
.validate(secret, &fixtures::now())
.await
.expect("provided secret is valid");
- assert_eq!(name, &identity.user.name);
+ assert_eq!(name, &identity.login.name);
}
-pub async fn valid_for_user(app: &App, secret: &Secret, user: &User) {
+pub async fn valid_for_login(app: &App, secret: &Secret, login: &Login) {
let identity = app
.tokens()
.validate(secret, &fixtures::now())
.await
.expect("provided secret is valid");
- assert_eq!(user, &identity.user);
+ assert_eq!(login, &identity.login);
}
pub async fn invalid(app: &App, secret: &Secret) {