0024927: Getting rid of "Persistent" functionality -- Tests
[occt.git] / tests / caf / basic / L3
1 #INTERFACE CAF
2 # Basic attributes
3 #
4 # Testing attribute: TDF_Reference
5 #
6 # Testing command:   SetReference
7 # Testing command:   GetReference
8 #
9
10 puts "caf001-L3"
11
12 # Add an attribute to a data framework
13 set aSetAttr1 100
14 set aSetAttr2 200
15 set aSetAttr3 300
16 set aLabel1 0:2
17 set aLabel2 0:3
18 set aLabel3 0:4
19 set aLabel4 0:5
20 SetInteger D ${aLabel1} ${aSetAttr1}
21 SetInteger D ${aLabel2} ${aSetAttr2}
22 SetInteger D ${aLabel3} ${aSetAttr3}
23
24 set aReference1 ${aLabel2}
25 SetReference D ${aLabel4} ${aReference1}
26
27 # Close/Open the transaction
28 NewCommand D
29
30 # Save the document
31 set aFile ${imagedir}/caf001-L3.cbf
32 file delete ${aFile}
33 SaveAs D ${aFile}
34 if { ![file exists ${aFile}] } {
35         puts "There is not ${aFile} file; SaveAs command: Error"
36         return
37 }
38 #catch {exec chmod 777 ${aFile}}
39
40 # Restore the document
41 Close D
42 Open ${aFile} DD
43
44 # Get a value of the attribute
45 set IsDone [catch {set aReference5 [GetReference DD ${aLabel4}]} aResult]
46 if { ${IsDone} != 0 } {
47         puts ${aResult}
48         puts "Get a value of TDF_Reference attribute from restoring document: Error"
49         return
50 }
51
52 if { ${aReference1} != ${aReference5} } {
53         puts "aReference1=${aReference1} aReference5=${aReference5}"
54         puts "Get a value of TDF_Reference attribute from restoring document: Error"
55         return
56 }
57 puts "Get a value of TDF_Reference attribute from restoring document: OK"