luetzkendorf 2004/11/16 06:26:20
Added:
testsuite/testsuite/junit/xmltestcases/functional/lock/transactions
twoTxns.xml txnDeleteAbort.xml txnDeleteCommit.xml
txnMkcolAbort.xml txnMkcolCommit.xml
txnMoveAbort.xml txnMoveCommit.xml
txnMoveOverwriteAbort.xml
Log:
some transaction testcases
Revision Changes Path
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/twoTxns.xml
Index: twoTxns.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests two collections (with the same lock path)</abstract>
<description>
</description>
<expectedResult></expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId1"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId2"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection1
HTTP/1.1</command>
<header varUsage="txnId1"><![CDATA[Transaction: <%txnId1%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection2
HTTP/1.1</command>
<header varUsage="txnId2"><![CDATA[Transaction: <%txnId2%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId1">Lock-Token: %txnId1%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId2">Lock-Token: %txnId2%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnDeleteAbort.xml
Index: txnDeleteAbort.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests DELETE in external transaction that is aborted</abstract>
<description>
mkcol
put a file inside this collection
lock (begin txn)
delete
get file (should 404)
unlock (commit)
delete (test that the collection DOES exists after commit)
</description>
<expectedResult>collection should exist after transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnDeleteCommit.xml
Index: txnDeleteCommit.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests DELETE in external transaction that is commited</abstract>
<description>
mkcol
put a file inside this collection
lock (begin txn)
delete
propfind file (should 404)
unlock (commit)
delete (test that the collection does NOT exists after commit)
</description>
<expectedResult>collection should NOT exist after
transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:commit/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnMkcolAbort.xml
Index: txnMkcolAbort.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests MKCOL in external transaction that is commited</abstract>
<description>
lock (begin txn)
mkcol
propfind
unlock (abort)
delete (should 404)
</description>
<expectedResult>collection should not exist after
transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PROPFIND
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header>Content-Type: text/xml</header>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<header>Depth: 1</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<propfind xmlns="DAV:">
<prop><resourcetype/></prop>
</propfind>
]]></body>
</request>
<response>
<command>HTTP/1.0 207 Multi-Status</command>
<body
varUsage="globalVariableCollection,globalVariableServerName"><![CDATA[<?xml
version="1.0" encoding="utf-8"?>
<multistatus xmlns="DAV:" xmlns:S="http://jakarta.apache.org/slide/">
<response>
<href>%globalVariableServerName%/%globalVariableCollection%/collection</href>
<propstat>
<prop><resourcetype><collection/></resourcetype></prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnMkcolCommit.xml
Index: txnMkcolCommit.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests MKCOL in external transaction that is commited</abstract>
<description>
lock (begin txn)
mkcol
propfind
unlock (commit)
delete (test that the file exists after commit)
</description>
<expectedResult>collection should exist after transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PROPFIND
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header>Content-Type: text/xml</header>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<header>Depth: 1</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<propfind xmlns="DAV:">
<prop><resourcetype/></prop>
</propfind>
]]></body>
</request>
<response>
<command>HTTP/1.0 207 Multi-Status</command>
<body
varUsage="globalVariableCollection,globalVariableServerName"><![CDATA[<?xml
version="1.0" encoding="utf-8"?>
<multistatus xmlns="DAV:" xmlns:S="http://jakarta.apache.org/slide/">
<response>
<href>%globalVariableServerName%/%globalVariableCollection%/collection</href>
<propstat>
<prop><resourcetype><collection/></resourcetype></prop>
<status>HTTP/1.1 200 OK</status>
</propstat>
</response>
</multistatus>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:commit/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnMoveAbort.xml
Index: txnMoveAbort.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests MOVE in external transaction that is aborted</abstract>
<description>
mkcol
put a file inside this collection
lock (begin txn)
move
propfind moved file
unlock (abort)
delete (test that the old collection does exists after commit)
delete (test that the new collection does NOT exists after commit)
</description>
<expectedResult>collection should NOT exist after
transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MOVE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<header
varUsage="globalVariableCollection,globalVariableServerName">Destination:
%globalVariableServerName%/%globalVariableCollection%/collection_moved</header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection_moved/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection_moved
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnMoveCommit.xml
Index: txnMoveCommit.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests MOVE in external transaction that is commited</abstract>
<description>
mkcol
put a file inside this collection
lock (begin txn)
move
propfind moved file
unlock (commit)
delete (test that the old collection does NOT exists after commit)
delete (test that the new collection does exists after commit)
</description>
<expectedResult>collection should NOT exist after
transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MOVE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<header
varUsage="globalVariableCollection,globalVariableServerName">Destination:
%globalVariableServerName%/%globalVariableCollection%/collection_moved</header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection_moved/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 200 Ok</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:commit/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection_moved/file.html
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection_moved
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
</test>
1.1
jakarta-slide/testsuite/testsuite/junit/xmltestcases/functional/lock/transactions/txnMoveOverwriteAbort.xml
Index: txnMoveOverwriteAbort.xml
===================================================================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE test SYSTEM "../../../../Tprocessor.dtd">
<test>
<specification>
<abstract>tests MOVE (overwriting) in external transaction that is
aborted</abstract>
<description>
mkcol
put a file inside this collection
mkcol (collection to be overwritten)
put a file inside this collection
lock (begin txn)
move
propfind moved file
unlock (abort)
delete (test that the old collection does exists after commit)
delete (test that the new collection does NOT exists after commit)
</description>
<expectedResult>collection should NOT exist after
transaction</expectedResult>
</specification>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MKCOL
%globalVariableServerName%/%globalVariableCollection%/collection2
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">PUT
%globalVariableServerName%/%globalVariableCollection%/collection2/file2.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</request>
<response>
<command>HTTP/1.0 201 Created</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">LOCK
%globalVariableServerName%/%globalVariableCollection%/ HTTP/1.1</command>
<header>Timeout: Second-120</header>
<header>Content-Type: text/xml</header>
<body><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<A:lockinfo xmlns:A="DAV:">
<A:locktype><A:transaction/></A:locktype>
<A:locktype><A:transaction><A:groupoperation/></A:transaction></A:locktype>
<A:lockscope><A:local/></A:lockscope>
<A:owner>some owner</A:owner>
</A:lockinfo>
]]></body>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body
varUsage="globalVariableUserPath,globalVariableServerName,user,host"
varDefinition="txnId"
varPath="prop/lockdiscovery/activelock/locktoken/href">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<d:prop xmlns:d="DAV:">
<d:lockdiscovery>
<d:activelock>
<d:locktype><d:transaction><d:groupoperation/></d:transaction></d:locktype>
<d:lockscope><d:local/></d:lockscope>
<d:depth>0</d:depth>
<d:timeout>Second-120</d:timeout>
<d:locktoken><d:href/></d:locktoken>
<d:principal-URL><d:href>%globalVariableUserPath%</d:href></d:principal-URL>
<d:owner>some owner</d:owner>
</d:activelock>
</d:lockdiscovery>
</d:prop>
]]></body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">MOVE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
<header
varUsage="globalVariableCollection,globalVariableServerName">Destination:
%globalVariableServerName%/%globalVariableCollection%/collection2</header>
<header>Overwrite: T</header>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 404 Not Found</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection2/file.html
HTTP/1.1</command>
<header varUsage="txnId"><![CDATA[Transaction: <%txnId%>]]></header>
</request>
<response>
<command>HTTP/1.0 200 OK</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">UNLOCK
%globalVariableServerName%/%globalVariableCollection% HTTP/1.1</command>
<header varUsage="txnId">Lock-Token: %txnId%</header>
<body><![CDATA[<?xml version="1.0"?>
<d:transactioninfo xmlns:d="DAV:">
<d:transactionstatus><d:abort/></d:transactionstatus>
</d:transactioninfo>
]]>
</body>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection/file.html
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 200 Ok</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">GET
%globalVariableServerName%/%globalVariableCollection%/collection2/file2.html
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 200 Ok</command>
<body>ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ</body>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
<step>
<request>
<command
varUsage="globalVariableCollection,globalVariableServerName">DELETE
%globalVariableServerName%/%globalVariableCollection%/collection2
HTTP/1.1</command>
</request>
<response>
<command>HTTP/1.0 204 No Content</command>
</response>
</step>
</test>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]