Readded missing fields test.
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:
parent
f69d5d2248
commit
1bb799cdce
@ -20,6 +20,7 @@ mod support_test {
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
enum MTTError {
|
||||
AdditionMissingField(Name),
|
||||
DocumentAlreadyExists(String),
|
||||
DocumentFieldAlreadyExists(String, Field),
|
||||
DocumentFieldMissing(String),
|
||||
@ -28,6 +29,7 @@ enum MTTError {
|
||||
DocumentNotFound(String),
|
||||
FieldDuplicate(String, Field),
|
||||
FieldMissingData,
|
||||
InvalidNone,
|
||||
RecordMismatch,
|
||||
NameDuplicate(Name),
|
||||
NameInvalidID(Uuid),
|
||||
@ -2241,7 +2243,7 @@ impl FieldSetting {
|
||||
}
|
||||
None => match &self.default_value {
|
||||
Some(calc) => Ok(calc.calculate()),
|
||||
None => Err(MTTError::DocumentFieldMissing("".to_string())),
|
||||
None => Err(MTTError::InvalidNone),
|
||||
},
|
||||
}
|
||||
}
|
||||
@ -2283,8 +2285,8 @@ mod fieldsettings {
|
||||
match fset.validate(None) {
|
||||
Ok(data) => unreachable!("got {:?}: should have gotten an error", data),
|
||||
Err(err) => match err {
|
||||
MTTError::DocumentFieldMissing(data) => assert_eq!(data, ""),
|
||||
_ => unreachable!("got {:?}: should have gotten a value", err),
|
||||
MTTError::InvalidNone => {},
|
||||
_ => unreachable!("got {:?}: should have gotten a invalid none", err),
|
||||
},
|
||||
}
|
||||
}
|
||||
@ -4727,16 +4729,15 @@ mod document_files {
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
#[test]
|
||||
fn errors_on_wrong_field_type() {
|
||||
let (docdef, doc_name) = create_docdef([FieldType::Uuid].to_vec());
|
||||
let (queue, rx) = test_doc(doc_name.as_str(), docdef, standard_routes());
|
||||
let mut test_doc = TestDocument::new([FieldType::Uuid].to_vec());
|
||||
test_doc.start();
|
||||
let queue = test_doc.get_queue();
|
||||
let mut addition = Addition::new();
|
||||
addition.add_field("field0".to_string(), "astring");
|
||||
let msg = Message::new(doc_name, addition);
|
||||
queue.send(msg).unwrap();
|
||||
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
||||
addition.add_field(Name::english("field0".to_string()), "string");
|
||||
queue.send(Message::new(test_doc.get_docdef().get_document_name(), addition));
|
||||
let result = test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||
match result.get_action() {
|
||||
MsgAction::Error(err) => match err {
|
||||
MTTError::DocumentFieldWrongDataType(expected, got) => {
|
||||
@ -4754,22 +4755,23 @@ mod document_files {
|
||||
|
||||
#[test]
|
||||
fn errors_on_missing_fields() {
|
||||
let (docdef, doc_name) = create_docdef([FieldType::Uuid, FieldType::Uuid].to_vec());
|
||||
let (queue, rx) = test_doc(doc_name.as_str(), docdef, standard_routes());
|
||||
let mut test_doc = TestDocument::new([FieldType::Integer, FieldType::Integer].to_vec());
|
||||
test_doc.start();
|
||||
let queue = test_doc.get_queue();
|
||||
let mut addition = Addition::new();
|
||||
addition.add_field("field0".to_string(), Uuid::nil());
|
||||
let msg = Message::new(doc_name, addition);
|
||||
queue.send(msg).unwrap();
|
||||
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
||||
addition.add_field(Name::english("field0".to_string()), 1);
|
||||
queue.send(Message::new(test_doc.get_docdef().get_document_name(), addition));
|
||||
let result = test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||
match result.get_action() {
|
||||
MsgAction::Error(err) => match err {
|
||||
MTTError::DocumentFieldMissing(field) => assert_eq!(field, "field1"),
|
||||
MTTError::InvalidNone => {},
|
||||
_ => unreachable!("got {:?}: should have been document field missing", err),
|
||||
},
|
||||
_ => unreachable!("got {:?}: should have been an error", result.get_action()),
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
#[test]
|
||||
fn does_query_return_related_entries() {
|
||||
let mut doc = TestDocument::new([FieldType::Uuid].to_vec());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user