Skip to content

Conversation

@linev
Copy link
Member

@linev linev commented Oct 28, 2025

Many classes and many special draw options were not tested.
So adding new 17 tests to stressGraphics:

  • TArrow
  • TPolyLine
  • TCrown
  • TPie
  • TGraphMultiError
  • transparency of line/fill colors
  • TAnnotation in 3D mode
  • TGraphPolar
  • "rx", "ry" draw option of TGraph
  • pad->SetTickx(2), pad->SetTicky(2) to draw axes labels on both sides of the frame
  • TCutG and drawing TH2 with cut condition
  • histogram "plc", "pmc" draw option
  • THStack - for TH1 and TH2 lego plots
  • Custom attributes for TPaletteAxis and custom entries for stats box
  • "candle" and "violin" options for TH2

These new tests also showing problems with saving primitives:

  • THStack::SavePrimitive() is not working
  • TGraphPolar also not working
  • TArrow does not store correctly option string

Seems to be, there is TGraph painting problem with "rx" and "ry" option.
New introduced test tgraphreverse() shows problem with producing of PS and SVG files.
At the same time web graphics works as expected. Saving of such canvas also not work properly.

So it will be extra work to fix such problems afterwards.

SVG ref files now stored with explicit names instead of svg<TestNum>.svg names to avoid big repository changes every time new test is inserted.

After merging this PR one can remove completely roottest/graphics/.
Beside several TMath function all ROOT drawing from these graphics tests moved to stressGraphics.
stressGraphics from now will be the central testing utility - including precise SVG content tests, working on all platforms.

@linev linev self-assigned this Oct 28, 2025
@linev linev requested a review from dpiparo as a code owner October 28, 2025 13:26
@linev linev marked this pull request as draft October 28, 2025 13:26
@github-actions
Copy link

github-actions bot commented Oct 28, 2025

Test Results

    22 files      22 suites   3d 20h 56m 19s ⏱️
 3 706 tests  3 706 ✅ 0 💤 0 ❌
79 584 runs  79 584 ✅ 0 💤 0 ❌

Results for commit 9ab97b0.

♻️ This comment has been updated with latest results.

@linev linev force-pushed the more_stress branch 3 times, most recently from 968fc20 to 14a4043 Compare October 29, 2025 10:18
@linev linev requested a review from couet October 29, 2025 10:30
@linev linev marked this pull request as ready for review October 29, 2025 10:30
@linev linev requested a review from bellenot as a code owner October 29, 2025 10:30
linev added 13 commits October 31, 2025 14:16
arrows - still need to fix TArrow save primitive
One can easily recognize them and
prevent problems when changing test number
Make it as separate commit to simplify git a work. Now only single line in each svg file will be replaced.
There are some bug in ROOT graphics handling such canvas, web graphics works as expected!!!
Saving in macro does not work at all
SVG output varies on several platforms - to be investigated later
linev added 8 commits October 31, 2025 14:16
Store in macro does not work and need to be fixed extra
THStack store in macro is not working
To be sure that such modifications reliably works
When many new test were add, test ids check was disabled
TGraphPainter with reverse axes does not create ghost paints
Histograms/profiles objects stored with proper names
Also TArrow saved with proper options now
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants