|
|
Test Case taDOM2/26-taDOM2-17-CO
taDOM2 Lock Requests of executed Operation prependChild(contextElementNode, childType, childValue) returns NodeThe prependChild operation is executed on the context element node CO and prepends a new child. The context element node CO has still no child nodes before this operation. The CX resp. NRCX lock on the context node is caused by the SX lock on the new child. The new prepended child node (the now only child) is returned.
Behavior specified with base operations:- readCO
- modifyCOFCE
- modifyCOLCE
Read Set = CO , Write Set = COFCE COLCE - LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:EX,LCE:EX]
- LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-]
taDOM2 Lock Requests of checked Operation setValue(contextElementNode, valueString) executed on node COThe setValue operation executed on the context element node CO returns the modified context element itself. In taDOM2(+) the CX lock on PA must be requested additionally in order to prevent an execution of the getChildNodes() method on the parent node.
Bahavior specified with base operations:Read and write sets for execution on CO:Read Set = , Write Set = CO - LockRequest[node=CO,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO
- LockRequest[node=CN,lock:SX,PSE:-,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:CX,PSE:-,NSE:-,FCE:EX,LCE:EX] with Requested LockRequest[node=CO,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock IR on AC compatible to existing lock IX. Requested lock IR on PA compatible to existing lock IX. Requested lock NR on CO compatible to existing lock CX.
| Compatible | Check | Existing LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:EX,LCE:EX] with Requested LockRequest[node=CN,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock IX on AC compatible to existing lock IX. Requested lock IX on PA compatible to existing lock IX. Requested lock CX on CO compatible to existing lock CX.
| Compatible | Check | Existing LockRequest[node=CO,lock:CX,PSE:-,NSE:-,FCE:EX,LCE:EX] 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 IX.
| Compatible | Check | Existing LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CO,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock IR on AC compatible to existing lock IR. Requested lock IR on PA compatible to existing lock IR. Requested lock NR on CO compatible to existing lock IR.
| Compatible | Check | Existing LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] with Requested LockRequest[node=CN,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] on CO | Requested lock SX on CN incompatible to existing lock NR.
| Incompatible | Check | Existing LockRequest[node=CN,lock:NR,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 IR. Requested lock CX on PA compatible to existing lock IR.
| Compatible | Test Case Ok |
|