Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
39 lines
1.1 KiB
Rust
39 lines
1.1 KiB
Rust
use morethantext::MoreThanText;
|
|
use uuid::Uuid;
|
|
|
|
#[test]
|
|
fn are_session_ids_unique() {
|
|
let mut mtt = MoreThanText::new();
|
|
let count = 10;
|
|
let mut result: Vec<Uuid> = Vec::new();
|
|
for _ in 0..count {
|
|
let id = mtt.validate_session(None);
|
|
assert!(!result.contains(&id), "found {} in {:?}", id, result);
|
|
result.push(id);
|
|
}
|
|
}
|
|
|
|
#[test]
|
|
fn bad_session_id_returns_new_id() {
|
|
let mut mtt = MoreThanText::new();
|
|
let id1 = mtt.validate_session(Some("stuff".to_string()));
|
|
let id2 = mtt.validate_session(Some("stuff".to_string()));
|
|
assert_ne!(id1, id2);
|
|
}
|
|
|
|
#[test]
|
|
fn creates_new_session_if_bad_or_expired() {
|
|
let mut mtt = MoreThanText::new();
|
|
let id1 = mtt.validate_session(Some(Uuid::nil().to_string()));
|
|
let id2 = mtt.validate_session(Some(Uuid::nil().to_string()));
|
|
assert_ne!(id1, id2);
|
|
}
|
|
|
|
#[test]
|
|
fn returns_same_session_id_when_valid() {
|
|
let mut mtt = MoreThanText::new();
|
|
let id = mtt.validate_session(None);
|
|
let result = mtt.validate_session(Some(id.to_string()));
|
|
assert_eq!(result, id);
|
|
}
|