e822254b3738c8b0d7e27d22aa44d350cdc006ce
[occt.git] / tests / caf / basic / A7
1 #INTERFACE CAF
2 # Basic attributes
3 #
4 # Testing attribute: User defined (additional GUID) TDataStd_Integer
5 #
6 # Testing command:   SetInteger
7 # Testing command:   GetInteger
8 #
9
10 puts "caf001-A6"
11
12 # Add an attribute to a data framework
13 set aSetAttr1 100
14 set aSetAttr2 200
15 set aGuid1 "12e94541-6dbc-11d4-b9c8-0060b0ee281b"
16
17 set aLabel 0:2
18 SetInteger D ${aLabel} ${aSetAttr1}
19 SetInteger D ${aLabel} ${aSetAttr2} ${aGuid1}
20
21 # Close/Open the transaction
22 NewCommand D
23
24 # Save the document
25 set aFile ${imagedir}/caf001-A7.cbf
26 file delete ${aFile}
27 SaveAs D ${aFile}
28 if { ![file exists ${aFile}] } {
29         puts "There is not ${aFile} file; SaveAs command: Error"
30         return
31 }
32 #catch {exec chmod 777 ${aFile}}
33
34 # Restore the document
35 Close D
36 Open ${aFile} DD
37
38 # Get a value of the attribute #1
39 set IsDone [catch {set aGetAttr3 [GetInteger DD ${aLabel}]} aResult]
40 if { ${IsDone} != 0 ||
41         ${aSetAttr1}!=${aGetAttr3} } {
42         puts ${aResult}
43         puts "aSetAttr1=${aSetAttr1} aGetAttr3=${aGetAttr3}"
44         puts "Get a value of the first TDataStd_Integer attribute from restoring document: Error"
45         return
46 }
47
48 # Get a value of the attribute #2
49 set IsDone [catch {set aGetAttr4 [GetInteger DD ${aLabel} ${aGuid1}]} aResult]
50 if { ${IsDone} != 0 ||
51         ${aSetAttr2}!=${aGetAttr4} } {
52         puts ${aResult}
53         puts "aSetAttr2=${aSetAttr2} aGetAttr4=${aGetAttr4}"
54         puts "Get a value of the second TDataStd_Integer attribute from restoring document: Error"
55         return
56 }
57
58 puts "Get a value of user defined TDataStd_Integer attributes from restoring document: OK"