Integration part of tests of grid chl
[occt.git] / tests / bugs / moddata / bug162
1 puts "========"
2 puts "OCC162"
3 puts "========"
4
5 pload QAcommands
6 pload XDE
7 # Gauge for virtual memory
8 if ![string compare $tcl_platform(platform) "windows"] {
9     proc VMem { memory } {
10         upvar $memory mem
11         regsub "^.*PeakVirtualSize: *\(\[0-9\]*\) KB.*$" \
12             [exec tlist [pid]] "\\1" mem
13     }
14 } else {
15     proc VMem { memory } {
16         upvar $memory mem
17         set mem [lindex [exec ps -o vsz -p [pid]] 1]
18     }
19 }
20
21 set Mem0 ""
22 set Mem1 ""
23 VMem Mem0
24
25 # vinit
26 restore [locate_data_file OCC162.brep] s 
27 # vdisplay s
28
29 OCC162 s
30
31 VMem Mem1
32 puts "...  The peak memory consumed: [expr $Mem1 - $Mem0] KB"
33
34 set MemoryLeakage 0
35 set i_max 5
36 for {set i 1} {${i} <= ${i_max}} {incr i} {
37    OCC162 s
38    VMem Mem2
39    set Delta [expr $Mem2 - $Mem1]
40    set MemoryLeakage [expr $MemoryLeakage + $Delta]
41    puts "       $i delta memory consumed: $Delta KB"
42 }
43
44 set percent_max 5
45 set percent [expr ${MemoryLeakage} / (double(${i_max}) * (${Mem1} - ${Mem0})) * 100.]
46 puts "percent = ${percent}"
47
48 if {${percent} > ${percent_max}} {
49    puts "OCC162: Error : There is memory leakage during sewing operation"
50 } else {
51    puts "OCC162: OK"
52 }
53