http-request-018 (AB)

Tests p:http-request: tests document properties from a multi-part response.

Test ab-http-request-018.xml is expected to pass.

It requires the following features: p:http-request.

The pipeline


<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" version="3.0">
   <p:output port="result"/>
   <p:http-request href="http://localhost:8246/service/fixed-alternative">
      <p:with-input>
         <p:empty/>
      </p:with-input>
   </p:http-request>
   <p:for-each>
      <p:identity>
         <p:with-input>
            <doc>
               <base-uri>{p:document-property(., 'base-uri')}</base-uri>
               <content-type>{p:document-property(.,'content-type')}</content-type>
            </doc>
         </p:with-input>
      </p:identity>
   </p:for-each>
   <p:wrap-sequence wrapper="result"/>
</p:declare-step>
MorganaXProc passing XML Calabash failing

Schematron validation


<s:schema xmlns:s="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
   <s:pattern>
      <s:rule context="/">
         <s:assert test="result">The root element is not 'result'.</s:assert>
         <s:assert test="count(result/doc/base-uri[.='http://localhost:8246/service/fixed-alternative'])=4">There are not four docs with the right uri. </s:assert>
         <s:assert test="result/doc/content-type = 'text/html'">There is no entry with content-type 'text/html'.</s:assert>
         <s:assert test="result/doc/content-type = 'image/png'">There is no entry with content-type 'image/png'.</s:assert>
         <s:assert test="result/doc/content-type = 'application/xhtml+xml'">There is no entry with content-type 'application/xhtml+xml'.</s:assert>
         <s:assert test="result/doc/content-type = 'text/plain'">There is no entry with content-type 'text/plain'.</s:assert>
      </s:rule>
   </s:pattern>
</s:schema>

Revision history

10 Jun 2021, Achim Berndzen

Added attribute 'queryBinding' to schematron's schema.

12 Jan 2020, Achim Berndzen

Added new tests for p:http-request (Ported from 1.0).