Moved add failure on bad field type to lib testing.
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s

This commit is contained in:
2026-02-27 09:33:27 -05:00
parent 473b478877
commit 632332298d
2 changed files with 22 additions and 17 deletions

View File

@@ -500,29 +500,35 @@ impl DocumentFile {
}; };
let mut holder = InternalRecord::new(); let mut holder = InternalRecord::new();
let mut field_ids = self.docdef.get_field_ids();
println!("{:?}", field_ids);
for (name_id, value) in addition.iter() {}
for (name_id, value) in addition.iter() {
let field_id = match self.docdef.get_field_id(name_id) { let mut field_ids = self.docdef.get_field_ids();
for (name, value) in addition.iter() {
let field_id = match self.docdef.get_field_id(name) {
Ok(id) => id, Ok(id) => id,
Err(mut err) => { Err(mut err) => {
err.add_parent(ErrorID::Field(name_id.clone())); err.add_parent(ErrorID::Field(name.clone()));
err.add_parent(ErrorID::Document(msg.doc_name().clone())); err.add_parent(ErrorID::Document(msg.doc_name().clone()));
let reply = msg.response(err); let reply = msg.response(err);
self.queue.send(reply); self.queue.send(reply);
return; return;
} }
}; };
holder.insert(field_id.clone(), value.get(&Field::None)); let corrected = match self.validate(field_id.clone(), &value.get(&Field::None)) {
Ok(data) => data,
Err(mut err) => {
err.add_parent(ErrorID::Field(name.clone().into()));
err.add_parent(ErrorID::Document(msg.doc_name().clone()));
let reply = msg.response(err);
self.queue.send(reply);
return;
} }
for field_id in self.docdef.get_field_ids().iter() {
let value = match holder.get(field_id) {
Some(data) => data,
None => &Field::None,
}; };
let corrected = match self.validate(field_id, value) { holder.insert(field_id.clone(), corrected.clone());
field_ids.remove(&field_id);
}
for field_id in field_ids.iter() {
let corrected = match self.validate(field_id, &Field::None) {
Ok(data) => data, Ok(data) => data,
Err(mut err) => { Err(mut err) => {
err.add_parent(ErrorID::Field(field_id.clone().into())); err.add_parent(ErrorID::Field(field_id.clone().into()));
@@ -1159,7 +1165,6 @@ mod document_files {
_ => unreachable!("got {:?}: should have been an error", result.get_action()), _ => unreachable!("got {:?}: should have been an error", result.get_action()),
} }
} }
*/
#[test] #[test]
#[ignore = "move to lib"] #[ignore = "move to lib"]
@@ -1182,6 +1187,7 @@ mod document_files {
_ => unreachable!("got {:?}: should have been an error", result.get_action()), _ => unreachable!("got {:?}: should have been an error", result.get_action()),
} }
} }
*/
#[test] #[test]
fn errors_on_missing_fields() { fn errors_on_missing_fields() {

View File

@@ -70,16 +70,15 @@ fn does_it_error_on_bad_field_name() {
} }
#[test] #[test]
#[ignore = "Returning name id not name"]
fn does_it_error_on_bad_field_type() { fn does_it_error_on_bad_field_type() {
let mut mtt = MoreThanText::new(); let mut mtt = MoreThanText::new();
let doc_name = Name::english("holder"); let doc_name = Name::english("holder");
let field_name = Name::english("missing"); let field_name = Name::english("wrong");
let mut docdef = DocDef::new(doc_name.clone()); let mut docdef = DocDef::new(doc_name.clone());
docdef.add_field(field_name.clone(), FieldType::Uuid); docdef.add_field(field_name.clone(), FieldType::Uuid);
mtt.create_document(docdef); mtt.create_document(docdef);
let mut add = Addition::new(doc_name.clone()); let mut add = Addition::new(doc_name.clone());
add.add_field(Name::english("missing"), "something"); add.add_field(field_name.clone(), "something");
let mut expected = MTTError::new(ErrorID::FieldTypeExpected(FieldType::Uuid)); let mut expected = MTTError::new(ErrorID::FieldTypeExpected(FieldType::Uuid));
expected.add_parent(ErrorID::Field(field_name.clone().into())); expected.add_parent(ErrorID::Field(field_name.clone().into()));
expected.add_parent(ErrorID::Document(doc_name.clone().into())); expected.add_parent(ErrorID::Document(doc_name.clone().into()));