GenUiTracePlayer class

Replays a recorded session, without a model and without a network.

A trace is data, so a replay is deterministic: the same messages in the same order produce the same surfaces. That is what makes a bug report reproducible — and what makes a session from last week a regression test today.

final player = GenUiTracePlayer(trace, catalog: genUiCatalog);
player.seek(7);                       // the step the user complained about
await tester.pumpWidget(
  MaterialApp(home: GenUiTraceView(player: player)),
);

Constructors

GenUiTracePlayer(GenUiTrace trace, {required Catalog catalog})
Creates a player for trace.

Properties

catalog → Catalog
The catalog the replay renders with.
final
controller → SurfaceController
The controller holding the replayed surfaces.
no setter
currentSurfaceId → String?
The surface the replay is showing, which is the last one created up to position.
no setter
hashCode → int
The hash code for this object.
no setterinherited
length → int
How many steps the trace holds.
no setter
position → int
How many steps have been applied.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
trace → GenUiTrace
The session being replayed.
final

Methods

dispose() → void
Releases the replayed surfaces.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
seek(int step) → void
Applies the first step steps, from the beginning.
seekToEnd() → void
Applies every remaining step.
step() → void
Applies the next step, if there is one.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited