1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00
occt/tests/bugs/vis/bug23069
2013-02-01 17:32:08 +04:00

75 lines
1.8 KiB
Plaintext
Executable File

puts "TODO OCC11111 ALL: Faulty OCC23069"
puts "TODO OCC11111 ALL: FPS_percent"
puts "TODO ?OCC11111 ALL: CPU_percent"
puts "==========="
puts "OCC23069"
puts "==========="
puts ""
################################################################################
# OpenGL state extraction for GL_RENDER_MODE significantly impact performance
################################################################################
set BugNumber OCC23069
vinit
for {set anInter 1} {$anInter <= 1000} {incr anInter} {
box b${anInter} [expr $anInter * 20] 0 0 10 20 30
vdisplay b${anInter}
}
vfit
set Log [vfps]
#
proc GetPercent {Value GoodValue} {
set Percent 0.
if {${GoodValue} != 0.} {
set Percent [expr abs(${Value} - ${GoodValue}) / abs(double(${GoodValue})) * 100.]
} elseif {${Value} != 0.} {
set Percent [expr abs(${GoodValue} - ${Value}) / abs(double(${Value})) * 100.]
} else {
set Percent 0.
}
return ${Percent}
}
set percent_max 20.0
set good_FPS 4.2
set good_CPU 15.0
set status 0
if { [llength ${Log}] == 5} {
if { [regexp {FPS: [-0-9.+eE]+} $Log] && [regexp {CPU: [-0-9.+eE]+ msec} $Log] } {
set status 0
regexp {FPS: ([-0-9.+eE]+)} $Log full FPS
regexp {CPU: ([-0-9.+eE]+) msec} $Log full CPU
set CPU_percent [GetPercent ${CPU} ${good_CPU}]
if { ${CPU_percent} > ${percent_max} } {
puts "CPU_percent = ${CPU_percent} ; CPU: Faulty"
set status 1
}
set FPS_percent [GetPercent ${FPS} ${good_FPS}]
if { ${FPS_percent} > ${percent_max} } {
puts "FPS_percent = ${FPS_percent} ; FPS: Faulty"
set status 1
}
} else {
set status 1
}
} else {
set status 1
}
# Resume
puts ""
if { ${status} == 0 } {
puts "OK ${BugNumber}"
} else {
puts "Faulty ${BugNumber}"
}