Package parity

Class VisualProbe


public class VisualProbe extends Stage
Every arrangement that has to keep looking the way it looks.

ParityProbe covers what the library can be asked; this covers what it draws. The two are answerable in different ways: a number can be compared, where a picture can only be looked at - so the bugs that lived longest this side were the ones nothing could see. The speech bubble hung off the corner of the costume canvas rather than the sprite, with its tail pointing at nothing. The stage's display line sat in the top left instead of along the bottom. A text came out at 24pt where it should have been 14. Every one of those was found by somebody noticing.

Each scene below is set up, given a few frames to settle, and saved as a PNG. ./scripts/visual-parity.sh renders them again and compares. Keep them still: no timers, no randomness, nothing that moves, or the comparison will fail for reasons that are not a change in how things look.

This is the desktop against itself. The browser draws with a different renderer and a different font engine, so the two cannot be compared pixel for pixel - that would need a browser in the loop and a comparison that measures where things are rather than which pixels they are.

  • Constructor Details

    • VisualProbe

      public VisualProbe(String outputFolder)
  • Method Details

    • run

      public void run()
      Description copied from class: Stage
      Executes the main logic of the stage. This method should be overridden by subclasses to define the specific behavior of the stage.
      Overrides:
      run in class Stage
    • main

      public static void main(String[] args)