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 taDOM2+/31-taDOM2+-3-NS

taDOM2+ Lock Requests of executed Operation deleteNode(contextNode) returns nothing

The 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 getPrevSibling(contextNode) executed on node NS

The getPrevSibling operation returns null because the context node CO is the first child of parent node PA and no previous sibling node PS exists.

Bahavior specified with base operations:

  • readCO
  • useCOPSE
  • usePAFCE

Read and write sets for execution on NS:

Read Set = NS PAFCE NSPSE , Write Set =
  • LockRequest[node=CO,lock:NR,PSE:ER,NSE:-,FCE:-,LCE:-] on NS
  • LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on NS
  • LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:ER,LCE:-] on NS

Operations must be incompatible

CheckExisting LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:NR,PSE:ER,NSE:-,FCE:-,LCE:-] on NS
Requested lock IR on AC compatible to existing lock IX.
Requested lock IR on PA compatible to existing lock CX.
Compatible
CheckExisting LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on NS
Requested lock IR on AC compatible to existing lock IX.
Requested lock IR on PA compatible to existing lock CX.
Compatible
CheckExisting LockRequest[node=CO,lock:SX,PSE:-,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:ER,LCE:-] on NS
Compatible
CheckExisting LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:NR,PSE:ER,NSE:-,FCE:-,LCE:-] on NS
Compatible
CheckExisting LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on NS
Compatible
CheckExisting LockRequest[node=PS,lock:-,PSE:-,NSE:EX,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:ER,LCE:-] on NS
Compatible
CheckExisting LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CO,lock:NR,PSE:ER,NSE:-,FCE:-,LCE:-] on NS
On NS the previous sibling edge lock EX is incompatible to the requested ER
Incompatible
CheckExisting LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=CN,lock:NR,PSE:-,NSE:-,FCE:-,LCE:-] on NS
Compatible
CheckExisting LockRequest[node=NS,lock:-,PSE:EX,NSE:-,FCE:-,LCE:-]
with
Requested LockRequest[node=PA,lock:-,PSE:-,NSE:-,FCE:ER,LCE:-] on NS
Compatible
Test Case Ok