class AssertableInertia extends AssertableJson

Traits

Properties

protected array $interacted

The list of interacted properties.

from  Interaction
static protected array $macros

The registered string macros.

from  Macroable

Methods

Has
count(string|int $key, int|null $length = null)

Assert that the prop is of the expected size.

from  Has
Has
countBetween(int|string $min, int|string $max)

Assert that the prop size is between a given minimum and maximum.

from  Has
has(string|int $key, int|Closure|null $value = null, Closure|null $scope = null)

Ensure that the given prop exists.

from  Matching
Has
hasAll(array|string $key)

Assert that all of the given props exist.

from  Has
Has
hasAny(array|string $key)

Assert that at least one of the given props exists.

from  Has
Has
missingAll(array|string $key)

Assert that none of the given props exist.

from  Has
Has
missing(string $key)

Assert that the given prop does not exist.

from  Has
string
dotPath(string $key = '')

Compose the absolute "dot" path to the given key.

from  Matching
void
interactsWith(string|int $key)

Mark the property as interacted.

mixed
prop(string|null $key = null)

Retrieve a prop within the current scope using "dot" notation.

Has
scope(string|int $key, Closure $callback)

Instantiate a new "scope" at the path of the given key.

from  Has
etc()

Disable the interaction check.

Has
first(Closure $callback)

Instantiate a new "scope" on the first element.

from  Has
where(string $key, mixed $expected)

Assert that the property matches the expected value.

from  Matching
whereNot(string $key, mixed $expected)

Assert that the property does not match the expected value.

from  Matching
whereNull(string $key)

Assert that the property is null.

from  Matching
whereNotNull(string $key)

Assert that the property is not null.

from  Matching
whereAll(array $bindings)

Assert that all properties match their expected values.

from  Matching
whereType(string $key, array|string $expected)

Assert that the property is of the expected type.

from  Matching
whereAllType(array $bindings)

Assert that all properties are of their expected types.

from  Matching
whereContains(string $key, mixed $expected)

Assert that the property contains the expected values.

from  Matching
void
ensureSorted(mixed $value)

Ensure that all properties are sorted the same way, recursively.

from  Matching
never
dd(mixed ...$args)

Dump the given arguments and terminate execution.

from  Dumpable
dump(mixed ...$args)

Dump the given arguments.

from  Dumpable
void
interacted()

Assert that all properties have been interacted with.

mixed
when(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) truthy.

mixed
unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) falsy.

static void
macro(string $name, callable|object $macro)

Register a custom macro.

static void
mixin(object $mixin, bool $replace = true)

Mix another object into the class.

static bool
hasMacro(string $name)

Check if macro is registered.

static void
flushMacros()

Flush the existing macros.

static mixed
__callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
__call(string $method, array $parameters)

Dynamically handle calls to the class.

mixed
tap(callable|null $callback = null)

Call the given Closure with this instance then return the instance.

from  Tappable
__construct(array $props, string|null $path = null)

Create a new fluent, assertable JSON data instance.

each(Closure $callback)

Instantiate a new "scope" on each child element.

static AssertableJson
fromArray(array $data)

Create a new instance from an array.

static AssertableJson
fromAssertableJsonString(AssertableJsonString $json)

Create a new instance from an AssertableJsonString.

array
toArray()

Convert the instance to an array.

static void
flushState()

Flush all static state.

fromTestResponse(TestResponse $response)

Create an AssertableInertia instance from a test response.

component(string|null $value = null, null|bool $shouldExist = null)

Assert that the page uses the given component.

url(string $value)

Assert that the current page URL matches the expected value.

version(string $value)

Assert that the current asset version matches the expected value.

loadDeferredProps(Closure|array|string $groupsOrCallback, Closure|null $callback = null)

Load the deferred props for the given groups and perform assertions on the response.

reload(Closure|null $callback = null, array|string|null $only = null, array|string|null $except = null)

Reload the Inertia page and perform assertions on the response.

reloadOnly(array|string $only, Closure|null $callback = null)

Reload the Inertia page as a partial request with only the specified props.

reloadExcept(array|string $except, Closure|null $callback = null)

Reload the Inertia page as a partial request excluding the specified props.

hasFlash(string $key, mixed $expected = null)

Assert that the Flash Data contains the given key, optionally with the expected value.

missingFlash(string $key)

Assert that the Flash Data does not contain the given key.

