From 0727bdb6636d6d5a0f949f99de059c24e926cfab Mon Sep 17 00:00:00 2001 From: dperezBM <33548409+dperezBM@users.noreply.github.com> Date: Fri, 20 Sep 2024 14:56:02 +0200 Subject: [PATCH] Predefined Atom Req 6 updated --- ...IDfadd4929-fa60-4781-b658-703bbfe3f4eb.xml | 10 + .../ds-atom-pre-defined-soapui-project.xml | 209 +++++++++++++++++- service/ds-wfs-pre-defined-soapui-project.xml | 1 - 3 files changed, 210 insertions(+), 10 deletions(-) diff --git a/include-metadata/TranslationTemplateBundle-EIDfadd4929-fa60-4781-b658-703bbfe3f4eb.xml b/include-metadata/TranslationTemplateBundle-EIDfadd4929-fa60-4781-b658-703bbfe3f4eb.xml index c9ad1ec7..32685c1d 100644 --- a/include-metadata/TranslationTemplateBundle-EIDfadd4929-fa60-4781-b658-703bbfe3f4eb.xml +++ b/include-metadata/TranslationTemplateBundle-EIDfadd4929-fa60-4781-b658-703bbfe3f4eb.xml @@ -560,5 +560,15 @@ Check manually that the content of value {elementName} is correct for scenario {scenario}. + + + There is no keyword indicating the spatial data service category provided through the element feed category. + + + + + Check manually that if the service is conformant to one or more specifications, the degree of conformity equal to "conformant" shall be declared using a feed category element for each specification against which the service is conformant + + diff --git a/service/ds-atom-pre-defined-soapui-project.xml b/service/ds-atom-pre-defined-soapui-project.xml index 9e94d7d8..dc8f4b07 100644 --- a/service/ds-atom-pre-defined-soapui-project.xml +++ b/service/ds-atom-pre-defined-soapui-project.xml @@ -93,6 +93,22 @@ a.exists("/atom:feed", "TR.missingFeedRootElement"); + + + + + + etf.ShortDescription @@ -1736,19 +1752,19 @@ a.notExists( -
Relevant Requirements:
    -
  • TG Requirement 6: The 'Download Service Feed' shall contain an Atom 'link' element that links to +
  • TG Requirement 6(1): The 'Download Service Feed' shall contain an Atom 'link' element that links to the metadata record for this Download Service. The value of the 'rel' attribute of this element shall be 'describedby' and the value of the 'type' attribute shall -be either 'application/xml'.
  • +be either 'application/xml' or "application/vnd.ogc.csw.GetRecordByIdResponse_xml".


-Source: Abstract Test Case 'Download service feed: Provide link to metadata record for the download service']]> +Source: Abstract Test Case 'Download service feed: Provide link to metadata record for the download service']]>
@@ -1796,11 +1812,20 @@ a.exists("/atom:feed", "TR.missingFeedRootElement"); import de.interactive_instruments.etf.suim.* final Assert a = new Assert(messageExchange, context, log, Assert.INSPIRE_DS_NS); - -a.exists( - "/atom:feed/atom:link[@rel='describedby' and @type='application/xml' or @type='application/vnd.ogc.csw.GetRecordByIdResponse_xml']", - "TR.missingLinkToMetadataRecordForDownloadService" -); +def feed = new XmlSlurper().parseText(a.xml.getXml()); +def scenario = '2'; +def links = feed.link; +links.each{link -> + if(link.'@rel' == 'describedby' && (link.'@type' == 'application/xml' || link.'@type' == 'application/vnd.ogc.csw.GetRecordByIdResponse_xml')){ + scenario = '1'; + } +} +if(scenario == '1'){ + a.exists( + "/atom:feed/atom:link[@rel='describedby' and @type='application/xml' or @type='application/vnd.ogc.csw.GetRecordByIdResponse_xml']", + "TR.missingLinkToMetadataRecordForDownloadService" + ); +} @@ -1811,6 +1836,21 @@ a.exists( + + + + + + @@ -1932,6 +1972,157 @@ a.equalPathValuesInStep( + + + + + + + +
+ + + +
+Relevant Requirements: +
    +
  • TG Requirement 6(2): The Download Service Feed shall contain the INSPIRE Metadata for the Download Service in accordance with Table 17b.
  • +
+
+
+Source: Abstract Test Case 'Download service feed: Provide Download Service metadata elements in the Feed document']]> +
+ + + + + + + metadataDocumentURL + + + + resourceLocatorURL + + + + + + + + + Requests the Service Feed and checks that the atom elements exist. + + <xml-fragment/> + + ${#Project#serviceEndpoint} + + + + 200 + + + + + 30000 + + + + No Authorization + + + + + + + + + + + + + + + + + <xml-fragment/> + + ${#Project#serviceEndpoint} + + + + import de.interactive_instruments.etf.suim.* + import de.interactive_instruments.SUtils + import de.interactive_instruments.XmlUtils + import com.eviware.soapui.support.XmlHolder + Assert a = new Assert(messageExchange, context, log, Assert.INSPIRE_DS_NS); + def atom = new XmlSlurper().parseText(a.xml.getXml()); + def scenario = '2'; + def links = atom.link; + links.each{link -> + if(link.'@rel' == 'describedby' && (link.'@type' == 'application/xml' || link.'@type' == 'application/vnd.ogc.csw.GetRecordByIdResponse_xml')){ + scenario = '1'; + } + } + if(scenario == '2'){ + throw new TranslatableAssertionError('TR.manual.checkConformity'); + } + + + + + No Authorization + + + + + +
diff --git a/service/ds-wfs-pre-defined-soapui-project.xml b/service/ds-wfs-pre-defined-soapui-project.xml index 0f62bc8c..6a2f9a5d 100644 --- a/service/ds-wfs-pre-defined-soapui-project.xml +++ b/service/ds-wfs-pre-defined-soapui-project.xml @@ -6514,7 +6514,6 @@ return (Language,{$language})