class Factory mixin PendingRequest (View source)

Traits

Properties

static protected array $macros

The registered string macros.

from  Macroable
protected Dispatcher|null $dispatcher

The event dispatcher implementation.

protected array $globalMiddleware

The middleware to apply to every request.

protected Closure|array $globalOptions

The options to apply to every request.

protected Collection $stubCallbacks

The stub callables that will handle requests.

protected bool $recording

Indicates if the factory is recording requests and responses.

protected array $recorded

The recorded response array.

protected array $responseSequences

All created response sequences.

protected bool $preventStrayRequests

Indicates that an exception should be thrown if any request is not faked.

Methods

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

Register a custom macro.

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

Mix another object into the class.

static bool
hasMacro(string $name)

Checks 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)

Execute a method against a new pending request instance.

void
__construct(Dispatcher|null $dispatcher = null)

Create a new factory instance.

$this
globalMiddleware(callable $middleware)

Add middleware to apply to every request.

$this
globalRequestMiddleware(callable $middleware)

Add request middleware to apply to every request.

$this
globalResponseMiddleware(callable $middleware)

Add response middleware to apply to every request.

$this
globalOptions(Closure|array $options)

Set the options to apply to every request.

static PromiseInterface
response(array|string|null $body = null, int $status = 200, array $headers = [])

Create a new response instance for use during stubbing.

static PromiseInterface
failedConnection(string|null $message = null)

Create a new connection exception for use during stubbing.

sequence(array $responses = [])

Get an invokable object that returns a sequence of responses in order for use during stubbing.

$this
fake(callable|array|null $callback = null)

Register a stub callable that will intercept requests and be able to return stub responses.

fakeSequence(string $url = '*')

Register a response sequence for the given URL pattern.

$this
stubUrl(string $url, Response|PromiseInterface|callable $callback)

Stub the given URL using the given callback.

$this
preventStrayRequests(bool $prevent = true)

Indicate that an exception should be thrown if any request is not faked.

bool
preventingStrayRequests()

Determine if stray requests are being prevented.

$this
allowStrayRequests()

Indicate that an exception should not be thrown if any request is not faked.

$this
record()

Begin recording request / response pairs.

void
recordRequestResponsePair(Request $request, Response|null $response)

Record a request response pair.

void
assertSent(callable $callback)

Assert that a request / response pair was recorded matching a given truth test.

void
assertSentInOrder(array $callbacks)

Assert that the given request was sent in the given order.

void
assertNotSent(callable $callback)

Assert that a request / response pair was not recorded matching a given truth test.

void
assertNothingSent()

Assert that no request / response pair was recorded.

void
assertSentCount(int $count)

Assert how many requests have been recorded.

void
assertSequencesAreEmpty()

Assert that every created response sequence is empty.

recorded(callable $callback = null)

Get a collection of the request / response pairs matching the given truth test.

createPendingRequest()

Create a new pending request instance for this factory.

newPendingRequest()

Instantiate a new pending request instance for this factory.

Dispatcher|null
getDispatcher()

Get the current event dispatcher implementation.

array
getGlobalMiddleware()

Get the array of global middleware.

Details

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

Register a custom macro.

Parameters

string $name
object|callable $macro

Return Value

void

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

Mix another object into the class.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static void flushMacros()

Flush the existing macros.

Return Value

void

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

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Execute a method against a new pending request instance.

Parameters

string $method
array $parameters

Return Value

mixed

void __construct(Dispatcher|null $dispatcher = null)

Create a new factory instance.

Parameters

Dispatcher|null $dispatcher

Return Value

void

$this globalMiddleware(callable $middleware)

Add middleware to apply to every request.

Parameters

callable $middleware

Return Value

$this

$this globalRequestMiddleware(callable $middleware)

Add request middleware to apply to every request.

Parameters

callable $middleware

Return Value

$this

$this globalResponseMiddleware(callable $middleware)

Add response middleware to apply to every request.

Parameters

callable $middleware

Return Value

$this

$this globalOptions(Closure|array $options)

Set the options to apply to every request.

Parameters

Closure|array $options

Return Value

$this

static PromiseInterface response(array|string|null $body = null, int $status = 200, array $headers = [])

Create a new response instance for use during stubbing.

Parameters

array|string|null $body
int $status
array $headers

Return Value

PromiseInterface

static PromiseInterface failedConnection(string|null $message = null)

Create a new connection exception for use during stubbing.

Parameters

string|null $message

Return Value

PromiseInterface

ResponseSequence sequence(array $responses = [])

Get an invokable object that returns a sequence of responses in order for use during stubbing.

Parameters

array $responses

Return Value

ResponseSequence

$this fake(callable|array|null $callback = null)

Register a stub callable that will intercept requests and be able to return stub responses.

Parameters

callable|array|null $callback

Return Value

$this

ResponseSequence fakeSequence(string $url = '*')

Register a response sequence for the given URL pattern.

Parameters

string $url

Return Value

ResponseSequence

$this stubUrl(string $url, Response|PromiseInterface|callable $callback)

Stub the given URL using the given callback.

Parameters

string $url
Response|PromiseInterface|callable $callback

Return Value

$this

$this preventStrayRequests(bool $prevent = true)

Indicate that an exception should be thrown if any request is not faked.

Parameters

bool $prevent

Return Value

$this

bool preventingStrayRequests()

Determine if stray requests are being prevented.

Return Value

bool

$this allowStrayRequests()

Indicate that an exception should not be thrown if any request is not faked.

Return Value

$this

protected $this record()

Begin recording request / response pairs.

Return Value

$this

void recordRequestResponsePair(Request $request, Response|null $response)

Record a request response pair.

Parameters

Request $request
Response|null $response

Return Value

void

void assertSent(callable $callback)

Assert that a request / response pair was recorded matching a given truth test.

Parameters

callable $callback

Return Value

void

void assertSentInOrder(array $callbacks)

Assert that the given request was sent in the given order.

Parameters

array $callbacks

Return Value

void

void assertNotSent(callable $callback)

Assert that a request / response pair was not recorded matching a given truth test.

Parameters

callable $callback

Return Value

void

void assertNothingSent()

Assert that no request / response pair was recorded.

Return Value

void

void assertSentCount(int $count)

Assert how many requests have been recorded.

Parameters

int $count

Return Value

void

void assertSequencesAreEmpty()

Assert that every created response sequence is empty.

Return Value

void

Collection recorded(callable $callback = null)

Get a collection of the request / response pairs matching the given truth test.

Parameters

callable $callback

Return Value

Collection

PendingRequest createPendingRequest()

Create a new pending request instance for this factory.

Return Value

PendingRequest

protected PendingRequest newPendingRequest()

Instantiate a new pending request instance for this factory.

Return Value

PendingRequest

Dispatcher|null getDispatcher()

Get the current event dispatcher implementation.

Return Value

Dispatcher|null

array getGlobalMiddleware()

Get the array of global middleware.

Return Value

array