static void
assertFlashHas(array $flash, string $key, mixed $expected = null)

Assert that the given flash data array contains the given key, optionally with the expected value.

static void
assertFlashMissing(array $flash, string $key)

Assert that the given flash data array does not contain the given key.

Details

in Has at line 16
Has count(string|int $key, int|null $length = null)

Assert that the prop is of the expected size.

Parameters

string|int $key
int|null $length

Return Value

Has

in Has at line 44
Has countBetween(int|string $min, int|string $max)

Assert that the prop size is between a given minimum and maximum.

Parameters

int|string $min
int|string $max

Return Value

Has

in Matching at line 240
abstract Matching has(string|int $key, int|Closure|null $value = null, Closure|null $scope = null)

Ensure that the given prop exists.

Parameters

string|int $key
int|Closure|null $value
Closure|null $scope

Return Value

Matching

in Has at line 114
Has hasAll(array|string $key)

Assert that all of the given props exist.

Parameters

array|string $key

Return Value

Has

in Has at line 132
Has hasAny(array|string $key)

Assert that at least one of the given props exists.

Parameters

array|string $key

Return Value

Has

in Has at line 151
Has missingAll(array|string $key)

Assert that none of the given props exist.

Parameters

array|string $key

Return Value

Has

in Has at line 165
Has missing(string $key)

Assert that the given prop does not exist.

Parameters

string $key

Return Value

Has

in Matching at line 235
abstract protected string dotPath(string $key = '')

Compose the absolute "dot" path to the given key.

Parameters

string $key

Return Value

string

in Interaction at line 20
protected void interactsWith(string|int $key)

Mark the property as interacted.

Parameters

string|int $key

Return Value

void

in Interaction at line 56
abstract protected mixed prop(string|null $key = null)

Retrieve a prop within the current scope using "dot" notation.

Parameters

string|null $key

Return Value

mixed

in Has at line 193
abstract protected Has scope(string|int $key, Closure $callback)

Instantiate a new "scope" at the path of the given key.

Parameters

string|int $key
Closure $callback

Return Value

Has

in Interaction at line 46
Interaction etc()

Disable the interaction check.

Return Value

Interaction

in Has at line 203
abstract Has first(Closure $callback)

Instantiate a new "scope" on the first element.

Parameters

Closure $callback

Return Value

Has

in Matching at line 19
Matching where(string $key, mixed $expected)

Assert that the property matches the expected value.

Parameters

string $key
mixed $expected

Return Value

Matching

in Matching at line 53
Matching whereNot(string $key, mixed $expected)

Assert that the property does not match the expected value.

Parameters

string $key
mixed $expected

Return Value

Matching

in Matching at line 92
Matching whereNull(string $key)

Assert that the property is null.

Parameters

string $key

Return Value

Matching

in Matching at line 112
Matching whereNotNull(string $key)

Assert that the property is not null.

Parameters

string $key

Return Value

Matching

in Matching at line 132
Matching whereAll(array $bindings)

Assert that all properties match their expected values.

Parameters

array $bindings

Return Value

Matching

in Matching at line 144
Matching whereType(string $key, array|string $expected)

Assert that the property is of the expected type.

Parameters

string $key
array|string $expected

Return Value

Matching

in Matching at line 166
Matching whereAllType(array $bindings)

Assert that all properties are of their expected types.

Parameters

array $bindings

Return Value

Matching

in Matching at line 178
Matching whereContains(string $key, mixed $expected)

Assert that the property contains the expected values.

Parameters

string $key
mixed $expected

Return Value

Matching

in Matching at line 219
protected void ensureSorted(mixed $value)

Ensure that all properties are sorted the same way, recursively.

Parameters

mixed $value

Return Value

void

in Dumpable at line 12
never dd(mixed ...$args)

Dump the given arguments and terminate execution.

Parameters

mixed ...$args

Return Value

never

in Dumpable at line 20
Dumpable dump(mixed ...$args)

Dump the given arguments.

Parameters

mixed ...$args

Return Value

Dumpable

in Interaction at line 32
void interacted()

Assert that all properties have been interacted with.

Return Value

void

in Conditionable at line 23
mixed when(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) truthy.

Parameters

mixed $value
callable|null $callback
callable|null $default

Return Value

mixed

in Conditionable at line 56
mixed unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)

Apply the callback if the given "value" is (or resolves to) falsy.

Parameters

mixed $value
callable|null $callback
callable|null $default

