Class GridContract

java.lang.Object
limn.testing.a11y.GridContract

public final class GridContract extends Object
What every widget of the GRID shape owes a reader beyond what its rows do, as named cases over a GridSubject:
  • the container is of the GRID shape and carries a TableFacet whose column count is the header's;
  • the four invariants hold, unfocused and focused;
  • the header cells sit at row −1, one per column, in order, each carrying the direction its column is sorted in and PRESS exactly where the column sorts;
  • PRESS on a sortable header sorts by it and the facet says so, and a second press changes the direction the facet reports;
  • a data cell is a CELL at a row and a column inside the counts;
  • FOCUS on a cell that offers it moves the cursor onto that cell, which is then the one active node, and selects nothing;
  • a header cell keeps its id across a sort.
  • Method Details

    • cases

      public static List<ContractCase> cases(GridSubject subject, UiRuntime runtime)
      The cases, in the order above.
      Parameters:
      subject - the widget under contract
      runtime - the installed runtime the harness drains verbs through
      Returns:
      the cases; a test runs each as a dynamic test