Adding test cases from chl grid
[occt.git] / tests / bugs / caf / bug21231
1 puts "TODO ?OCC12345 ALL: Error: Document not saved"
2 puts "TODO ?OCC12345 ALL: Error: Object obj2 not found"
3 puts "TODO ?OCC12345 ALL: Tcl Exception: Error: Object obj2 not found"
4 puts "TODO ?OCC12345 ALL: TEST INCOMPLETE"
5 puts "============"
6 puts "OCC21231"
7 puts "============"
8 puts ""
9 #######################################################################
10 #######################################################################
11
12 set BugNumber OCC21231
13 set status 0
14
15 pload TOBJ
16
17 # Create a new document
18 TObjNew TD1
19
20 TObjAddObj TD1 obj1
21 TObjAddObj TD1 obj2
22 TObjAddObj TD1 obj3
23
24 set parent "obj1 obj2 obj2"
25 set children "ch11 ch21 ch22"
26 for { set i 0} {$i <= 2} {incr i} {
27   set p [lindex $parent $i]
28   set ch [lindex $children $i]
29   TObjAddChild TD1 $p $ch
30 }
31
32 TObjSetRef TD1 obj1 obj2
33
34 TObjSetVal TD1 obj1 533
35 TObjSetVal TD1 obj2 -r 3 3.14 2.78 0.123
36
37 # Save the document
38 set aFile $imagedir/${test_image}-[file tail [info script]].cbf
39 catch {[file delete ${aFile}]}
40 catch {TObjSave TD1 ${aFile}}
41 if { ![file exists ${aFile}] } {
42    set status 1
43    puts "There is not ${aFile} file; TObjSave command: Error"
44    puts "${BugNumber}: ERROR"
45 } else {
46    puts "Save the document to ${aFile} file"
47 }
48
49 TObjClose TD1
50 unset TD1
51
52 # Restore the document
53 if [catch { TObjLoad TD2 ${aFile} } catch_result] {
54    puts "${BugNumber}: ERROR"
55 }
56
57 # check children of obj2
58 set retChh [TObjGetChildren TD2 obj2]
59 for { set i 1 } { $i <= 2} {incr i} {
60   set chh [lindex $retChh [expr $i - 1]]
61   set oldCh [lindex $children $i]
62   if { $chh != $oldCh } {
63     set status 1
64     puts "${BugNumber}: check children of obj2; ERROR (case 1)"
65   }
66 }
67
68 # check reference from obj1
69 set retRef [TObjGetRef TD2 obj1]
70 if { $retRef != "obj2" } {
71     set status 1
72     puts "${BugNumber}: check reference from obj1; ERROR (case 2)"
73 }
74
75 # check stored single integer value
76 set retInt [TObjGetVal TD2 obj1 -i]
77 if { $retInt != 533 } {
78     set status 1
79     puts "${BugNumber}: check stored single integer value; ERROR (case 3)"
80 }
81
82 # check stored array of doubles
83 set retDbl [TObjGetVal TD2 obj2 -r]
84 set nbVal [llength $retDbl]
85 if { $nbVal != 3 } {
86     set status 1
87     puts "${BugNumber}: check stored array of doubles; ERROR (case 4)"
88 }
89
90 if { ${status} != 0 } {
91    puts "Faulty ${BugNumber}"
92 } else {
93    puts "OK ${BugNumber}"
94 }
95