Moved add failure on bad field type to 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:
@@ -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() {
|
||||||
|
|||||||
@@ -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()));
|
||||||
|
|||||||
Reference in New Issue
Block a user