Test Object | ID | Description | Mode | Operation | Configuration | Message Expression |
Test Suite | ||||||
Test Case | testcase_3 | Conditional Branching | ||||
TestStep | step_01 | |||||
Construct a basic message header with manifest reference to payload containing a Request for Quote | PutMessage | <mime:Message> <mime:MessageContainer> </mime:Message><soap:Envelope> </mime:MessageContainer><soap:Header> <eb:MessageHeader> </soap:Header><eb:Action>RequestQuote</eb:Action> </eb:MessageHeader><soap:Body> </soap:Envelope><eb:Manifest> </soap:Body><eb:Reference href="cid:RequestQuote" /> </eb:Manifest> | ||||
'Add content-id and payload to MIME message | SetPayload( SetPayload Content-Id = 'cid:RequestQuote' fileURI = 'file:RequestQuote.xml' ) | |||||
Split | ||||||
ThreadRef | nameRef='thread_01' | |||||
Thread | name='thread_01' | |||||
TestStep | step_01_01 | Test that an Error message was NOT received, any time within 300 seconds after step_01 | ||||
Filter any ErrorList elements in the MessageStore | GetMessage stepDuration="300" | /MessageStore//Message//eb:MessageHeader[eb:ConversationId=$ConversationId] | ||||
Assertion | Verify No Error is present | VerifyContent | /FilterResult//*[not(eb:ErrorList)] | |||
End Thread | ||||||
End ThreadRef | ||||||
End Split | ||||||
If | ifType='andif' | |||||
TestStep | step_02 | |||||
Retrieve Response message m2 | GetMessage | /MessageStore/Message//*[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:RefToMessageId=$MessageId] and [eb:Manifest/eb:Reference/xlink:href="cid:response"]] | ||||
Get message payload | GetPayload Content-Id = 'cid:response' | |||||
Assertion | Verify that message is an 'approval' | VerifyContent | //Approval | |||
Assertion | Validate approval document' | ValidateContent contentType=XML schemaLocation=http://http://www.eBusines.org/approval.xsd | //Approval | |||
Assertion | Verify that there is NOT also a 'rejection' message present | VerifyContent | //*[not(Rejection)] | |||
Then | ||||||
TestStep | step_03 | |||||
Retrieve message m3 (quotation) | GetMessage | /MessageStore/Message//*[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:RefToMessageId=$MessageId] and [eb:Manifest]] | ||||
Get message payload | GetPayload Content-Id = 'cid:Quote' | |||||
Assertion | Verify that message is a 'quote' | VerifyContent | //Quote | |||
Assertion | Validate message | ValidateContent contentType=XML schemaLocation=http://http://www.eBusines.org/quote.xsd | //Quote | |||
TestStep | step_04 | |||||
Send message (m4), approval of quote | PutMessage | <mime:Message> <mime:MessageContainer> </mime:Message><soap:Envelope> </mime:MessageContainer><soap:Header> <eb:MessageHeader> </soap:Header><eb:Action>ApproveQuote</eb:Action> </eb:MessageHeader><soap:Body> </soap:Envelope><eb:Manifest> </soap:Body><eb:Reference href="cid:ApproveQuote" /> </eb:Manifest> | ||||
'Add content-id and payload to MIME message | SetPayload( SetPayload Content-Id = 'cid:ApproveQuote' fileURI = 'file:ApproveQuote.xml' ) | |||||
End Then | ||||||
End If | ||||||
If | ifType='andif' | |||||
TestStep | step_05 | |||||
Retrieve Response message m2 and test if message is an Rejection'' | GetMessage | /MessageStore/Message//(eb:MessageHeader(eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:RefToMessageId=$MessageId)) | ||||
Get message payload | GetPayload Content-Id = 'cid:RequestQuoteResponse' | |||||
Assertion | Verify that message is a 'rejection' | VerifyContent | //Rejection | |||
Assertion | Validate rejection document' | ValidateContent contentType=XML schemaLocation=http://http://www.eBusines.org/rejection.xsd | //Rejection | |||
Assertion | Verify that there is NOT also an 'approval' message present | VerifyContent | //*[not(Approval)] | |||
Then | ||||||
TestStep | step_06 | |||||
Retrieve Response message m2 and test if message is an Alternative message | GetMessage | /MessageStore/Message//(eb:MessageHeader(eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:MessageId="m2")) | ||||
Get message payload | GetPayload Content-Id = 'cid:Altermative"' | |||||
Assertion | Verify that message is an 'alternative' | VerifyContent | //Alternative | |||
Assertion | Validate alternative document' | ValidateContent contentType=XML schemaLocation=http://http://www.eBusines.org/alternative.xsd | ||||
End Then | ||||||
End If | ||||||
Join | joinType='andjoin' | |||||
ThreadRef | nameRef='thread_01' | |||||
End ThreadRef | ||||||
End Join |