Got document service functioning.

This commit is contained in:
2025-04-15 18:37:02 -04:00
parent a5b4398eab
commit a38bfc200d
3 changed files with 116 additions and 60 deletions

View File

@ -119,7 +119,7 @@ impl Session {
Field::Uuid(sess_id) => match self.data.get_mut(&sess_id) {
Some(sess_data) => {
sess_data.extend();
let reply = msg.reply_with_data(MsgType::Session);
let reply = msg.reply_with_data(MsgType::SessionValidated);
self.queue.send(reply).unwrap();
}
None => self.new_session(msg),
@ -136,7 +136,7 @@ impl Session {
id = Uuid::new_v4();
}
self.data.insert(id.clone(), SessionData::new());
let mut reply = msg.reply_with_data(MsgType::Session);
let mut reply = msg.reply_with_data(MsgType::SessionValidated);
reply.add_data("sess_id", id);
self.queue.send(reply).unwrap();
}
@ -181,14 +181,14 @@ mod sessions {
#[test]
fn get_new_session() {
let id = Uuid::new_v4();
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let mut msg = Message::new(MsgType::SessionValidate);
msg.add_data(id, id);
queue.send(msg.clone()).unwrap();
let result = rx.recv_timeout(TIMEOUT).unwrap();
match result.get_msg_type() {
MsgType::Session => {}
MsgType::SessionValidated => {}
_ => unreachable!(
"received {:?}, should have been a session",
result.get_msg_type()
@ -200,7 +200,7 @@ mod sessions {
#[test]
fn session_id_is_unique() {
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let msg = Message::new(MsgType::SessionValidate);
let mut ids: Vec<Uuid> = Vec::new();
@ -216,7 +216,7 @@ mod sessions {
#[test]
fn existing_id_is_returned() {
let add_data = Uuid::new_v4();
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let id = create_session(&queue, &rx);
let mut msg = Message::new(MsgType::SessionValidate);
@ -226,13 +226,16 @@ mod sessions {
let result = rx.recv_timeout(TIMEOUT).unwrap();
let output = result.get_data("sess_id").unwrap().to_uuid().unwrap();
assert_eq!(output, id);
assert_eq!(result.get_data(add_data).unwrap().to_uuid().unwrap(), add_data);
assert_eq!(
result.get_data(add_data).unwrap().to_uuid().unwrap(),
add_data
);
}
#[test]
fn issue_new_if_validated_doe_not_exist() {
let id = Uuid::new_v4();
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let mut msg = Message::new(MsgType::SessionValidate);
msg.add_data("sess_id", id.clone());
@ -245,7 +248,7 @@ mod sessions {
#[test]
fn new_for_bad_uuid() {
let id = "bad uuid";
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let mut msg = Message::new(MsgType::SessionValidate);
msg.add_data("sess_id", id);
@ -258,7 +261,7 @@ mod sessions {
#[test]
fn timer_does_nothing_to_unexpired() {
let expire = Utc::now() + EXPIRE_IN;
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let id = create_session(&queue, &rx);
let mut time_msg = Message::new(MsgType::Time);
@ -273,7 +276,7 @@ mod sessions {
#[test]
fn timer_removes_expired() {
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let id = create_session(&queue, &rx);
let expire = Utc::now() + EXPIRE_IN;
@ -289,7 +292,7 @@ mod sessions {
#[test]
fn validate_extends_session() {
let listen_for = [MsgType::Session];
let listen_for = [MsgType::SessionValidated];
let (queue, rx) = setup_session(listen_for.to_vec());
let id = create_session(&queue, &rx);
let mut validate_msg = Message::new(MsgType::SessionValidate);