class Factory (View source)

Traits

Properties

static protected array $macros The registered string macros. from Macroable
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.

Methods

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

Register a custom macro.

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

Mix another object into the class.

from Macroable
static bool
hasMacro(string $name)

Checks if macro is registered.

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

Dynamically handle calls to the class.

from Macroable
mixed
__call(string $method, array $parameters)

Execute a method against a new pending request instance.

void
__construct()

Create a new factory instance.

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

Create a new response instance 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 $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
record()

Begin recording request / response pairs.

void
recordRequestResponsePair(Request $request, Response $response)

Record a request response pair.

void
assertSent(callable $callback)

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

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($count)

Assert how many requests have been recorded.

void
assertSequencesAreEmpty()

Assert that every created response sequence is empty.

recorded(callable $callback)

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

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

Create a new factory instance.

Return Value

void

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

Create a new response instance for use during stubbing.

Parameters

array|string $body
int $status
array $headers

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 $callback = null)

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

Parameters

callable|array $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

protected $this record()

Begin recording request / response pairs.

Return Value

$this

void recordRequestResponsePair(Request $request, Response $response)

Record a request response pair.

Parameters

Request $request
Response $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 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($count)

Assert how many requests have been recorded.

Parameters

$count

Return Value

void

void assertSequencesAreEmpty()

Assert that every created response sequence is empty.

Return Value

void

Collection recorded(callable $callback)

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

Parameters

callable $callback

Return Value

Collection