From e51bb977a8bbc9c87bb80b024c10afa71bdc4133 Mon Sep 17 00:00:00 2001 From: Muhammed-Ali Demir <muhammed.demir@ptb.de> Date: Fri, 7 Jul 2023 18:37:49 +0200 Subject: [PATCH] fix(statementmetadatatype): validXMLList --- src/DCC.ts | 2 +- .../AdministrativeData.Statements.test.ts | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/DCC.ts b/src/DCC.ts index 3996357..8a01a00 100644 --- a/src/DCC.ts +++ b/src/DCC.ts @@ -840,7 +840,7 @@ export class StatementMetaDataType extends DCCXMLElement { // choice if (el.valid) this.valid = new DCCXMLBoolean(el.valid); - else if (el.validXMLList) this.validXMLList = new DCCXMLList(this.validXMLList); + else if (el.validXMLList) this.validXMLList = new DCCXMLList(el.validXMLList); if (el.date) this.date = new DCCXMLDate(el.date); if (el.period) this.period = new DCCXMLElement(el.period); diff --git a/tests/DCC/GP_Temperatur_v3.2.0_DCC/AdministrativeData.Statements.test.ts b/tests/DCC/GP_Temperatur_v3.2.0_DCC/AdministrativeData.Statements.test.ts index 9cf4423..ab739dc 100644 --- a/tests/DCC/GP_Temperatur_v3.2.0_DCC/AdministrativeData.Statements.test.ts +++ b/tests/DCC/GP_Temperatur_v3.2.0_DCC/AdministrativeData.Statements.test.ts @@ -25,6 +25,18 @@ const xpath = { }, }, conformity: `string(${base}/dcc:statement[1]/dcc:conformity)`, + data: { + quantity: { + measurementMetaData: { + metaData1: { + declaration: { + content: `${base}/dcc:statement[1]/dcc:data/dcc:quantity/dcc:measurementMetaData/dcc:metaData[1]/dcc:declaration/dcc:content`, + }, + validXMLList: `string(${base}/dcc:statement[1]/dcc:data/dcc:quantity/dcc:measurementMetaData/dcc:metaData[1]/dcc:validXMLList)`, + }, + }, + }, + }, refType: `string(${base}/dcc:statement[1]/@refType)`, }, statement2: { @@ -88,6 +100,19 @@ describe("GP_Temperature_v3.2.0_DCC: StatementMetaDataType", () => { expect(statement1.conformity._text).toBe(select(xpath.statements.statement1.conformity, dom)); }); + test("should get correct statement 1 metaData1 declaration content from XML", () => { + // get expected list from example xml + const expected = <Element[]>select(xpath.statements.statement1.data.quantity.measurementMetaData.metaData1.declaration.content, dom); + expect(toTextArr(statement1.data.quantity[0].measurementMetaData.metaData[0].declaration.content)).toEqual(toTextContentArr(expected)); + }); + + test("should get correct statement 1 metaData1 validXMLList from XML", () => { + // get expected list from example xml + expect(statement1.data.quantity[0].measurementMetaData.metaData[0].validXMLList._text).toBe( + select(xpath.statements.statement1.data.quantity.measurementMetaData.metaData1.validXMLList, dom), + ); + }); + test("should get correct statement 2 declaration content from XML", () => { // get expected list from example xml const expected = <Element[]>select(xpath.statements.statement2.declaration.content, dom); -- GitLab