Email Step emailMessageStructureFilter
Description
Returns the structure (expressed in XML) associated with a particular message as the current response.
Parameters
- messageId
- Required? yes
- The message id.
- description
- Required? no
- The description of this test step.
- headers
- Required? no, default is no headers
- A comma or space seperated list of headers to include in the structure description.
- save
- Required? no
- A shorthand: save='prefixName' is the same as savePrefix='prefixName' saveResponse='true'.
- savePrefix
- Required? no, default is the 'savePrefix' parameter as specified in <config>.
- A name prefix can be specified for making a permanent copy of received responses. A unique number and the file extension (depending on the MIME-Type) will be appended. The resultpath attribute of the <config> element is used for determining the location of the saved result.
- saveResponse
- Required? no
- Whether to make a permanent copy of received responses. Overrides the default value set in the <config> element.
Details
Here is an example of using the emailMessageStructureFilter step.
emailMessageStructureFilter
<steps>
<emailSetConfig .../>
<-- plain message -->
<emailStoreMessageId subject="mailtest - multifiles - plain"
property="mid1" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="plainStructure.txt">
<emailMessageStructureFilter messageId="#{mid1}"/>
</compareToExpected>
<-- MIME message -->
<emailStoreMessageId subject="mailtest - multifiles - mime"
property="mid2" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="mimeStructure.txt">
<emailMessageStructureFilter messageId="#{mid2}"
headers="subject"/>
</compareToExpected>
<-- uuencoded message -->
<emailStoreMessageId subject="mailtest - multifiles - uu"
property="mid3" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="uuStructure.txt">
<emailMessageStructureFilter headers="subject,from,to"
messageId="#{mid3}"/>
</compareToExpected>
</steps>
<emailSetConfig .../>
<-- plain message -->
<emailStoreMessageId subject="mailtest - multifiles - plain"
property="mid1" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="plainStructure.txt">
<emailMessageStructureFilter messageId="#{mid1}"/>
</compareToExpected>
<-- MIME message -->
<emailStoreMessageId subject="mailtest - multifiles - mime"
property="mid2" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="mimeStructure.txt">
<emailMessageStructureFilter messageId="#{mid2}"
headers="subject"/>
</compareToExpected>
<-- uuencoded message -->
<emailStoreMessageId subject="mailtest - multifiles - uu"
property="mid3" .../>
<compareToExpected saveFiltered="true" readFiltered="false"
toFile="uuStructure.txt">
<emailMessageStructureFilter headers="subject,from,to"
messageId="#{mid3}"/>
</compareToExpected>
</steps>
The resulting files will be as follows:
plainStructure.txt
<message type="Simple" contentType="text/plain">
</message>
</message>
uuStructure.txt
<message type="Simple" contentType="text/plain">
<header name="Subject" value="mailtest - multifiles - uu"/>
<header name="From" value="paul@asert.com.au"/>
<header name="To" value="paul@asert.com.au"/>
<part type="uuencoded" filename="ok.gif"/>
<part type="uuencoded" filename="testDocLinks.pdf"/>
</message>
<header name="Subject" value="mailtest - multifiles - uu"/>
<header name="From" value="paul@asert.com.au"/>
<header name="To" value="paul@asert.com.au"/>
<part type="uuencoded" filename="ok.gif"/>
<part type="uuencoded" filename="testDocLinks.pdf"/>
</message>
mimeStructure.txt
<message type="MIME" contentType="multipart/mixed">
<header name="Subject" value="mailtest - multifiles - mime"/>
<part type="inline" contentType="text/plain"/>
<part type="attachment" filename="ok.gif" contentType="image/gif"/>
<part type="attachment" filename="testDocLinks.pdf" contentType="application/octet-stream"/>
</message>
<header name="Subject" value="mailtest - multifiles - mime"/>
<part type="inline" contentType="text/plain"/>
<part type="attachment" filename="ok.gif" contentType="image/gif"/>
<part type="attachment" filename="testDocLinks.pdf" contentType="application/octet-stream"/>
</message>
Note in the above example the XML structure descriptions were saved away for later comparison. An alternative would be to perform verifyXPath tests on the resulting current content.