puts "# ============"
puts "# 0031092: Foundation Classes - incorrect last output value for Infinite progress indicator"
puts "# ============"
puts ""
puts "# Test output of progress indicator in text mode (infinite scale)"

pload QAcommands

XProgress +t

set out [OCC28478 3 2 -inf]

set expected {
  {Progress: 0%}
  {Progress: 11% Outer: 1 / 3 Inner: 1}
  {Progress: 17% Outer: 1 / 3 Inner: 2}
  {Progress: 20% Outer: 1 / 3 Inner: 3}
  {Progress: 22% Outer: 1 / 3 Inner: 4}
  {Progress: 33% Outer: 1 / 3 Inner: finished}
  {Progress: 44% Outer: 2 / 3 Inner: 1}
  {Progress: 50% Outer: 2 / 3 Inner: 2}
  {Progress: 53% Outer: 2 / 3 Inner: 3}
  {Progress: 56% Outer: 2 / 3 Inner: 4}
  {Progress: 67% Outer: 2 / 3 Inner: finished}
  {Progress: 78% Outer: 3 / 3 Inner: 1}
  {Progress: 83% Outer: 3 / 3 Inner: 2}
  {Progress: 87% Outer: 3 / 3 Inner: 3}
  {Progress: 89% Outer: 3 / 3 Inner: 4}
  {Progress: 100% Outer: 3 / 3 Inner: finished}
}

if { [string compare [string trim $out] [join $expected "\n"]] } {
  puts "Error: output (see above) does not match expected one:"
  puts "[join $expected "\n"]"
  puts ""
}