A test session wrapping a running Plushie app.
Created by Plushie.Test.Case setup. All interaction functions
delegate to Plushie.Test.Backend.Runtime.
Summary
Functions
Starts a new test session.
Types
@type selector() :: Plushie.Automation.Session.selector()
Test selector.
String selectors follow these rules:
"#save"matches a unique local widget ID"#form/save"matches an exact scoped ID- bare strings like
"Save"match visible text
@type t() :: %Plushie.Test.Session{pid: pid()}
Functions
@spec advance_frame(session :: t(), timestamp :: non_neg_integer()) :: :ok
@spec await_async(session :: t(), tag :: atom(), timeout :: non_neg_integer()) :: :ok
@spec find(session :: t(), selector :: selector()) :: Plushie.Automation.Element.t() | nil
@spec find!(session :: t(), selector :: selector()) :: Plushie.Automation.Element.t()
@spec get_diagnostics(session :: t()) :: [Plushie.Event.SystemEvent.t()]
@spec register_effect_stub( session :: t(), kind :: Plushie.Effect.kind(), response :: term() ) :: :ok
@spec reset(session :: t()) :: :ok
@spec screenshot(session :: t(), name :: String.t(), opts :: keyword()) :: Plushie.Test.Screenshot.t()
Starts a new test session.
@spec stop(session :: t()) :: :ok
@spec tree_hash(session :: t(), name :: String.t()) :: Plushie.Test.TreeHash.t()
@spec unregister_effect_stub(session :: t(), kind :: Plushie.Effect.kind()) :: :ok