mirror of
https://github.com/pcvolkmer/osc-variant.git
synced 2025-04-19 19:56:50 +00:00
Use 'form_references' instead of 'fields' in profile
This commit is contained in:
parent
636fa34efc
commit
5681b1dee3
@ -19,7 +19,7 @@ In ihr sind die durchzuführenden Änderungen definiert. Eine Profildatei hat di
|
|||||||
```
|
```
|
||||||
forms:
|
forms:
|
||||||
- name: "ExampleForm"
|
- name: "ExampleForm"
|
||||||
fields:
|
form_references:
|
||||||
- name: "ref_first_mtb"
|
- name: "ref_first_mtb"
|
||||||
referenced_data_form: "Formularverweis.Variante"
|
referenced_data_form: "Formularverweis.Variante"
|
||||||
anzeige_auswahl: "Referenziertes Formular vom: {Datum}"
|
anzeige_auswahl: "Referenziertes Formular vom: {Datum}"
|
||||||
|
@ -44,11 +44,11 @@ impl FromStr for Profile {
|
|||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
struct Form {
|
struct Form {
|
||||||
name: String,
|
name: String,
|
||||||
fields: Vec<FieldChanges>,
|
form_references: Vec<FormReference>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Deserialize)]
|
#[derive(Deserialize)]
|
||||||
struct FieldChanges {
|
struct FormReference {
|
||||||
name: String,
|
name: String,
|
||||||
referenced_data_form: Option<String>,
|
referenced_data_form: Option<String>,
|
||||||
anzeige: Option<String>,
|
anzeige: Option<String>,
|
||||||
@ -64,7 +64,7 @@ mod tests {
|
|||||||
fn should_deserialize_profile() {
|
fn should_deserialize_profile() {
|
||||||
let content = "forms:
|
let content = "forms:
|
||||||
- name: 'DNPM Therapieplan'
|
- name: 'DNPM Therapieplan'
|
||||||
fields:
|
form_references:
|
||||||
- name: ref_first_mtb
|
- name: ref_first_mtb
|
||||||
referenced_data_form: 'OS.Tumorkonferenz.VarianteUKW'
|
referenced_data_form: 'OS.Tumorkonferenz.VarianteUKW'
|
||||||
anzeige: 'Datum: {Datum}'
|
anzeige: 'Datum: {Datum}'
|
||||||
@ -75,18 +75,18 @@ mod tests {
|
|||||||
Ok(profile) => {
|
Ok(profile) => {
|
||||||
assert_eq!(profile.forms.len(), 1);
|
assert_eq!(profile.forms.len(), 1);
|
||||||
assert_eq!(profile.forms[0].name, "DNPM Therapieplan");
|
assert_eq!(profile.forms[0].name, "DNPM Therapieplan");
|
||||||
assert_eq!(profile.forms[0].fields.len(), 1);
|
assert_eq!(profile.forms[0].form_references.len(), 1);
|
||||||
assert_eq!(profile.forms[0].fields[0].name, "ref_first_mtb");
|
assert_eq!(profile.forms[0].form_references[0].name, "ref_first_mtb");
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
profile.forms[0].fields[0].referenced_data_form,
|
profile.forms[0].form_references[0].referenced_data_form,
|
||||||
Some("OS.Tumorkonferenz.VarianteUKW".to_string())
|
Some("OS.Tumorkonferenz.VarianteUKW".to_string())
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
profile.forms[0].fields[0].anzeige,
|
profile.forms[0].form_references[0].anzeige,
|
||||||
Some("Datum: {Datum}".to_string())
|
Some("Datum: {Datum}".to_string())
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
profile.forms[0].fields[0].anzeige_auswahl,
|
profile.forms[0].form_references[0].anzeige_auswahl,
|
||||||
Some("TK vom {Datum}".to_string())
|
Some("TK vom {Datum}".to_string())
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -98,7 +98,7 @@ mod tests {
|
|||||||
fn should_deserialize_profile_with_no_changes() {
|
fn should_deserialize_profile_with_no_changes() {
|
||||||
let content = "forms:
|
let content = "forms:
|
||||||
- name: 'DNPM Therapieplan'
|
- name: 'DNPM Therapieplan'
|
||||||
fields:
|
form_references:
|
||||||
- name: ref_first_mtb
|
- name: ref_first_mtb
|
||||||
";
|
";
|
||||||
|
|
||||||
@ -106,11 +106,14 @@ mod tests {
|
|||||||
Ok(profile) => {
|
Ok(profile) => {
|
||||||
assert_eq!(profile.forms.len(), 1);
|
assert_eq!(profile.forms.len(), 1);
|
||||||
assert_eq!(profile.forms[0].name, "DNPM Therapieplan");
|
assert_eq!(profile.forms[0].name, "DNPM Therapieplan");
|
||||||
assert_eq!(profile.forms[0].fields.len(), 1);
|
assert_eq!(profile.forms[0].form_references.len(), 1);
|
||||||
assert_eq!(profile.forms[0].fields[0].name, "ref_first_mtb");
|
assert_eq!(profile.forms[0].form_references[0].name, "ref_first_mtb");
|
||||||
assert_eq!(profile.forms[0].fields[0].referenced_data_form, None);
|
assert_eq!(
|
||||||
assert_eq!(profile.forms[0].fields[0].anzeige, None);
|
profile.forms[0].form_references[0].referenced_data_form,
|
||||||
assert_eq!(profile.forms[0].fields[0].anzeige_auswahl, None);
|
None
|
||||||
|
);
|
||||||
|
assert_eq!(profile.forms[0].form_references[0].anzeige, None);
|
||||||
|
assert_eq!(profile.forms[0].form_references[0].anzeige_auswahl, None);
|
||||||
}
|
}
|
||||||
Err(e) => panic!("Cannot deserialize profile: {}", e),
|
Err(e) => panic!("Cannot deserialize profile: {}", e),
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user