Return Value

mixed

in Macroable at line 28
static void macro(string $name, callable|object $macro)

Register a custom macro.

Boot-only. Macros persist in a static property for the worker lifetime and apply to every subsequent call on the macroable class.

Parameters

string $name
callable|object $macro

Return Value

void

in Macroable at line 41
static void mixin(object $mixin, bool $replace = true)

Mix another object into the class.

Boot-only. Delegates to macro() for each method; registered macros persist in a static property for the worker lifetime.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

in Macroable at line 57
static bool hasMacro(string $name)

Check if macro is registered.

Parameters

string $name

Return Value

bool

in Macroable at line 68
static void flushMacros()

Flush the existing macros.

Boot or tests only. Clears worker-wide macros; concurrent coroutines may resolve different methods depending on timing.

Return Value

void

in Macroable at line 78
static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

in Macroable at line 103
mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

in Tappable at line 15
mixed tap(callable|null $callback = null)

Call the given Closure with this instance then return the instance.

Parameters

callable|null $callback

Return Value

mixed

in AssertableJson at line 39
protected __construct(array $props, string|null $path = null)

Create a new fluent, assertable JSON data instance.

Parameters

array $props
string|null $path

in AssertableJson at line 108
AssertableJson each(Closure $callback)

Instantiate a new "scope" on each child element.

Parameters

Closure $callback

Return Value

AssertableJson

in AssertableJson at line 133
static AssertableJson fromArray(array $data)

Create a new instance from an array.

Parameters

array $data

Return Value

AssertableJson

in AssertableJson at line 141
static AssertableJson fromAssertableJsonString(AssertableJsonString $json)

Create a new instance from an AssertableJsonString.

Parameters

AssertableJsonString $json

Return Value

AssertableJson

at line 282
array toArray()

Convert the instance to an array.

Return Value

array

in AssertableJson at line 157
static void flushState()

Flush all static state.

Return Value

void

at line 62
static AssertableInertia fromTestResponse(TestResponse $response)

Create an AssertableInertia instance from a test response.

Parameters

TestResponse $response

Return Value

AssertableInertia

at line 94
AssertableInertia component(string|null $value = null, null|bool $shouldExist = null)

Assert that the page uses the given component.

Parameters

string|null $value
null|bool $shouldExist

Return Value

AssertableInertia

at line 112
AssertableInertia url(string $value)

Assert that the current page URL matches the expected value.

Parameters

string $value

Return Value

AssertableInertia

at line 122
AssertableInertia version(string $value)

Assert that the current asset version matches the expected value.

Parameters

string $value

Return Value

AssertableInertia

at line 134
AssertableInertia loadDeferredProps(Closure|array|string $groupsOrCallback, Closure|null $callback = null)

Load the deferred props for the given groups and perform assertions on the response.

Parameters

Closure|array|string $groupsOrCallback
Closure|null $callback

Return Value

AssertableInertia

at line 153
AssertableInertia reload(Closure|null $callback = null, array|string|null $only = null, array|string|null $except = null)

Reload the Inertia page and perform assertions on the response.

Parameters

Closure|null $callback
array|string|null $only
array|string|null $except

Return Value

AssertableInertia

at line 190
AssertableInertia reloadOnly(array|string $only, Closure|null $callback = null)

Reload the Inertia page as a partial request with only the specified props.

Parameters

array|string $only
Closure|null $callback

Return Value

AssertableInertia

at line 208
AssertableInertia reloadExcept(array|string $except, Closure|null $callback = null)

Reload the Inertia page as a partial request excluding the specified props.

Parameters

array|string $except
Closure|null $callback

Return Value

AssertableInertia

at line 224
AssertableInertia hasFlash(string $key, mixed $expected = null)

Assert that the Flash Data contains the given key, optionally with the expected value.

Parameters

string $key
mixed $expected

Return Value

AssertableInertia

at line 236
AssertableInertia missingFlash(string $key)

Assert that the Flash Data does not contain the given key.

Parameters

string $key

Return Value

AssertableInertia

at line 248
static void assertFlashHas(array $flash, string $key, mixed $expected = null)

Assert that the given flash data array contains the given key, optionally with the expected value.

Parameters

array $flash
string $key
mixed $expected

Return Value

void

at line 269
static void assertFlashMissing(array $flash, string $key)

Assert that the given flash data array does not contain the given key.

Parameters

array $flash
string $key

Return Value

void