|
|
Test Case taDOM2/31-taDOM2-29-COtaDOM2 Lock Requests of executed Operation deleteNode(contextNode) returns nothingThe deleteNode operation is executed on the context element node CO (an arbitrary child of PA) and deletes the context node. Previous and next sibling nodes are existing.
Behavior specified with base operations:- modifyPSNSE
- modifyNSPSE
- writeCO
- writeFC
- writeCH
- writeLC
- writeDC
Read Set = , Write Set = CO FC CH LC DC CA AS AX XS PSNSE NSPSE - LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-]
- LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-]
- LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
taDOM2 Lock Requests of checked Operation insertAfter(contextNode, siblingType, siblingValue) executed on node COThe insertAfter operation is executed on the context element node CO and inserts a new next sibling node after the context node CO. There already exists a next sibling and the inserted new sibling node is returned.
Bahavior specified with base operations:- readCO
- modifyCONSE
- modifyNSPSE
Read and write sets for execution on CO:Read Set = CO , Write Set = CONSE NSPSE - LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-] on CO
- LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO
- LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO
- LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-] on CO
Operations must be incompatibleCheck | Existing LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-] on CO | Requested lock NR on CO incompatible to existing lock SX.
| Incompatible | Check | Existing LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock IR on CO incompatible to existing lock SX.
| Incompatible | Check | Existing LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock IX on AC compatible to existing lock IX. Requested lock CX on PA compatible to existing lock CX.
| Compatible | Check | Existing LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] with Requested LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] with Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] with Requested LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-] with Requested LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Check | Existing LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO | On NS the previous sibling edge lock EX is incompatible to the requested EX
| Incompatible | Check | Existing LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-] on CO | | Compatible | Test Case Ok |
|