mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 11:07:10 +00:00
Both hosts get applied: true when the runner saw the dispatch succeed and applied: null when it could not, so an unconfirmed action stops arriving at the spec as no action at all.
66 lines
2.0 KiB
Go
66 lines
2.0 KiB
Go
package verifier
|
|
|
|
// ActionKind identifies the category of a generated UI action.
|
|
type ActionKind string
|
|
|
|
const (
|
|
ActionKindTap ActionKind = "Tap"
|
|
ActionKindDoubleTap ActionKind = "DoubleTap"
|
|
ActionKindInputText ActionKind = "InputText"
|
|
ActionKindSwipe ActionKind = "Swipe"
|
|
ActionKindPressKey ActionKind = "PressKey"
|
|
ActionKindWait ActionKind = "Wait"
|
|
ActionKindLongPress ActionKind = "LongPress"
|
|
ActionKindScroll ActionKind = "Scroll"
|
|
)
|
|
|
|
// Action is a single UI interaction produced by the spec's action generator.
|
|
type Action struct {
|
|
Kind ActionKind
|
|
On string
|
|
Text string
|
|
// X, Y hold the element center when the spec passed an ax element to
|
|
// Tap/InputText. Zero means the runner must resolve On against the
|
|
// current hierarchy.
|
|
X, Y int
|
|
// Swipe coordinates (raw px). Used only for ActionKindSwipe.
|
|
FromX, FromY int
|
|
ToX, ToY int
|
|
// DurationMillis is the Swipe gesture duration or the Wait duration.
|
|
DurationMillis int
|
|
// Key is the logical key name for ActionKindPressKey.
|
|
Key string
|
|
// Direction is the scroll direction for ActionKindScroll: one of "up",
|
|
// "down", "left", "right". Empty for every other kind.
|
|
Direction string
|
|
// Applied is meaningful only on the action a step reports to the spec as
|
|
// state.lastAction: true when the runner saw the dispatch succeed, false
|
|
// when the apply call failed and nothing can say whether the action
|
|
// reached the app. The spec is told which of the two it is.
|
|
Applied bool
|
|
}
|
|
|
|
// LogEntry mirrors a logcat line captured between steps.
|
|
type LogEntry struct {
|
|
UnixMillis int64
|
|
Level string
|
|
Tag string
|
|
Message string
|
|
}
|
|
|
|
// Exception mirrors an SDK-captured uncaught throwable.
|
|
type Exception struct {
|
|
Class string
|
|
Message string
|
|
StackTrace string
|
|
UnixMillis int64
|
|
}
|
|
|
|
// ExtractorChange records a single extractor's value transition across one
|
|
// step. Used to surface "what changed at this step" breadcrumbs at violation
|
|
// markers in the replay UI.
|
|
type ExtractorChange struct {
|
|
Prev []byte
|
|
Curr []byte
|
|
}
|