From cfdb0dda19db51658b4aaad3263483305f684cfb Mon Sep 17 00:00:00 2001 From: Jeff Baskin Date: Thu, 28 Aug 2025 11:02:47 -0400 Subject: [PATCH] added multiple updates. --- src/message.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/message.rs b/src/message.rs index 376702d..38fb7cf 100644 --- a/src/message.rs +++ b/src/message.rs @@ -2513,6 +2513,31 @@ mod document_files { _ => unreachable!("got {:?}: should have gotten a reply", action), } } + + #[test] + fn update_errors_on_bad_field_name() { + let (mut docdef, doc_name) = + create_docdef([FieldType::Uuid, FieldType::StaticString].to_vec()); + let (mut queue, rx) = test_doc(doc_name.as_str(), docdef, standard_routes()); + let id = Uuid::new_v4(); + let old = "old"; + let new = "new"; + let mut addition = Addition::new(); + addition.add_field("field0".to_string(), id.clone()); + addition.add_field("field1".to_string(), old); + let msg = Message::new(doc_name.clone(), addition); + queue.send(msg).unwrap(); + rx.recv_timeout(TIMEOUT).unwrap(); + let mut update = Update::new(); + update + .get_query_mut() + .add_specifier("field0".to_string(), Operand::Equal, id.clone()); + update.get_values_mut().add_field("field1".to_string(), new); + let msg = Message::new(doc_name.clone(), update); + queue.send(msg).unwrap(); + let result = rx.recv_timeout(TIMEOUT).unwrap(); + let action = result.get_action(); + } } #[cfg(test)]