UniKL Logo

Lehrgebiet Informationssysteme

FB Informatik

FB Informatik
 
LG IS
AG DBIS
AG HIS
Jobs / Tasks
Courses
Publications
Contact
Misc
Impressum
(C) AG DBIS
 

Test Case taDOM3+/29-taDOM3+-32-CO

taDOM3+ Lock Requests of executed Operation insertAfter(contextNode, siblingType, siblingValue) returns Node

The 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.

Behavior specified with base operations:

  • readCO
  • modifyCONSE
  • modifyNSPSE
Read Set = CO , Write Set = CONSE NSPSE
  • LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-]
  • LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
  • LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-]

taDOM3+ Lock Requests of checked Operation deleteNode(contextNode) executed on node CO

The deleteNode operation is executed on the context element node CO and deletes the context node. Thereby, the context node is the first child of its parent node.

Bahavior specified with base operations:

  • modifyPAFCE
  • modifyNSPSE
  • writeCO
  • writeFC
  • writeCH
  • writeLC
  • writeDC

Read and write sets for execution on CO:

Read Set = , Write Set = CO FC CH LC DC CA AS AX XS PAFCE NSPSE
  • LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] on CO
  • LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO
  • LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:EX,LCE:-] on CO

Operations must be incompatible

CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] on CO
Requested lock SX on CO incompatible to existing lock NR.
Incompatible
CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO
Compatible
CheckExisting LockRequest[node=CO,lock:NR,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:EX,LCE:-] on CO
Compatible
CheckExisting LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-] on CO
Compatible
CheckExisting 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
CheckExisting LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:EX,LCE:-] on CO
Compatible
CheckExisting LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:SX,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
CheckExisting LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-] on CO
Compatible
CheckExisting LockRequest[node=PA,lock:CX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:EX,LCE:-] on CO
Compatible
Test Case Ok