Moved client requests into lib testing.
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
This commit is contained in:
@@ -866,110 +866,6 @@ mod document_files {
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn does_not_respond_to_create() {
|
||||
let name = Name::english("quiet");
|
||||
let docdef = DocDef::new(name.clone());
|
||||
let mut test_doc: TestDocument = docdef.into();
|
||||
let alt = Name::english("alternate");
|
||||
test_doc.start(standard_paths());
|
||||
let docdef = DocDef::new(alt);
|
||||
let msg = Message::new(docdef);
|
||||
test_doc.get_queue().send(msg);
|
||||
match test_doc.get_receiver().recv_timeout(TIMEOUT) {
|
||||
Ok(msg) => unreachable!("should not receive: {:?}", msg),
|
||||
Err(err) => match err {
|
||||
RecvTimeoutError::Timeout => {}
|
||||
_ => unreachable!("should have timed out"),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn does_document_respond_to_requests() {
|
||||
let name = Name::english("listen");
|
||||
let docdef = DocDef::new(name.clone());
|
||||
let mut test_doc: TestDocument = docdef.into();
|
||||
test_doc.start(standard_paths());
|
||||
let queue = test_doc.get_queue();
|
||||
let msg_actions = [
|
||||
MsgAction::Addition(Addition::new(name.clone())),
|
||||
MsgAction::Delete(Delete::new(name.clone())),
|
||||
MsgAction::Query(Query::new(name.clone())),
|
||||
MsgAction::Show(Show::new(name.clone())),
|
||||
MsgAction::Update(Update::new(name.clone())),
|
||||
];
|
||||
for msg_action in msg_actions.iter() {
|
||||
let msg = Message::new(msg_action.clone());
|
||||
queue.send(msg.clone());
|
||||
let result = match test_doc.get_receiver().recv_timeout(TIMEOUT) {
|
||||
Ok(data) => data.clone(),
|
||||
Err(err) => unreachable!("for {:?} got {:?}", msg_action, err),
|
||||
};
|
||||
assert_eq!(
|
||||
result.get_message_id(),
|
||||
msg.get_message_id(),
|
||||
"for {:?} response and reply ids should equal",
|
||||
msg_action
|
||||
);
|
||||
match result.get_action() {
|
||||
MsgAction::Reply(data) => {
|
||||
assert_eq!(data.len(), 0, "for {:?} got {:?}", msg_action, result)
|
||||
}
|
||||
MsgAction::Records(data) => {
|
||||
assert_eq!(data.len(), 0, "for {:?} got {:?}", msg_action, result)
|
||||
}
|
||||
_ => unreachable!(
|
||||
"for {:?} got {:?}: should have received a reply",
|
||||
msg_action,
|
||||
result.get_action()
|
||||
),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn does_not_respond_to_other_document_requests() {
|
||||
let name = Name::english("quiet");
|
||||
let alt = Name::english("alternate");
|
||||
let docdef = DocDef::new(name.clone());
|
||||
let mut test_doc: TestDocument = docdef.into();
|
||||
test_doc.start(standard_paths());
|
||||
let queue = test_doc.get_queue();
|
||||
let reg_msg = Register::new(
|
||||
test_doc.get_sender_id(),
|
||||
RegMsg::AddDocName([alt.clone()].to_vec()),
|
||||
);
|
||||
let setup = Message::new(reg_msg.clone());
|
||||
queue.send(setup);
|
||||
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||
let msg_actions = [
|
||||
MsgAction::Addition(Addition::new(alt.clone())),
|
||||
MsgAction::Create(DocDef::new(alt.clone())),
|
||||
MsgAction::Delete(Delete::new(alt.clone())),
|
||||
MsgAction::Query(Query::new(alt.clone())),
|
||||
MsgAction::Show(Show::new(alt.clone())),
|
||||
MsgAction::Update(Update::new(alt.clone())),
|
||||
];
|
||||
let mut msgs: HashMap<Uuid, MsgAction> = HashMap::new();
|
||||
for msg_action in msg_actions.iter() {
|
||||
let msg = Message::new(msg_action.clone());
|
||||
msgs.insert(msg.get_message_id().clone(), msg_action.clone());
|
||||
queue.send(msg);
|
||||
}
|
||||
match test_doc.get_receiver().recv_timeout(TIMEOUT) {
|
||||
Ok(msg) => unreachable!(
|
||||
"for {:?} should not receive: {:?}",
|
||||
msgs.get(msg.get_message_id()).unwrap(),
|
||||
msg
|
||||
),
|
||||
Err(err) => match err {
|
||||
RecvTimeoutError::Timeout => {}
|
||||
_ => unreachable!("got {:?}, should have timed out", err),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn query_sends_on_query_message() {
|
||||
let count = 5;
|
||||
|
||||
Reference in New Issue
Block a user